HOWTO: PoE on Linux in DX11 mode w/ SteamPlay (Proton) or Lutris

"
erbsenbrei wrote:
Any input of some more knowledgeable people would be appreciated.

The first thing to do is start Lutris with -d and enable debugging output from game settings (Runner options -> Output debugging info). That'll give more information on what might be wrong. If you are getting any error dialogs, knowing what those say would also be useful.

"
Melvar wrote:
On my attempt, Lutris does not in fact install PoE – it downloads the installer and sets up the wineprefix, but when attempting to run it complains that the executable is not present – no wonder since the installer doesn’t seem to have been run. Running the installer in the wineprefix doesn’t work either.
My first guess as to the problem is:
"
0033:err:jpeg:error_exit_fn Wrong JPEG library version: library is 62, caller expects 80
which shows up in the output when trying to run the installer manually.

Yes, Lutris seems to be kinda bad about errors during installation. The incorrect JPEG library is indeed a problem. I don't know about Antergos specifically but on Debian I had to dig up the libjpeg80 package from a previous distro version to make the installer work. However none of the Wine builds provided by Lutris worked quite correctly for the game itself so I eventually ended up using my own self-compiled Wine.
"
databeaver wrote:
"
erbsenbrei wrote:
Any input of some more knowledgeable people would be appreciated.

The first thing to do is start Lutris with -d and enable debugging output from game settings (Runner options -> Output debugging info). That'll give more information on what might be wrong. If you are getting any error dialogs, knowing what those say would also be useful.


Thanks for the input, wasn't aware of the -d flag. Also enabled the 'Show Crash dialogs' option in the runner settings, both to little to no avail from what little I can extract from the output.

Do note that I've not altered any of installation scripts settings, so it's vanilla Lurtis.

The game installs just fine from what I can tell but refuses to start up post installation.

Here's the Lutris debug output:

"
[blah@blah-linux ~]$ lutris -d
DEBUG 2018-08-31 16:26:46,821 [api]:Fetching game library
DEBUG 2018-08-31 16:26:46,898 [steam]:Watching Steam folder /home/blah/.local/share/Steam/steamapps
INFO 2018-08-31 16:26:54,687 [runner]:Runtime disabled by system configuration
INFO 2018-08-31 16:26:54,774 [dxvk]:Replacing /home/blah/Games/path-of-exile/drive_c/windows/system32/dxgi with DXVK version
INFO 2018-08-31 16:26:54,776 [dxvk]:Replacing /home/blah/Games/path-of-exile/drive_c/windows/system32/d3d11 with DXVK version
INFO 2018-08-31 16:26:54,778 [dxvk]:Replacing /home/blah/Games/path-of-exile/drive_c/windows/syswow64/dxgi with DXVK version
INFO 2018-08-31 16:26:54,779 [dxvk]:Replacing /home/blah/Games/path-of-exile/drive_c/windows/syswow64/d3d11 with DXVK version
INFO 2018-08-31 16:26:54,876 [runner]:Runtime disabled by system configuration
DEBUG 2018-08-31 16:26:54,877 [game]:Launching Path of Exile: {'env': {'DXVK_HUD': 'fps', 'pulse_latency': 'True', 'reset_pulse': 'True', 'DRI_PRIME': '0', 'WINEDEBUG': '-all', 'WINEARCH': 'win64', 'WINE': '/home/blah/.local/share/lutris/runners/wine/esync-3.14-x86_64/bin/wine', 'WINEPREFIX': '/home/blah/Games/path-of-exile', 'WINEDLLOVERRIDES': 'xaudio2_7=n,b;d3d11,d3dcompiler_47,dxgi=n'}, 'command': ['/home/blah/.local/share/lutris/runners/wine/esync-3.14-x86_64/bin/wine', '/home/blah/Games/path-of-exile/drive_c/Program Files (x86)/Grinding Gear Games/Path of Exile/PathOfExile.exe', '--waitforpreload', '--nologo', '--nodx9ex', '--gc2']}
DEBUG 2018-08-31 16:26:54,878 [thread]:Command env: SDL_VIDEO_FULLSCREEN_DISPLAY="off" DXVK_HUD="fps" pulse_latency="True" reset_pulse="True" DRI_PRIME="0" WINEDEBUG="-all" WINEARCH="win64" WINE="/home/blah/.local/share/lutris/runners/wine/esync-3.14-x86_64/bin/wine" WINEPREFIX="/home/blah/Games/path-of-exile" WINEDLLOVERRIDES="xaudio2_7=n,b;d3d11,d3dcompiler_47,dxgi=n"
DEBUG 2018-08-31 16:26:54,878 [thread]:Running command: "/home/blah/.local/share/lutris/runners/wine/esync-3.14-x86_64/bin/wine" "/home/blah/Games/path-of-exile/drive_c/Program Files (x86)/Grinding Gear Games/Path of Exile/PathOfExile.exe" "--waitforpreload" "--nologo" "--nodx9ex" "--gc2"
DEBUG 2018-08-31 16:26:54,878 [thread]:Storing environment variable SDL_VIDEO_FULLSCREEN_DISPLAY to off
DEBUG 2018-08-31 16:26:54,878 [thread]:Storing environment variable DXVK_HUD to fps
DEBUG 2018-08-31 16:26:54,878 [thread]:Storing environment variable pulse_latency to True
DEBUG 2018-08-31 16:26:54,878 [thread]:Storing environment variable reset_pulse to True
DEBUG 2018-08-31 16:26:54,879 [thread]:Storing environment variable DRI_PRIME to 0
DEBUG 2018-08-31 16:26:54,879 [thread]:Storing environment variable WINEDEBUG to -all
DEBUG 2018-08-31 16:26:54,879 [thread]:Storing environment variable WINEARCH to win64
DEBUG 2018-08-31 16:26:54,879 [thread]:Storing environment variable WINE to /home/blah/.local/share/lutris/runners/wine/esync-3.14-x86_64/bin/wine
DEBUG 2018-08-31 16:26:54,879 [thread]:Storing environment variable WINEPREFIX to /home/blah/Games/path-of-exile
DEBUG 2018-08-31 16:26:54,879 [thread]:Storing environment variable WINEDLLOVERRIDES to xaudio2_7=n,b;d3d11,d3dcompiler_47,dxgi=n
wine: cannot find L"C:\\windows\\system32\\winemenubuilder.exe"
DEBUG 2018-08-31 16:26:57,004 [thread]:Start process monitoring
DEBUG 2018-08-31 16:26:57,004 [thread]:Processes monitored: PathOfExile.exe (5869:Z)
DEBUG 2018-08-31 16:26:57,005 [thread]:Processes excluded: wineserver (5872:S)
DEBUG 2018-08-31 16:26:57,005 [thread]:Waiting for processes to exit
DEBUG 2018-08-31 16:26:57,005 [thread]:Removing stdout monitor
DEBUG 2018-08-31 16:26:57,005 [thread]:Thread is no longer running
DEBUG 2018-08-31 16:26:57,005 [thread]:Restoring environment
DEBUG 2018-08-31 16:26:58,879 [game]:Game thread stopped
DEBUG 2018-08-31 16:26:58,879 [game]:Game thread still running, stopping it (state: running)
DEBUG 2018-08-31 16:26:58,880 [game]:Path of Exile stopped at Fr, 31 Aug 2018 16:26:58
INFO 2018-08-31 16:26:58,880 [runner]:Runtime disabled by system configuration
DEBUG 2018-08-31 16:26:59,031 [wine]:Killing all wine processes: ['/home/blah/.local/share/lutris/runners/wine/esync-3.14-x86_64/bin/wineserver', '-k']
DEBUG 2018-08-31 16:26:59,032 [wine]: Wine prefix: /home/blah/Games/path-of-exile
DEBUG 2018-08-31 16:26:59,032 [wine]: Wine arch: win64
DEBUG 2018-08-31 16:26:59,032 [wine]: Initial pids: {'5881', '5896', '5891', '5878', '5872'}
DEBUG 2018-08-31 16:26:59,185 [wine]:Waiting for wine processes to terminate
DEBUG 2018-08-31 16:26:59,185 [thread]:Restoring environment
DEBUG 2018-08-31 16:26:59,185 [thread]:Killing all remaining processes


Everything seems to be in order until the highlighted entry near the bottom. I don't get where this is coming from or why it is happening.

Some older posts (not PoE related) suggest it might've had to do with Lutris' "Disable process monitor" options but even if do disable it, which is disencouraged, nothing changes.

I will attempt some other Lutris games which also worked prior (Witcher 3 maybe) and see if the behavior is reproducible. I cannot shake the feeling that some dependencies may be messed up (i.e a system problem rather than Lutris).
Last edited by erbsenbrei on Aug 31, 2018, 10:49:03 AM
"
erbsenbrei wrote:
"
DEBUG 2018-08-31 16:26:54,879 [thread]:Storing environment variable WINEDEBUG to -all

You do not seem to have enabled debugging output yet. Please do that. It should reveal if there's an issue with dlls. Actually I'd like to see a +module trace but I'm not sure how to get that from within the Lutris UI.
"
databeaver wrote:
"
erbsenbrei wrote:
"
DEBUG 2018-08-31 16:26:54,879 [thread]:Storing environment variable WINEDEBUG to -all

You do not seem to have enabled debugging output yet. Please do that. It should reveal if there's an issue with dlls. Actually I'd like to see a +module trace but I'm not sure how to get that from within the Lutris UI.


Hey, thanks for your help, for you've pointed me into the correct direction.

First and foremost: Running Lutris with -d and enabling Show Crash Dialog in the settings does nothing to WINEDBUG settings. Even doing a WINEDEBUG=+all seemed to be overwritten by Lutris on start up.

As a result I exported the variable and ran the executable via "wine /path/to/exe" and logging its output into a file. After a multitude of runs with bazillion of varying outputs (for whatever reason) it finally settled down to quick and easy debug logs.

"
err:module:import_dll Loading library WLDAP32.dll (which is needed by L"Z:\\home\\blah\\Games\\path-of-exile\\drive_c\\Grinding Gear Games\\<poe>.exe") failed (error c000007a).


After a quick google session it turned out I had been missing the package lib32-libldap.

The launcher now comes up and the game is downloading - so that's quite the step forward and hopefully the last to tackle.

As I'm a new comer to Linux and a newbie overall as far as the OS concerned I don't know what that particular package contains and why it was present in my previous install but not in my current. It might've been a dependency for something else I installed previously.
Last edited by erbsenbrei on Aug 31, 2018, 12:56:13 PM
"
erbsenbrei wrote:
First and foremost: Running Lutris with -d and enabling Show Crash Dialog in the settings does nothing to WINEDBUG settings. Even doing a WINEDEBUG=+all seemed to be overwritten by Lutris on start up.

Yes, the crash dialogs setting is different from the debug output setting. Looks like you have to enable the advanced settings checkbox at the bottom of the dialog to even see the debug output setting. The default is disabled which sets WINEDEBUG=-all. Changing it to enabled sets WINEDEBUG to an empty value, which allows errors and fixmes to be printed. Those are enough to troubleshoot simple problems like missing DLLs. There's also an option to set WINEDEBUG=+all, but that's not generally recommended because it is extremely spammy and you need to know what you're looking for in order to find anything useful in it. If the application fails to launch because of a missing library it probably doesn't generate too much output, but using it on an application that actually works to at least some degree can easily produce millions of lines.

"
erbsenbrei wrote:
As I'm a new comer to Linux and a newbie overall as far as the OS concerned I don't know what that particular package contains and why it was present in my previous install but not in my current. It might've been a dependency for something else I installed previously.

LDAP stand for Lightweight Directory Access Protocol. Its most prominent use is to manage user information across networked computers. Most users don't need it, but as you guessed, it's included as a dependency on a number of other packages. It doesn't take much space so it's easier for the distribution maintainers to include it just in case and avoid creating multiple versions of packages.

An interesting detail to note here is that the package you mentioned contains the 32-bit version of the LDAP library. The DX11 version of Path of Exile is a 64-bit binary and should use 64-bit libraries, but likely the Lutris install script is set up so that it initially launches the 32-bit binary, which then detects that you have DX11 available and switches to the 64-bit one.
Last edited by databeaver on Aug 31, 2018, 1:52:57 PM
Well it was fun while it lasted. Then Delve introduced fancy new graphics features...

I had PoE running well in both Lutris and SteamPlay before the update. Both environments updated the game but then failed to launch. The game starts up with the gear logo but then (mostly)freezes and never loads any actual 3d graphics. I have to either remote in to my machine and kill the process or do a hard reboot. So far none of the launch options seems to make any difference.

Ideas?
"
tainium wrote:
Well it was fun while it lasted. Then Delve introduced fancy new graphics features...

I had PoE running well in both Lutris and SteamPlay before the update. Both environments updated the game but then failed to launch. The game starts up with the gear logo but then (mostly)freezes and never loads any actual 3d graphics. I have to either remote in to my machine and kill the process or do a hard reboot. So far none of the launch options seems to make any difference.

Ideas?


same problem here... getting computer freezes now, need to use hard reset :(
“Three great forces rule the world: stupidity, fear and greed.”
― Albert Einstein
I am also getting full system freeze with the Delve update. I set it to boot into a virtual desktop and it didn't take out my system. It throws a bunch of exception windows. The first one says Failed to create WIC Factory. Then it shows a bunch about fonts. Then it shows the following 2:

https://drive.google.com/open?id=1hNRBCJVGDi5gZuxweswG8hE01THUhVT7


https://drive.google.com/open?id=1-0S5k1Ds0G3abDPA798qUCd4yn79Snt9
Since delve patch i'm also stuck at the gear screen. Tried reinstalling and re-apply poe-hack +dxvk, also tried different runners.
presidentbiggles on github has a working solution for us. It runs but we're stuck with windowed 1920x1080 for now.

"
...Edited my production_Config.ini file for the game and changed directx_version= to 9, borderless_windowed_fullscreen=false, fullscreen=false. From here I verified that the game would load for me, changed to direct9ex, that worked, and then changed to directx11, and that now works in windowed mode
...
edit: Fullscreen, Fullscreen windowed and changing resolutions all seem to be a culprit here. So long as I am windowed and set the resolution I want in the config file the game handles perfectly fine.


Removing --gc2 from your launch options might also help. Several other people are reporting success with this method as long as you don't try changing the resolution away from windows 1920x1080.
Last edited by tainium on Sep 1, 2018, 11:31:29 AM

Report Forum Post

Report Account:

Report Type

Additional Info