[Help] Can't install the mega patch on Linux

Any issues with the XWAU or X-Wing Alliance? Please let us know here!
Post Reply

[Help] Can't install the mega patch on Linux

User avatar
RandomChain
Cadet 4th Class
Posts: 19
Joined: Mon Nov 23, 2020 10:55 pm

Post by RandomChain » Tue Jan 12, 2021 6:00 pm

I've had the game running fine on basically the same setup.
But recently I got a new drive and reinstalled my OS, and now I can't install XWAU for some reason.

I'm running Pop!_OS 20.04, with Lutris 0.5.8.
I have the GOG version 2.0.2-18061.
Used dhollinger's Lutris installer.

The base game itself is installed and runs fine, but the Lutris installer fails installing the mega patch.
I'm seeing this in the output:

Code: Select all

Running /home/<user>/.local/share/lutris/runners/wine/lutris-6.0-rc1-x86_64/bin/wine /home/<user>/.cache/lutris/installer/star-wars-x-wing-alliance/xwaupgrade/XWAU2020.exe
Initial process has started with pid 149687
Start monitoring process.
05d8:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION
05d8:err:mscoree:LoadLibraryShim error reading registry key for installroot
05d8:err:mscoree:CLRRuntimeInfo_GetRuntimeDirectory error reading registry key for installroot
05d8:err:mscoree:ReallyFixupVTable unable to fixup vtable, hr=80004005, status=0
05d8:err:mscoree:expect_no_runtimes Process exited with a Mono runtime loaded.
Assertion failed: 0, file /home/ubuntu/buildbot/runners/wine/wine-src/dlls/mscoree/corruntimehost.c, line 1343

Monitored process exited.
Initial process has exited (return code: 768)
All children have exited.
Exit with returncode 768
Running /home/<user>/.local/share/lutris/runners/wine/lutris-6.0-rc1-x86_64/bin/wine /home/<user>/.cache/lutris/installer/star-wars-x-wing-alliance/xwaupatch1/XWAU2020update_v1.0.exe
Initial process has started with pid 149698
Start monitoring process.
05f4:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION
05f4:err:mscoree:LoadLibraryShim error reading registry key for installroot
05f4:err:mscoree:CLRRuntimeInfo_GetRuntimeDirectory error reading registry key for installroot
05f4:err:mscoree:ReallyFixupVTable unable to fixup vtable, hr=80004005, status=0
05f4:err:mscoree:expect_no_runtimes Process exited with a Mono runtime loaded.
Assertion failed: 0, file /home/ubuntu/buildbot/runners/wine/wine-src/dlls/mscoree/corruntimehost.c, line 1343

Monitored process exited.
Initial process has exited (return code: 768)
All children have exited.
Exit with returncode 768

If I try to manually run the patch file, it fails with error message: "The calling thread must be STA because many UI components require this."
Image


I don't think it's an issue with the patch file itself, I've checked the md5 hash and it's correct.
The only difference I can see between now and when it worked is wine version being updated to 6.0-rc1, while I used 5.7-11 before. But trying older wine versions doesn't help.

Any idea what's wrong?

User avatar
RandomChain
Cadet 4th Class
Posts: 19
Joined: Mon Nov 23, 2020 10:55 pm

Post by RandomChain » Sat Jan 16, 2021 1:30 pm

A little progress on my side, I installed on Windows, then copied the files over my Linux installation. The game runs now although some graphic options are messed up.
I'll see if I can make this work, but if not I guess it's another game I'll have to boot Windows for.

User avatar
RandomChain
Cadet 4th Class
Posts: 19
Joined: Mon Nov 23, 2020 10:55 pm

Post by RandomChain » Sat Apr 10, 2021 11:20 am

I know there are like five people in the whole world trying to run XWAU on Linux, but this might help one of the other four some day.

So after already giving up trying to get this to run again on my system and just playing on Windows, I decided to give it another try following the release of 2.1 patch.
Just trying to install with dhollinger's Lutris installer didn't work, the installer either got stuck while setting up wine prefix or I'd get the same error as before when trying to run.
Eventually I figured out it's getting stuck on some .NET related issue, so I trying setting it up manually.
What I did was to create the wine prefix directory, manually install Mono 6.0 using Lutris wine 6.0, install .NET 4.6.1 using winetricks, then run an edited Lutris installer when I cut out the task of installing dotnet461.

Code: Select all

mkdir ~/games/xwa
WINEPREFIX=~/games/xwa ~/.local/share/lutris/runners/wine/lutris-6.0-x86_64/bin/wine msiexec /i ./wine-mono-6.0.0-x86.msi
WINEPREFIX=~/games/xwa winetricks  # and install .NET 4.6.1
lutris -d -i ./xwaupgrade-core-new.yaml  # file without dotnet461 task 
And so far it seems to work fine! Even my joystick is properly recognised.
Got one error at the end of the main XWAU patch installation, but that didn't seem to mess anything up.
I did manage to break it a few times after playing with the config files and had to reinstall, so I'm not gonna touch it now and hope it keeps working.

robert012545
Recruit
Posts: 1
Joined: Sun Oct 08, 2023 7:53 pm

Post by robert012545 » Sun Oct 08, 2023 7:58 pm

I am one of the five. It actually worked for me the way you described, so thank you. I want to add that when installing .net 461, it was asking me to reboot or to reboot later. I chose reboot and it went into a weird loop of installing different versions of .net. I stopped that silliness at one point and then it worked. Also i was using a 32 bit prefix.

User avatar
m0rgg
XWAU Member
Posts: 265
Joined: Wed Apr 01, 2020 10:33 pm

Post by m0rgg » Mon Oct 09, 2023 10:28 pm

Hello!
Have you tried one of the Lutris installers?

CmdrKettch
Cadet 4th Class
Posts: 12
Joined: Fri Jun 09, 2023 4:01 am

Post by CmdrKettch » Fri Dec 01, 2023 4:18 am

I am one of the foretold five. After a bit of work, I managed to get the game running on Lutris, myself--but I've run into some issues.

First, I checked for functionality with the base XWAU2020 mega patch--and it works, but the (constant, keep reading) problem is low FPS. Blue_max's effects work (at the very least, my X-wing's lasers look a whole lot more striking than I'm used to...) but general video is as choppy as described. Next, I installed v.6 of the mega patch, and that's where things fell apart: I would make it to the launcher, but starting the game would yield a black screen and an instant crash (with notification from Wine's implementation of that notification window). I replaced Blue_max's ddraw.dll (that is what I'm assuming is installed with the v.6 patch) with Jeremy's golden ddraw.dll, and the game launched successfully...but with the same low framerate. Can anyone help me out with this? I'd especially like to play with Blue_max's works--they look phenomenal in videos.

User avatar
m0rgg
XWAU Member
Posts: 265
Joined: Wed Apr 01, 2020 10:33 pm

Post by m0rgg » Fri Dec 01, 2023 9:03 pm

Welcome to the exclusive Linux club 😁

What is your prefix config? The performance is not comparable to Windows, but shouldn't be that bad either. Make sure you are using DXVK

I haven't tested XWAU2020 Update6 in Linux yet, but I don't think any of the changes from 5.6 should break Linux compatibility

CmdrKettch
Cadet 4th Class
Posts: 12
Joined: Fri Jun 09, 2023 4:01 am

Post by CmdrKettch » Sun Dec 03, 2023 3:51 am

Heh--thanks, m0rgg.

Here are the details regarding that prefix:

・Lutris Wine 7.1, 32-bit architecture
・Mono 6.0, both support and runtime
・.NET 4.0, 4.5, 4.6, and 4.6.1 installed (Note: I found that 4.8 keeps XWA from running)
・ddraw.dll and dinput overriden (both set to [native, builtin])
・Registry keys added to keep the launcher, configurators, and other utilities from using DXVK
・Runner Options:
・・DVXK disabled
・・VKD3D, D3D Extras, DXVK-NVAPI/DLSS enabled (isn't this for Nvidia? I have a Radeon card),
・・dgvoodoo version 2.8
・・Esync and Fsync enabled
・・Not windowed
・・DPI scaling disabled
・・Uses a sandbox for Wine folders
・System Options:
・・Lutris runtime not disabled
・・Prefers system libraries
・・Cores not restricted (I remember FPS problems with this enabled; I don't remember the details--maybe lower FPS)
・・Feral GameMode enabled (never thought to mess with this--or any other settings whose effects I wasn't familiar with)

As you can see, some settings were left out. If you want to know anything else, just ask. That being said, your warning about DXVK is concerning: I'd read that it ought to be disabled for XWA--and it looks like it needed to be for the utilities and launcher to even start. Though, to be fair, I'd never enabled it from the Runner Options tab--it's always been disabled.

User avatar
m0rgg
XWAU Member
Posts: 265
Joined: Wed Apr 01, 2020 10:33 pm

Post by m0rgg » Sun Dec 03, 2023 8:36 pm

I don't know about older versions of ddraw and DXVK but I use it and the performance is way better.
Try enabling it for xwingalliance.exe at least.

In fact the launchers normally require .Net 4.8. I install dotnet48 with winetricks and it works (although the installation takes ages).

CmdrKettch
Cadet 4th Class
Posts: 12
Joined: Fri Jun 09, 2023 4:01 am

Post by CmdrKettch » Tue Dec 05, 2023 4:13 am

To be clear, m0rgg, you're saying you're using DXVK with Blue_max's ddraw? Also, could you tell me the details of your prefix?

Speaking of .NET 4.8, I was under the impression that they needed 4.8, myself--since I saw Wine produce an error saying something about 4.8 "not implemented". That said, after a reinstallation (I'd wrecked a previous install via testing), I saw that same error despite 4.8 being present.

User avatar
m0rgg
XWAU Member
Posts: 265
Joined: Wed Apr 01, 2020 10:33 pm

Post by m0rgg » Tue Dec 05, 2023 6:08 am

CmdrKettch wrote:
Tue Dec 05, 2023 4:13 am
To be clear, m0rgg, you're saying you're using DXVK with Blue_max's ddraw? Also, could you tell me the details of your prefix?
Yes
I don't have them in front of me but from the top of my head:
- Wine-GE 8.x runtime (latest at that time)
- 64 bit (my joystick was not detected in 32 bit)
- dotnet48
- n,b exceptions for ddraw.dll and dinput.dll
- DXVK enabled
- everything else default
Speaking of .NET 4.8, I was under the impression that they needed 4.8, myself--since I saw Wine produce an error saying something about 4.8 "not implemented". That said, after a reinstallation (I'd wrecked a previous install via testing), I saw that same error despite 4.8 being present.
Regardless of the error, the 4.8 requirement has been stated by @JeremyaFr. And .NET is used not only for the launchers but also by some important hooks, including some related to graphics.

CmdrKettch
Cadet 4th Class
Posts: 12
Joined: Fri Jun 09, 2023 4:01 am

Post by CmdrKettch » Wed Dec 06, 2023 3:52 am

m0rgg wrote:
Tue Dec 05, 2023 6:08 am
Yes
I don't have them in front of me but from the top of my head:
- Wine-GE 8.x runtime (latest at that time)
- 64 bit (my joystick was not detected in 32 bit)
- dotnet48
- n,b exceptions for ddraw.dll and dinput.dll
- DXVK enabled
- everything else default

Regardless of the error, the 4.8 requirement has been stated by @JeremyaFr. And .NET is used not only for the launchers but also by some important hooks, including some related to graphics.
Well I'll be...this is turning all my understanding of this on its head. If I could trouble you to, could you get any further details? I was wondering, for example, whether or not you had Mono installed; I'm guessing it's the version that works with that runtime. (You meant "runner", right?) Also, did you install from Lutris or from the terminal/command line? (All of this is nuts--I'm gonna have to commit tomorrow evening to this; imagine if the solution was in so simple a setup.)

Finally, a major question: did you ever run into an error involving "Gstreamer"? I got that quite a bit when using 64-bit architecture.

CmdrKettch
Cadet 4th Class
Posts: 12
Joined: Fri Jun 09, 2023 4:01 am

Post by CmdrKettch » Sun Dec 10, 2023 5:35 am

In addition...how did you install .NET 4.8 to a 64-bit prefix? Trying to install that starts a chain of installations starting with 4.0, which causes errors (the error I get states that "winxp64" or something to that effect is incompatible with 4.0).

User avatar
m0rgg
XWAU Member
Posts: 265
Joined: Wed Apr 01, 2020 10:33 pm

Post by m0rgg » Sun Dec 10, 2023 6:52 am

CmdrKettch wrote:
Sun Dec 10, 2023 5:35 am
In addition...how did you install .NET 4.8 to a 64-bit prefix? Trying to install that starts a chain of installations starting with 4.0, which causes errors (the error I get states that "winxp64" or something to that effect is incompatible with 4.0).
I install It with a Lutris script. Even if you ignore the errors, the launchers and the game work.

Sorry I didn't have time to put into this lately... But I still want to come back to it to update the Lutris installers to the latest versions, and hopefully fix TFTC videos

CmdrKettch
Cadet 4th Class
Posts: 12
Joined: Fri Jun 09, 2023 4:01 am

Post by CmdrKettch » Sun Dec 10, 2023 5:24 pm

Hm. I've had major trouble with Lutris scripts, actually--namely, the script failing to detect the installed game. Perhaps it needs to install the game as well.

Either way, don't worry about it. In the meantime, I'll continue to try to get this to work (I need to actually try--I was going to on Thursday night, until I found that I couldn't install 4.8 alone--the rest would have taken more time than I had); I still get the idea that your config might just work (especially since mine required so much hoop-jumping).

CmdrKettch
Cadet 4th Class
Posts: 12
Joined: Fri Jun 09, 2023 4:01 am

Post by CmdrKettch » Tue Dec 12, 2023 4:31 am

Well I'll be damned--that Lutris installer "XWAU 6+beta using DXVK" worked! There were a number of reasons, now that I think of it, that the other one I tried didn't work...but some things are still a mystery. Can't really remember at the moment, anyway. lol

Now, there's only the problem of low FPS. Well--that and the HUD text being illegibly tiny. Should I drop resolution to fix both those problems? I've read that no matter the quality of your graphics card, the limitations of the game's code will cause it to strain the CPU--ignoring the GPU.

User avatar
m0rgg
XWAU Member
Posts: 265
Joined: Wed Apr 01, 2020 10:33 pm

Post by m0rgg » Tue Dec 12, 2023 7:27 am

Glad to read that it worked! 👌

The CPU vs GPU balance is better now, but I think the biggest FPS drop downs are still due to CPU bottleneck.

For the text size, you can try modifying the HUD scale value in Hooks.ini, hook_resolution section.
That will not improve the size of the dynamic cockpit indicators though. The only way to enlarge that is to reduce the FOV (effectively zooming in).

CmdrKettch
Cadet 4th Class
Posts: 12
Joined: Fri Jun 09, 2023 4:01 am

Post by CmdrKettch » Mon Jan 15, 2024 6:24 pm

Finally got some time to test XWA, and things aren't going well for Blue_max's effects; meanwhile, things are a bit short of perfect with JeremyaFr's golden ddraw.dll.

I tried disabling cockpit inertia and MFD wireframes to help with the FPS hit, but those distort graphics; this obstruction is complete, keeping me from seeing anything and even obstructs the game menu. After that, I tried dropping in-flight resolution to 640x480, but nothing was visisble--whether in flight or in the menu. Finally, I decided to see how XWA would run without the special effects, and it was mostly fine: everything ran well, but I could see a slight choppiness--for example, I couldn't quite see the entire flight of lasers as they were fired and traveled forward; in other words, an FPS hit.

It makes little sense to me, as I did not have this problem in Windows 7. @m0rgg , I do understand the logic behind your earlier suggestion--that CPU bottleneck is the issue. Indeed, while my GPU is a Radeon RX 6950 XT, my CPU is still a Ryzen 7 1800X from 2017 or thereabouts--there's bound to be some bottleneck. What gives me trouble agreeing in this case is the fact that no games give me such trouble on Win7 and, here on Linux, I can run Armored Core 6 on maximum graphical settings without any troubles: I tried a certain mission in which there was plenty of activity (i.e., sandstorm/massive dust cloud surrounding a just-as-massive mining vehicle), and perceived no hit to FPS or any other phenomena that would indicate inadequacy of my CPU.

You also said that the CPU/GPU balance is better now, which means my newer graphics card should be able to handle a greater load of what the XWAU's magic (never mind vanilla XWAU) can create. All of the above raise questions, to be sure, but I'm hoping for more help in any case.

User avatar
m0rgg
XWAU Member
Posts: 265
Joined: Wed Apr 01, 2020 10:33 pm

Post by m0rgg » Mon Jan 15, 2024 7:41 pm

You can't compare the performance of modern game engines with a mod hacking effect on top of a 25 year old game, with no access to source code...
As great as the effects ddraw and the hooks are, they're still somewhat limited by how the old game engine runs.

To improve performance you can try disabling hit effects in-game, bloom, and Ray Traction Ng if you have it enabled. But if your issues persist with the golden ddraw (Jeremy's), then there's probably some other underlying issue.

CmdrKettch
Cadet 4th Class
Posts: 12
Joined: Fri Jun 09, 2023 4:01 am

Post by CmdrKettch » Wed Jan 24, 2024 1:25 pm

Fair point
m0rgg wrote:
Mon Jan 15, 2024 7:41 pm
You can't compare the performance of modern game engines with a mod hacking effect on top of a 25 year old game, with no access to source code...
As great as the effects ddraw and the hooks are, they're still somewhat limited by how the old game engine runs.
Fair points. Regarding the golden ddraw, I'll continue to investigate. This game is worth the effort.

User avatar
RandomChain
Cadet 4th Class
Posts: 19
Joined: Mon Nov 23, 2020 10:55 pm

Post by RandomChain » Tue Feb 27, 2024 6:41 pm

A little late to the party, but have you tried disabling Text2DRendererEnabled in ddraw.cfg? I get a massive FPS boost when it's turned off on my setup.

Post Reply