Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Errors compiling the latest revision in ArchLinux #1

Closed
neuromancer opened this issue Jan 30, 2020 · 13 comments
Closed

Errors compiling the latest revision in ArchLinux #1

neuromancer opened this issue Jan 30, 2020 · 13 comments
Labels
support Issues reported by a particular user

Comments

@neuromancer
Copy link
Contributor

$ msbuild ualbion.sln 
Microsoft (R) Build Engine version 16.0.0.0 for Mono
Copyright (C) Microsoft Corporation. All rights reserved.

Build started 01/30/2020 17:19:02.
Project "/home/g/Games/ualbion/ualbion.sln" on node 1 (default targets).
ValidateSolutionConfiguration:
  Building solution configuration "Debug|Any CPU".
/home/g/Games/ualbion/ualbion.sln.metaproj : error MSB3202: The project file "/home/g/Games/ualbion/UAlbion/UAlbion.csproj" was not found. [/home/g/Games/ualbion/ualbion.sln]
/home/g/Games/ualbion/ualbion.sln.metaproj : error MSB3202: The project file "/home/g/Games/ualbion/veldrid/src/Veldrid/Veldrid.csproj" was not found. [/home/g/Games/ualbion/ualbion.sln]
/home/g/Games/ualbion/ualbion.sln.metaproj : error MSB3202: The project file "/home/g/Games/ualbion/veldrid/src/Veldrid.ImageSharp/Veldrid.ImageSharp.csproj" was not found. [/home/g/Games/ualbion/ualbion.sln]
/home/g/Games/ualbion/ualbion.sln.metaproj : error MSB3202: The project file "/home/g/Games/ualbion/veldrid/src/Veldrid.ImGui/Veldrid.ImGui.csproj" was not found. [/home/g/Games/ualbion/ualbion.sln]
/home/g/Games/ualbion/ualbion.sln.metaproj : error MSB3202: The project file "/home/g/Games/ualbion/veldrid/src/Veldrid.OpenGLBindings/Veldrid.OpenGLBindings.csproj" was not found. [/home/g/Games/ualbion/ualbion.sln]
/home/g/Games/ualbion/ualbion.sln.metaproj : error MSB3202: The project file "/home/g/Games/ualbion/veldrid/src/Veldrid.RenderDoc/Veldrid.RenderDoc.csproj" was not found. [/home/g/Games/ualbion/ualbion.sln]
/home/g/Games/ualbion/ualbion.sln.metaproj : error MSB3202: The project file "/home/g/Games/ualbion/veldrid/src/Veldrid.SDL2/Veldrid.SDL2.csproj" was not found. [/home/g/Games/ualbion/ualbion.sln]
/home/g/Games/ualbion/ualbion.sln.metaproj : error MSB3202: The project file "/home/g/Games/ualbion/veldrid/src/Veldrid.StartupUtilities/Veldrid.StartupUtilities.csproj" was not found. [/home/g/Games/ualbion/ualbion.sln]
/home/g/Games/ualbion/ualbion.sln.metaproj : error MSB3202: The project file "/home/g/Games/ualbion/veldrid/src/Veldrid.Utilities/Veldrid.Utilities.csproj" was not found. [/home/g/Games/ualbion/ualbion.sln]
/home/g/Games/ualbion/ualbion.sln.metaproj : error MSB3202: The project file "/home/g/Games/ualbion/veldrid-spirv/src/Veldrid.SPIRV/Veldrid.SPIRV.csproj" was not found. [/home/g/Games/ualbion/ualbion.sln]
Project "/home/g/Games/ualbion/ualbion.sln" (1) is building "/home/g/Games/ualbion/Tools/XmiToMidi/XmiToMidi.vcxproj" (2) on node 1 (default targets).
/home/g/Games/ualbion/Tools/XmiToMidi/XmiToMidi.vcxproj(32,3): error MSB4019: The imported project "/Microsoft.Cpp.Default.props" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.
Done Building Project "/home/g/Games/ualbion/Tools/XmiToMidi/XmiToMidi.vcxproj" (default targets) -- FAILED.
Project "/home/g/Games/ualbion/ualbion.sln" (1) is building "/home/g/Games/ualbion/Game/UAlbion.Game.csproj" (3) on node 1 (default targets).
/usr/lib/mono/msbuild/15.0/bin/Microsoft.CSharp.CurrentVersion.targets(331,5): error MSB4019: The imported project "/usr/lib/mono/msbuild/15.0/bin/Roslyn/Microsoft.CSharp.Core.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk. [/home/g/Games/ualbion/Game/UAlbion.Game.csproj]
Done Building Project "/home/g/Games/ualbion/Game/UAlbion.Game.csproj" (default targets) -- FAILED.
Project "/home/g/Games/ualbion/ualbion.sln" (1) is building "/home/g/Games/ualbion/Formats/UAlbion.Formats.csproj" (4) on node 1 (default targets).
/usr/lib/mono/msbuild/15.0/bin/Microsoft.CSharp.CurrentVersion.targets(331,5): error MSB4019: The imported project "/usr/lib/mono/msbuild/15.0/bin/Roslyn/Microsoft.CSharp.Core.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk. [/home/g/Games/ualbion/Formats/UAlbion.Formats.csproj]
Done Building Project "/home/g/Games/ualbion/Formats/UAlbion.Formats.csproj" (default targets) -- FAILED.
/usr/lib/mono/msbuild/15.0/bin/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.FSharp.targets(29,3): warning MSB4011: "/usr/lib/mono/xbuild/Microsoft/VisualStudio/v15.0/FSharp/Microsoft.FSharp.NetSdk.targets" cannot be imported again. It was already imported at "/usr/lib/mono/msbuild/15.0/bin/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.FSharpTargetsShim.targets (63,3)". This is most likely a build authoring error. This subsequent import will be ignored. [/home/g/Games/ualbion/Tools/Exporter/UAlbion.Tools.Exporter.fsproj]
Project "/home/g/Games/ualbion/ualbion.sln" (1) is building "/home/g/Games/ualbion/Tools/Exporter/UAlbion.Tools.Exporter.fsproj" (5) on node 1 (default targets).
/usr/lib/mono/msbuild/15.0/bin/Sdks/Microsoft.NET.Sdk/targets/Microsoft.PackageDependencyResolution.targets(198,5): error : Assets file '/home/g/Games/ualbion/Tools/Exporter/obj/project.assets.json' not found. Run a NuGet package restore to generate this file. [/home/g/Games/ualbion/Tools/Exporter/UAlbion.Tools.Exporter.fsproj]
Done Building Project "/home/g/Games/ualbion/Tools/Exporter/UAlbion.Tools.Exporter.fsproj" (default targets) -- FAILED.
Project "/home/g/Games/ualbion/ualbion.sln" (1) is building "/home/g/Games/ualbion/Core/UAlbion.Core.csproj" (6) on node 1 (default targets).
/usr/lib/mono/msbuild/15.0/bin/Microsoft.CSharp.CurrentVersion.targets(331,5): error MSB4019: The imported project "/usr/lib/mono/msbuild/15.0/bin/Roslyn/Microsoft.CSharp.Core.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk. [/home/g/Games/ualbion/Core/UAlbion.Core.csproj]
Done Building Project "/home/g/Games/ualbion/Core/UAlbion.Core.csproj" (default targets) -- FAILED.
Project "/home/g/Games/ualbion/ualbion.sln" (1) is building "/home/g/Games/ualbion/Tools/GenerateEnums/GenerateEnums.csproj" (7) on node 1 (default targets).
/usr/lib/mono/msbuild/15.0/bin/Microsoft.CSharp.CurrentVersion.targets(331,5): error MSB4019: The imported project "/usr/lib/mono/msbuild/15.0/bin/Roslyn/Microsoft.CSharp.Core.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk. [/home/g/Games/ualbion/Tools/GenerateEnums/GenerateEnums.csproj]
Done Building Project "/home/g/Games/ualbion/Tools/GenerateEnums/GenerateEnums.csproj" (default targets) -- FAILED.
Project "/home/g/Games/ualbion/ualbion.sln" (1) is building "/home/g/Games/ualbion/Api/UAlbion.Api.csproj" (8) on node 1 (default targets).
/usr/lib/mono/msbuild/15.0/bin/Microsoft.CSharp.CurrentVersion.targets(331,5): error MSB4019: The imported project "/usr/lib/mono/msbuild/15.0/bin/Roslyn/Microsoft.CSharp.Core.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk. [/home/g/Games/ualbion/Api/UAlbion.Api.csproj]
Done Building Project "/home/g/Games/ualbion/Api/UAlbion.Api.csproj" (default targets) -- FAILED.
Done Building Project "/home/g/Games/ualbion/ualbion.sln" (default targets) -- FAILED.

Build FAILED.

  /usr/lib/mono/msbuild/15.0/bin/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.FSharp.targets(29,3): warning MSB4011: "/usr/lib/mono/xbuild/Microsoft/VisualStudio/v15.0/FSharp/Microsoft.FSharp.NetSdk.targets" cannot be imported again. It was already imported at "/usr/lib/mono/msbuild/15.0/bin/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.Sdk.FSharpTargetsShim.targets (63,3)". This is most likely a build authoring error. This subsequent import will be ignored. [/home/g/Games/ualbion/Tools/Exporter/UAlbion.Tools.Exporter.fsproj]


"/home/g/Games/ualbion/ualbion.sln" (default target) (1) ->
(Build target) -> 
  /home/g/Games/ualbion/ualbion.sln.metaproj : error MSB3202: The project file "/home/g/Games/ualbion/UAlbion/UAlbion.csproj" was not found. [/home/g/Games/ualbion/ualbion.sln]
  /home/g/Games/ualbion/ualbion.sln.metaproj : error MSB3202: The project file "/home/g/Games/ualbion/veldrid/src/Veldrid/Veldrid.csproj" was not found. [/home/g/Games/ualbion/ualbion.sln]
  /home/g/Games/ualbion/ualbion.sln.metaproj : error MSB3202: The project file "/home/g/Games/ualbion/veldrid/src/Veldrid.ImageSharp/Veldrid.ImageSharp.csproj" was not found. [/home/g/Games/ualbion/ualbion.sln]
  /home/g/Games/ualbion/ualbion.sln.metaproj : error MSB3202: The project file "/home/g/Games/ualbion/veldrid/src/Veldrid.ImGui/Veldrid.ImGui.csproj" was not found. [/home/g/Games/ualbion/ualbion.sln]
  /home/g/Games/ualbion/ualbion.sln.metaproj : error MSB3202: The project file "/home/g/Games/ualbion/veldrid/src/Veldrid.OpenGLBindings/Veldrid.OpenGLBindings.csproj" was not found. [/home/g/Games/ualbion/ualbion.sln]
  /home/g/Games/ualbion/ualbion.sln.metaproj : error MSB3202: The project file "/home/g/Games/ualbion/veldrid/src/Veldrid.RenderDoc/Veldrid.RenderDoc.csproj" was not found. [/home/g/Games/ualbion/ualbion.sln]
  /home/g/Games/ualbion/ualbion.sln.metaproj : error MSB3202: The project file "/home/g/Games/ualbion/veldrid/src/Veldrid.SDL2/Veldrid.SDL2.csproj" was not found. [/home/g/Games/ualbion/ualbion.sln]
  /home/g/Games/ualbion/ualbion.sln.metaproj : error MSB3202: The project file "/home/g/Games/ualbion/veldrid/src/Veldrid.StartupUtilities/Veldrid.StartupUtilities.csproj" was not found. [/home/g/Games/ualbion/ualbion.sln]
  /home/g/Games/ualbion/ualbion.sln.metaproj : error MSB3202: The project file "/home/g/Games/ualbion/veldrid/src/Veldrid.Utilities/Veldrid.Utilities.csproj" was not found. [/home/g/Games/ualbion/ualbion.sln]
  /home/g/Games/ualbion/ualbion.sln.metaproj : error MSB3202: The project file "/home/g/Games/ualbion/veldrid-spirv/src/Veldrid.SPIRV/Veldrid.SPIRV.csproj" was not found. [/home/g/Games/ualbion/ualbion.sln]


"/home/g/Games/ualbion/ualbion.sln" (default target) (1) ->
"/home/g/Games/ualbion/Tools/XmiToMidi/XmiToMidi.vcxproj" (default target) (2) ->
  /home/g/Games/ualbion/Tools/XmiToMidi/XmiToMidi.vcxproj(32,3): error MSB4019: The imported project "/Microsoft.Cpp.Default.props" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.


"/home/g/Games/ualbion/ualbion.sln" (default target) (1) ->
"/home/g/Games/ualbion/Game/UAlbion.Game.csproj" (default target) (3) ->
  /usr/lib/mono/msbuild/15.0/bin/Microsoft.CSharp.CurrentVersion.targets(331,5): error MSB4019: The imported project "/usr/lib/mono/msbuild/15.0/bin/Roslyn/Microsoft.CSharp.Core.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk. [/home/g/Games/ualbion/Game/UAlbion.Game.csproj]


"/home/g/Games/ualbion/ualbion.sln" (default target) (1) ->
"/home/g/Games/ualbion/Formats/UAlbion.Formats.csproj" (default target) (4) ->
  /usr/lib/mono/msbuild/15.0/bin/Microsoft.CSharp.CurrentVersion.targets(331,5): error MSB4019: The imported project "/usr/lib/mono/msbuild/15.0/bin/Roslyn/Microsoft.CSharp.Core.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk. [/home/g/Games/ualbion/Formats/UAlbion.Formats.csproj]


"/home/g/Games/ualbion/ualbion.sln" (default target) (1) ->
"/home/g/Games/ualbion/Tools/Exporter/UAlbion.Tools.Exporter.fsproj" (default target) (5) ->
(ResolvePackageAssets target) -> 
  /usr/lib/mono/msbuild/15.0/bin/Sdks/Microsoft.NET.Sdk/targets/Microsoft.PackageDependencyResolution.targets(198,5): error : Assets file '/home/g/Games/ualbion/Tools/Exporter/obj/project.assets.json' not found. Run a NuGet package restore to generate this file. [/home/g/Games/ualbion/Tools/Exporter/UAlbion.Tools.Exporter.fsproj]


"/home/g/Games/ualbion/ualbion.sln" (default target) (1) ->
"/home/g/Games/ualbion/Core/UAlbion.Core.csproj" (default target) (6) ->
  /usr/lib/mono/msbuild/15.0/bin/Microsoft.CSharp.CurrentVersion.targets(331,5): error MSB4019: The imported project "/usr/lib/mono/msbuild/15.0/bin/Roslyn/Microsoft.CSharp.Core.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk. [/home/g/Games/ualbion/Core/UAlbion.Core.csproj]


"/home/g/Games/ualbion/ualbion.sln" (default target) (1) ->
"/home/g/Games/ualbion/Tools/GenerateEnums/GenerateEnums.csproj" (default target) (7) ->
  /usr/lib/mono/msbuild/15.0/bin/Microsoft.CSharp.CurrentVersion.targets(331,5): error MSB4019: The imported project "/usr/lib/mono/msbuild/15.0/bin/Roslyn/Microsoft.CSharp.Core.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk. [/home/g/Games/ualbion/Tools/GenerateEnums/GenerateEnums.csproj]


"/home/g/Games/ualbion/ualbion.sln" (default target) (1) ->
"/home/g/Games/ualbion/Api/UAlbion.Api.csproj" (default target) (8) ->
  /usr/lib/mono/msbuild/15.0/bin/Microsoft.CSharp.CurrentVersion.targets(331,5): error MSB4019: The imported project "/usr/lib/mono/msbuild/15.0/bin/Roslyn/Microsoft.CSharp.Core.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk. [/home/g/Games/ualbion/Api/UAlbion.Api.csproj]

    1 Warning(s)
    17 Error(s)

Time Elapsed 00:00:00.81
@csinkers
Copy link
Owner

Looks like you're trying to build it with mono, but this project uses .NET Core. At the moment you'd also need to clone and build veldrid and veldrid-spirv, or edit the packages file to reference them from NuGet. It's not really in a release-ready state as yet (hence the total lack of documentation).

@neuromancer
Copy link
Contributor Author

Oh, that's fine. Are you planing to include veldrid-* as a git submodule or as NuGet packages?

@csinkers
Copy link
Owner

NuGet most likely, just been cloning them for ease of debugging so far.

@csinkers
Copy link
Owner

csinkers commented Jan 31, 2020

I've updated it to fall back to NuGet if the veldrid repos aren't currently present, should get a lot closer to building. You'll need a copy of Albion if you want to run it, and then configure data/config.json to point to the files (by default it expects them in an "albion" directory in the main repo dir). Haven't tested it on my Linux install yet, but I had it working on there before.

There's not much in the way of gameplay yet, but most file formats have been reversed and the 2D and 3D maps render mostly OK. Once I've added a conversation system, a few map / script events and the right-click interaction menu it should be a lot more interesting, but that'll all likely take a few weeks yet.

Edit: Oh, and check run.sh for how to invoke dotnet core to actually compile and run it.

@neuromancer
Copy link
Contributor Author

Thanks a lot. I will re-try later today. When you have a minute, can you also create a README explaining the state of this neat reimplementation and maybe some screenshots? (even early ones will help)

@csinkers
Copy link
Owner

csinkers commented Feb 5, 2020

Did you have another go at getting it to compile? I've added a GitHub action to build on win, mac and ubuntu and it says everything's passing so I'd expect it would work on arch if you grab .NET core.

@mrwillbarnz
Copy link

Hi,

I know I'm not the original author of the post, but I have managed to successfully compile, but not run the application, using Manjaro Linux (I'm also testing on an Arch Linux VM using Vagrant to double-check) I installed .NET Core 3.1.100 using Microsoft's own script (dotnet-install.sh: !(https://docs.microsoft.com/en-us/dotnet/core/tools/dotnet-install-script), specifying the version using the --version flag.

Build Reproduction

  1. While running Arch Linux (You can provision a simple environment using Vagrant with Virtualbox installed using the official images: !(https://wiki.archlinux.org/index.php/Vagrant) ,
  2. Next, install dotnet-core manually using dotnet-install.sh using sudo privileges. (Make sure to install zlib first, as it is a dependency of the script e.g. sudo pacman -S zlib ).
    Example of script usage: ./dotnet-install.sh --runtime dotnet --version 3.0.0
  3. Once the script has finished, paste your Albion game files into the root repo dir as usual.
  4. Execute ./run.sh using Bash shell (no admin privileges).

I'm in the process of creating a Vagrantfile for this project, hopefully I can get compilation at least tested for Arch Linux this way and make it easier for more knowledgeable people to perform packaging workflows for the platform.

Here's my back-trace logfile for posterity:

ualbion_backtrace_110220.txt

Let me know if there's anything else I can to to help.

Will

@csinkers
Copy link
Owner

From the backtrace file, it looks like you're running it under wine? It should run fine natively on Linux, no need for wine. Also, the backtrace doesn't really tell me much as most of the code is JITed, if there's an error it should print out a managed stack trace to stdout along with the error message, or you could use lldb with SOS to debug: https://devblogs.microsoft.com/premier-developer/debugging-net-core-with-sos-everywhere/

@neuromancer
Copy link
Contributor Author

My dotnet installation on ArchLinux (using packages, not a manual installation as described by @mrwillbarnz ) also calls wine. Perhaps it is a bug in the package?

Anyway, the log is here:

$ ./run.sh 
000b:fixme:winediag:__wine_start_process Wine Staging 5.0 is a testing version containing experimental patches.
000b:fixme:winediag:__wine_start_process Please mention your exact version when filing bug reports on winehq.org.
002b:fixme:msvcrt:_configure_wide_argv (1) stub
002b:fixme:msvcrt:_initialize_wide_environment stub
002b:fixme:heap:GetNumaHighestNodeNumber semi-stub: 00000000002AEBD8
002b:fixme:ntdll:EtwEventRegister ({e13c0d23-ccbc-4e12-931b-d9cc2eee27e4}, 0x795b10, 0xa89720, 0xa89720) stub.
002b:fixme:ntdll:EtwEventRegister ({763fd754-7086-4dfe-95eb-c01a46faf4ca}, 0x795b10, 0xa89680, 0xa89680) stub.
002b:fixme:ntdll:EtwEventRegister ({a669021c-c450-4609-a035-5af59af4df18}, 0x795b10, 0xa896d0, 0xa896d0) stub.
002b:fixme:wer:WerRegisterRuntimeExceptionModule (L"Z:\\home\\g\\Games\\ualbion\\ualbion\\bin\\Debug\\netcoreapp3.0\\win-x64\\mscordaccore.dll", 0x570000) stub!
002b:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION
002b:fixme:reg:GetEnabledXStateFeatures 
000d:err:menubuilder:write_freedesktop_association_entry error writing association file "/home/g/.local/share/applications/wine-extension-html.desktop"
0032:fixme:sync:SetWaitableTimerEx (0000000000000164, 000000001C28FD38, 500, 0000000000000000, 0000000000000000, 0000000000000000, 50) semi-stub
002b:fixme:ntdll:EtwEventRegister ({49592c0f-5a05-516d-aa4b-a64e02026c89}, 0xc13044, (nil), 0x107be80) stub.
002b:fixme:ntdll:EtwEventRegister ({5e5bb766-bbfc-5662-0548-1d44fad9bb56}, 0xc13084, (nil), 0x107c190) stub.
002b:fixme:ntdll:EtwEventSetInformation (deadbeef, 2, 0x107c138, 34) stub
002b:fixme:ntdll:EtwEventSetInformation (deadbeef, 2, 0x107bce8, 17) stub
at 0: Entered main
002b:fixme:nls:CompareStringEx semi-stub behavior for flag(s) 0x8000000
002b:fixme:ntdll:EtwEventRegister ({c3c358ea-d3c8-58d1-3c19-4b1099ee5ed3}, 0xc13144, (nil), 0x1082190) stub.
002b:fixme:ntdll:EtwEventSetInformation (deadbeef, 2, 0x1082148, 20) stub
at 9: Registered encodings
at 14: Found base directory Z:\home\g\Games\ualbion
at 17: Registering asset manager
at 18: Building AssetLocator
at 29: Start building reflection cache
at 50: Done building reflection cache
at 67: Built AssetLocator
at 69: Attaching ConsoleLogger
002b:fixme:ntdll:EtwEventRegister ({2e5dba47-a3d2-4d16-8ee0-6671ffdcd7b5}, 0xc131c4, (nil), 0x10bda38) stub.
002b:fixme:ntdll:EtwEventSetInformation (deadbeef, 2, 0x10bd9e0, 40) stub
002b:fixme:ntdll:EtwEventRegister ({8e9f5090-2d75-4d03-8a81-e5afbf85daf1}, 0xc13244, (nil), 0x10be150) stub.
at 72: Attached ConsoleLogger
at 73: Attaching Settings
at 73: Attached Settings
at 73: Attaching AssetManager
at 74: Attached AssetManager
at 74: Registered asset manager
at 74: Creating engine
at 84: Attaching ShaderCache
at 85: Attached ShaderCache
at 85: Attaching Engine
at 85: Attaching WindowManager
at 85: Attached WindowManager
at 85: Attached Engine
at 86: Creating main components
Starting change backend to Direct3D11
at 99: Attaching InputManager
at 99: Attached InputManager
at 99: Attaching LayoutManager
at 99: Attached LayoutManager
at 100: Attaching MapManager
at 101: Attached MapManager
at 101: Attaching PaletteManager
000d:err:menubuilder:write_freedesktop_association_entry error writing association file "/home/g/.local/share/applications/wine-extension-rgssad.desktop"
000d:err:menubuilder:write_freedesktop_association_entry error writing association file "/home/g/.local/share/applications/wine-extension-rxdata.desktop"
000d:err:menubuilder:write_freedesktop_association_entry error writing association file "/home/g/.local/share/applications/wine-extension-rxproj.desktop"
002b:fixme:win:RegisterTouchWindow (0x2005c 00000003): stub
0033:fixme:nls:get_dummy_preferred_ui_language (0x8 0x1d3bbf60 (nil) 0x1d3bbf58) returning a dummy value (current locale)
0033:fixme:nls:get_dummy_preferred_ui_language (0x8 0x1d3bbf60 0x1219950 0x1d3bbf58) returning a dummy value (current locale)
002b:fixme:wgl:X11DRV_wglChoosePixelFormatARB unused pfAttribFList
Could not load asset Palette.Toronto2D: UAlbion.Game.Assets.AssetNotFoundException: XLD not found for object: Palette:25 in /home/g/Games/GOG/Albion/PALETTE0.XLD
   at UAlbion.Game.Assets.StandardAssetLocator.ReadFromXld(AssetPaths paths, AssetKey key, Func`4 readFunc) in /home/g/Games/ualbion/Game/Assets/StandardAssetLocator.cs:line 192
   at UAlbion.Game.Assets.StandardAssetLocator.LoadAsset(AssetKey key, String name, Func`3 loaderFunc) in /home/g/Games/ualbion/Game/Assets/StandardAssetLocator.cs:line 222
   at UAlbion.Game.Assets.AssetLocator.LoadAssetCached[T](AssetType type, T enumId, GameLanguage language) in /home/g/Games/ualbion/Game/Assets/AssetLocator.cs:line 73
Palette ID Toronto2D could not be loaded!
at 320: Attached PaletteManager
002b:fixme:imm:ImmReleaseContext (000000000002005C, 0000000019EC97D0): stub
at 328: Attaching SceneManager
at 328: Attached SceneManager
at 329: Attaching GameClock
at 329: Attached GameClock
0036:fixme:msctf:ThreadMgr_ActivateEx Unimplemented flags 0x4
at 330: Attaching SpriteManager
at 330: Attached SpriteManager
002b:err:ole:marshal_object couldn't get IPSFactory buffer for interface {ea1ea136-19df-11d7-a6d2-00065b84435c}
002b:err:ole:StdMarshalImpl_MarshalInterface Failed to create ifstub, hres=0x80004002
002b:err:ole:CoMarshalInterface Failed to marshal the interface {ea1ea136-19df-11d7-a6d2-00065b84435c}, 80004002
002b:fixme:ole:NdrClearOutParameters (00000000002ACE78,00007F45BE1916B4,000000001D812108): stub
002b:fixme:imm:NotifyIME NI_CLOSECANDIDATE
002b:err:ole:marshal_object couldn't get IPSFactory buffer for interface {ea1ea136-19df-11d7-a6d2-00065b84435c}
002b:err:ole:StdMarshalImpl_MarshalInterface Failed to create ifstub, hres=0x80004002
002b:err:ole:CoMarshalInterface Failed to marshal the interface {ea1ea136-19df-11d7-a6d2-00065b84435c}, 80004002
002b:fixme:ole:NdrClearOutParameters (00000000002ACED8,00007F45BE1916B4,000000001D812108): stub
at 333: Attaching GameState
at 334: Attached GameState
at 334: Attaching TextManager
at 334: Attached TextManager
at 334: Attaching TextureManager
at 334: Attached TextureManager
at 334: Attaching SlowClock
at 334: Attached SlowClock
at 335: Attaching CursorManager
at 335: Attached CursorManager
at 336: Attaching DebugMapInspector
at 336: Attached DebugMapInspector
at 347: Attaching InputBinder
at 347: Attached InputBinder
at 347: Attaching InputModeStack
at 347: Attached InputModeStack
at 348: Attaching MouseModeStack
at 348: Attached MouseModeStack
at 348: Attaching SceneStack
at 349: Attached SceneStack
at 353: Attaching StatusBar
at 354: Attached StatusBar
at 354: Creating scene-specific components
at 372: Attaching InventoryScreen
at 384: Attaching UiFixedPositionElement`1
Could not load asset Slab.0: System.IO.FileNotFoundException: Could not find file 'Z:\home\g\Games\GOG\Albion\SLAB'.
File name: 'Z:\home\g\Games\GOG\Albion\SLAB'
   at System.IO.FileStream.ValidateFileHandle(SafeFileHandle fileHandle)
   at System.IO.FileStream.CreateFileOpenHandle(FileMode mode, FileShare share, FileOptions options)
   at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options)
   at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share)
   at System.IO.File.OpenRead(String path)
   at UAlbion.Game.Assets.StandardAssetLocator.ReadFromFile(String path, Func`4 readFunc) in /home/g/Games/ualbion/Game/Assets/StandardAssetLocator.cs:line 169
   at UAlbion.Game.Assets.StandardAssetLocator.LoadAsset(AssetKey key, String name, Func`3 loaderFunc) in /home/g/Games/ualbion/Game/Assets/StandardAssetLocator.cs:line 222
   at UAlbion.Game.Assets.AssetLocator.LoadAssetCached[T](AssetType type, T enumId, GameLanguage language) in /home/g/Games/ualbion/Game/Assets/AssetLocator.cs:line 73
002b:fixme:d3d:wined3d_swapchain_init The application requested more than one back buffer, this is not properly supported.

As you can see, it fails to find the correct files. Are you testing with the GOG release of Albion?

@csinkers
Copy link
Owner

csinkers commented Feb 11, 2020

You'll need to set XldPath to wherever the XLDs and SLAB file live - I'm not sure how the GOG version is laid out, but there should be an XLDLIBS directory somewhere with at least 60 files, plus subdirectories named ENGLISH and INITIAL (and possibly GERMAN or FRENCH), it may be inside a CD directory. If you find an XLDLIBS directory that just contains CURRENT and INITIAL subdirectories and only two files (PALETTE.000 and PALETTE0.XLD) then that's not the right one.

Regarding wine, interesting... maybe they haven't gotten the fully native version working on Arch yet so the script runs it with wine? In any case, I can see it's starting up with the Direct3D11 backend which probably won't work. Try running it via

dotnet run --project ualbion -- -vk
or
dotnet run --project ualbion -- -gl

to use Vulkan or OpenGL.

@mrwillbarnz
Copy link

mrwillbarnz commented Feb 11, 2020

Amazing! Thanks for the advice all, it is now working using the Vulkan backend! I know I haven't converted all the assets, just wanted to get it working for now. try using my manual install method @neuromancer to compare. OpenGL didn't render anything, I can send a dump of that when I work out debugging in VSCode!

UAlbion(VK backend): https://imgur.com/29KiBlh.png

As for the mono issue; It could be a packaging bug, but I'm not very experienced in Linux packaging so I can't comment on that. I only used a manual installation as that was Microsoft's recommended route for installation for generic Linux-x64 systems that aren't Ubuntu 16-04 or 18-04.

Perhaps adding 'linux-x64' as a RID would alleviate the issue? (I've been trying it on my own fork, but I couldn't get the graphics backend to work until @csinkers suggested the previous dotnet commands.

@neuromancer
Copy link
Contributor Author

I believe #4 should fix all these issues.

@csinkers
Copy link
Owner

Just to be clear, everything after -- in an invocation to dotnet is passed through to UAlbion itself, so -vk and -gl are UAlbion options. You can also put --help -h etc and it should show you all the available options.

As far as GL not working, so far it's been by far the buggiest backend, and even in Windows there's a bunch of graphical artifacts, so not too surprised. D3D and Vulkan seem to behave themselves a lot better, or at least tolerate whatever mistakes I'm making with more patience. Haven't tried with Metal at all yet, as I don't have any suitable hardware.

@csinkers csinkers added the support Issues reported by a particular user label Jul 3, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
support Issues reported by a particular user
Projects
None yet
Development

No branches or pull requests

3 participants