Back to the main site

Installing from an .iso, Dark Souls II won't launch; "Return code 256" after fixes

Basic Gist

So I was really stubborn and held out on directly asking for help for a few days. Consequently, there’s a bit of convoluted journey here but the gist:

  1. I downloaded Dark Souls II (the original)
  2. I installed it on Lutris (flatpak for Mint) to a folder, /Games, in my user directory
  3. Wouldn’t launch, looked at error logs, searched and applied solution.
  4. Still wouldn’t launch and after various tweaks (including Winetricks, Wine versions, native vs. flathub Lutris/Steam, etc.) I get either: ‘Return code 256’ , ‘RLIMIT_NICE is <= 20’ (if I’m using a version of Proton-GE), or an issue with gamemode (goes away when Feral mode and Esync are turned off, but annoying because it wasn’t an issue at first)

Below is my System Info, and a more detailed account of issues with accompanying documentation.

System Info

System

OS: Linux Mint 20.3 una
Arch: x86_64
Kernel: 5.4.0-125-generic
Desktop: X-Cinnamon
Display Server: x11

CPU

Vendor: GenuineIntel
Model: Intel(R) Core™ i5-8250U CPU @ 1.60GHz
Physical cores: 4
Logical cores: 8

[Memory]
RAM: 7.5 GB
Swap: 1.9 GB

Graphics

Vendor: Intel
OpenGL Renderer: Mesa Intel(R) UHD Graphics 620 (KBL GT2)
OpenGL Version: 4.6 (Compatibility Profile) Mesa 22.1.7 - kisak-mesa PPA
OpenGL Core: 4.6 (Core Profile) Mesa 22.1.7 - kisak-mesa PPA
OpenGL ES: OpenGL ES 3.2 Mesa 22.1.7 - kisak-mesa PPA
Vulkan: Supported

Details

Note:

  • I’m new to Linux in general; I’m vaguely aware that code 256 has to do with either compatibility issues or the binary path; I did install a steam game through the Lutris client (Fear, platinum ed.) to see if it was a problem with my download–it worked fine
  • Dark Souls 2 original has a gold on Protondb and a gold in winehq as well (though those reviews were from Wine 3.8); I previously played it (a different download, same edition) on Windows 10 where it worked fine (I think I needed a dotnet download)
  • it stopped launching on Windows after I added more data to my Linux partition; however, this is iso package is a different download
  • There are a couple of issues that have been resolved and so I won’t detail them, but in case they’re relevant:
    –initially running Dark Souls 2 would just install DirectX 9/ Lutris for some reason gets confused and sets the binary path to the directx installer
    –‘sysctl dev.i915.perf_stream_paranoid’ was set to 1/ used a crontab (as intel itself suggests, see 7.2) to set it to 0

1. With Lutris Flatpak, latest wine runner (which I didn’t realize was experimental).

This is what I had at first after dealing with the mesa driver issue.

lutris-wrapper: Dark Souls 2
Started initial process 105 from gamemoderun /home/noel/.var/app/net.lutris.Lutris/data/lutris/runners/wine/lutris-fshack-7.2-x86_64/bin/wine /home/noel/Games/dark-souls-2/drive_c/Program Files (x86)/Dark Souls 2/Game/DarkSoulsII.exe
Start monitoring process.
gamemodeauto: 
esync: up and running.
Initial process has exited (return code: 256)
Monitored process exited.
Exit with return code 256
2022-09-18 20:20:58,612: Game still running (state: running)
2022-09-18 20:20:58,612: Stopping Dark Souls 2 (wine)

I get the same result with turning on/off system winetricks, Esync, or Game Feral mode

1.5 Don’t know if this is new but this is what I’m getting when I run flatpak lutris through the command
Gtk-Message: 20:36:04.997: Failed to load module "xapp-gtk3-module"
2022-09-18 20:36:05,692: Starting Lutris 0.5.11
2022-09-18 20:36:05,934: Running Intel Mesa driver 21.3.9 on Mesa Intel(R) UHD Graphics 620 (KBL GT2) (0x5917)
2022-09-18 20:36:05,934: GPU: 8086:5917 17AA:39F0 (i915 drivers)
2022-09-18 20:36:06,161: Startup complete

2. Switching to Wine/Proton-GE

Yields ‘RLIMIT_NICE is <= 20, unable to use setpriority safely’
Proton GE 7-28

lutris-wrapper: Dark Souls 2
Started initial process 329 from gamemoderun /home/noel/.var/app/net.lutris.Lutris/data/lutris/runners/wine/lutris-GE-Proton7-28-x86_64/bin/wine /home/noel/Games/dark-souls-2/drive_c/Program Files (x86)/Dark Souls 2/Game/DarkSoulsII.exe
Start monitoring process.
gamemodeauto:
esync: up and running.
wine: RLIMIT_NICE is <= 20, unable to use setpriority safely
wine: configuration in L"/home/noel/Games/dark-souls-2" has been updated.
Monitored process exited.
Initial process has exited (return code: 256)
Exit with return code 256
2022-09-18 20:49:51,411: Game still running (state: running)
2022-09-18 20:49:51,412: Stopping Dark Souls 2 (wine)
2022-09-18 20:50:22,395: Unable to load libGLX_nvidia.so.0
2022-09-18 20:50:22,395: Unable to locate libGLX_nvidia

with 7-1…

lutris-wrapper: Dark Souls 2
Started initial process 434 from gamemoderun /home/noel/.var/app/net.lutris.Lutris/data/lutris/runners/wine/lutris-GE-Proton7-1-x86_64/bin/wine /home/noel/Games/dark-souls-2/drive_c/Program Files (x86)/Dark Souls 2/Game/DarkSoulsII.exe
Start monitoring process.
gamemodeauto:
esync: up and running.
wine: RLIMIT_NICE is <= 20, unable to use setpriority safely
wine: configuration in L"/home/noel/Games/dark-souls-2" has been updated.
Monitored process exited.
Initial process has exited (return code: 256)
Exit with return code 256
2022-09-18 20:50:30,712: Game still running (state: running)
2022-09-18 20:50:30,713: Stopping Dark Souls 2 (wine)
2022-09-18 20:51:08,357: Unable to load libGLX_nvidia.so.0
2022-09-18 20:51:08,357: Unable to locate libGLX_nvidia

3. Switching to earlier versions of wine didn’t do much better…

There was often some sort of hiccup on the first launch attempt after switching runner versions. For example 6.21 gave:

(wine:625): GStreamer-WARNING **: 21:08:00.366: Failed to load plugin '/home/noel/.var/app/net.lutris.Lutris/data/lutris/runners/wine/lutris-fshack-6.21-6-x86_64/lib64/gstreamer-1.0/libgstopenal.so': /home/noel/.var/app/net.lutris.Lutris/data/lutris/runners/wine/lutris-fshack-6.21-6-x86_64/lib64/gstreamer-1.0/libgstopenal.so: wrong ELF class: ELFCLASS64

But after that the show logs just gave back “Return code 256”*
E.g.,

lutris-wrapper: Dark Souls 2
Started initial process 1327 from gamemoderun /home/noel/.var/app/net.lutris.Lutris/data/lutris/runners/wine/lutris-4.21-x86_64/bin/wine /home/noel/Games/dark-souls-2/drive_c/Program Files (x86)/Dark Souls 2/Game/DarkSoulsII.exe
Start monitoring process.
gamemodeauto: 
esync: up and running.
Monitored process exited.
Initial process has exited (return code: 256)
Exit with return code 256

And this persists after messing with Esync, feral game mode, etc.

**Note: there’s a lot I left out to keep it somewhat brief; runniw ng through Steam also didn’t work; tried to mess around with permissions for a while; also tried it with native Lutris which I was going to mention but then this itself took a while…if I recall correctly…I think native Lutris was the one giving me trouble with gamemode (which I didn’t even mention), at least I haven’t been able to reproduce it this evening with flatpak Lutris

How do I get this to run or even to figure out why 256 keeps coming back?
I was really hopeful this would give me the chance to jump ship completely from Windows and it’d be really annoying if the last impediment is that some games that I…chance upon…can’t be played properly.