Running The Game On Ubuntu + Steam Play
#21
Posted 02 December 2018 - 12:03 AM
#22
Posted 03 December 2018 - 05:23 AM
#23
Posted 07 December 2018 - 04:48 PM
The instructions for building wine can be found here, I've summarized them for what I did on Ubuntu 18.04: https://wiki.winehq.org/Building_Wine
Start by cloning the source code and configuring for your system
git clone git://source.winehq.org/git/wine.git ~/wine-dirs/wine-source cd ~/wine-dirs/wine-source ./configure --enable-win64
Use apt to get any libraries that the configure script complains about missing and re-run that last line until it stops complaining.
Once configured, edit ~/wine-dirs/wine-source/dlls/ntdll/path.c:
Find the function "static ULONG get_full_path_helper" and change these lines
if (NtCurrentTeb()->Tib.SubSystemTib) /* FIXME: hack */ cd = &((WIN16_SUBSYSTEM_TIB *)NtCurrentTeb()->Tib.SubSystemTib)->curdir.DosPath; else cd = &NtCurrentTeb()->Peb->ProcessParameters->CurrentDirectory.DosPath;
to
cd = &NtCurrentTeb()->Peb->ProcessParameters->CurrentDirectory.DosPath;
and save the file.
Next, compile wine:
make -j5
The number is just how many processes to use, up to number of processors you have + 1 is good if you don't have to do anything else with your computer during compilation. The '-j5' is unnecessary.
Wait 20-30 minutes. When it completes, you should have a shortcut to a script that runs wine at "~/wine-dirs/wine-source/wine64". I would recommend against the last step listed on the wineHQ instructions where you run "make install" after compilation - as this is a hacky version of wine we compiled, you don't want it overwriting any other wine install you have on your system. Do not run "make clean" after this step unless you want to recompile and waste another 20 or so minutes of your time.
Assuming you have MWO installed with steam play, the following shell script should run the game with your new build of wine:
export WINEPREFIX=~/.steam/steam/steamapps/compatdata/342200/pfx ~/wine-dirs/wine-source/wine64 ~/.steam/steam/steamapps/common/MechWarrior\ Online/Bin64/MWOClient.exe
I'd recommend saving this script somewhere so you can just use it to run the game.
I'll be testing it more to make sure it's running correctly, but it seems to be okay for now. Still, PGI I do hope that if you're reading this you'll take into consideration the suggestions on the wineHQ report to update boost 1.65.0 or later so we can run this directly through steam play: https://bugs.winehq....ug.cgi?id=46022
Edit: Adding some more details.
Edited by ohartenstein23, 07 December 2018 - 06:12 PM.
#24
Posted 10 December 2018 - 08:31 AM
Because i use vulkan on windows and it works (just more CPU consumption on one of the threads due to shaders cache compute)
Edited by MrVaad, 10 December 2018 - 08:52 AM.
#25
Posted 10 December 2018 - 09:24 AM
Edit: Tried switching to running vulkan by setting up dxvk in the prefix that steam creates for MWO, now getting just a black screen on starting the game, both with and without dxvk setup and using Proton. However, I've found in the Proton source code where the same file I edited in Wine is, so theoretically I could update the above instructions for compiling Proton with the hacked fix and installing it so only MWO uses the 'fixed' Proton version.
More Edit: On reading further, Proton seems to use Vulkan by default, or at least the configuration options when building suggests that it must be specified to not use Vulkan when compiling a version of Proton.
Even More Edit: Compiling Proton from source takes an obnoxiously long amount of time, would not recommend unless you're a masochist. My build didn't manage to fix this issue either, so if somebody else gets it working, kudos to them.
Edited by ohartenstein23, 10 December 2018 - 11:37 AM.
#26
Posted 27 December 2018 - 05:43 AM
#27
Posted 31 December 2018 - 09:15 AM
I just have one question Ohartenstein23 either here or by PM where did you find the file for the the if else statement in Proton? Thank you again so very much!
*edit in Proton addded*
Edited by Rascally Jack, 31 December 2018 - 09:20 AM.
#28
Posted 31 December 2018 - 09:19 PM
#29
Posted 12 January 2019 - 12:54 PM
Do you're actively posting your efforts on ProtonDB and Wine's AppDB?
Input there would help Linux fans a lot
#30
Posted 14 January 2019 - 10:53 AM
#31
Posted 24 January 2019 - 06:09 PM
customization.cfgand change
_mwo_fix="true"to apply the patch. Keep in mind you can enable the Proton patches and FAUDIO patches as well with his build making it similar to Proton. Just be sure to install faudio-git and lib32-faudio-git if you decide to use FAUDIO.
Edited by ThatFnGuy, 24 January 2019 - 06:09 PM.
#32
Posted 27 January 2019 - 02:01 AM
Unfortunately DX11 performance is abysmal: ~26 fps in the Mechlab, ~12 fps in actual games.
Installing dxvk and vulkan dlls in the Wine prefix via Winetricks about quadrupled the Mechlab fps and doubled in-game fps, but it's still pretty terrible.
This is with a TR 1950x and Vega 64 card so the horsepower should be there; currently I'm not seeing full utilization of either so I suspect a driver or Vulkan config issue.
It's also possible that I missed some required lib when compiling Wine - there were a lot of optional libs so I may have missed some key set of development headers when I built Wine.
DX9 performance is adequate but a few effects don't seem to be supported so lighting looks a little wonky. I'll keep tweaking the settings and dlls to see if I can get everything running smoothly and without obvious graphical issues.
#33
Posted 27 January 2019 - 01:56 PM
#34
Posted 03 February 2019 - 04:27 AM
ohartenstein23, on 10 December 2018 - 09:24 AM, said:
Edit: Tried switching to running vulkan by setting up dxvk in the prefix that steam creates for MWO, now getting just a black screen on starting the game, both with and without dxvk setup and using Proton. However, I've found in the Proton source code where the same file I edited in Wine is, so theoretically I could update the above instructions for compiling Proton with the hacked fix and installing it so only MWO uses the 'fixed' Proton version.
More Edit: On reading further, Proton seems to use Vulkan by default, or at least the configuration options when building suggests that it must be specified to not use Vulkan when compiling a version of Proton.
Even More Edit: Compiling Proton from source takes an obnoxiously long amount of time, would not recommend unless you're a masochist. My build didn't manage to fix this issue either, so if somebody else gets it working, kudos to them.
I'm also getting the black screen with this build, though it appears everything is there(clicks on random spots will open links). I wonder, if I could blindly login, if the game would work.
I've also noticed that MWO is no longer available for steamplay. I think this whole thing is making someone mad.
Edit: Indeed, blindly clicking in the bottom right got it to start patching.
Edited by mutestory, 03 February 2019 - 04:42 AM.
#35
Posted 04 February 2019 - 06:22 PM
mutestory, on 03 February 2019 - 04:27 AM, said:
I've also noticed that MWO is no longer available for steamplay. I think this whole thing is making someone mad.
I believe I have had this setting get reset a couple of times after the beta Steam client gets re-installed.
Is it still missing if you go to Steam -> Settings -> Steam Play and enable both "Enable Steam Play for supported titles" and "Enable Steam Play for all other titles"?
My MWO installation is still in place when these boxes are checked, but I haven't tried uninstalling and re-installing recently.
Edited by sleet01, 04 February 2019 - 06:23 PM.
#36
Posted 06 February 2019 - 06:51 PM
sleet01, on 27 January 2019 - 02:01 AM, said:
Unfortunately DX11 performance is abysmal: ~26 fps in the Mechlab, ~12 fps in actual games.
Installing dxvk and vulkan dlls in the Wine prefix via Winetricks about quadrupled the Mechlab fps and doubled in-game fps, but it's still pretty terrible.
This is with a TR 1950x and Vega 64 card so the horsepower should be there; currently I'm not seeing full utilization of either so I suspect a driver or Vulkan config issue.
It's also possible that I missed some required lib when compiling Wine - there were a lot of optional libs so I may have missed some key set of development headers when I built Wine.
DX9 performance is adequate but a few effects don't seem to be supported so lighting looks a little wonky. I'll keep tweaking the settings and dlls to see if I can get everything running smoothly and without obvious graphical issues.
On my system there seems to be a regression in WINE 4.x, recommend using WINE-Staging 3.21 as the base. Also recommend the following in your DXVK.conf file:
dxgi.nvapiHack = True dxvk.numCompilerThreads = X
X = number of cores
Also recommend using the ASYNC Shader patches on DXVK. Mind you this patch only works on DXVK 0.95 and lower at the moment, it won't patch 0.96 so we're waiting on the dev to update it. Also install GameMode.
I also created a folder (~/Games/MWO) for holding the DXVK.conf file and shader caches. I'm also using the following environment variables:
DXVK_ASYNC=1 DXVK_CONFIG_FILE=/home/<user>/Games/MWO/dxvk.conf DXVK_STATE_CACHE=0 WINEESYNC=1 LD_PRELOAD=/usr/\$LIB/libgamemodeauto.so.0
Since I use Nvidia cards I also use these:
__GL_NextGenCompiler=1 __GL_SHADER_DISK_CACHE=1 __GL_SHADER_DISK_CACHE_PATH=/home/<user>/Games/MWO __GL_SHADER_DISK_CACHE_SKIP_CLEANUP=1 __GL_THREADED_OPTIMIZATIONS=1
Also this may help as well.
Give my buddy Larsh the Casual Mechwarrior some love... or potatoes. He'll get a kick out of either.
After playing with all this I'm now running upwards of a 140~ in game and most of the time I'm getting now 70-100fps compared to 45~ FPS before.
Edited by ThatFnGuy, 06 February 2019 - 06:52 PM.
#37
Posted 07 February 2019 - 12:02 PM
sleet01, on 04 February 2019 - 06:22 PM, said:
I believe I have had this setting get reset a couple of times after the beta Steam client gets re-installed.
Is it still missing if you go to Steam -> Settings -> Steam Play and enable both "Enable Steam Play for supported titles" and "Enable Steam Play for all other titles"?
My MWO installation is still in place when these boxes are checked, but I haven't tried uninstalling and re-installing recently.
Yeah, that's exactly what happened. I guess I jumped to conclusions after reading some of the vitriol related to getting this working with wine.
(Anyone get the dxvk hud working? I'm not even sure dxvk is on with this build at all, and the hud wont come up.)
Edit: nvm i was on on windows 2003
Still not positive whether its taking the conf file though.
Edited by mutestory, 07 February 2019 - 01:38 PM.
#38
Posted 10 February 2019 - 04:30 PM
ThatFnGuy, on 24 January 2019 - 06:09 PM, said:
customization.cfgand change
_mwo_fix="true"to apply the patch. Keep in mind you can enable the Proton patches and FAUDIO patches as well with his build making it similar to Proton. Just be sure to install faudio-git and lib32-faudio-git if you decide to use FAUDIO.
#39
Posted 11 February 2019 - 03:36 PM
Going forward I don't recommend wasting any time trying to update Wine's review for MWO; we should probably just track work-arounds here until Lutris and Steam Play are working. Let Wine be obnoxious on their own.
#40
Posted 11 February 2019 - 06:09 PM
9 user(s) are reading this topic
0 members, 9 guests, 0 anonymous users