HGL
inland-turquoise
Failed installation (reported as correct): The Samaritan Paradox
Today I installed "The Samaritan Paradox" from GOG using Heroic on Ubuntu. This game does not have a Linux version, so it relies on Wine or Proton.
The game didn't start, so I started to investigate.
1. It uses the not-self-contained lightweight GOG installer.
2. When running this installer, it seems that it fails to create/write some files into the game's main directory:
- The most important one:
samaritan.exe
- But also other relevant files, such as audio.vox
(it creates it, but leaves it with a size of 0 bytes)
- Another file that exists but presents a smaller size than it should is goggame-1207664263.hashdb
Now, when I install this game by downloading the big self-contained installer (and using Wine, without Heroic)... the installer works perfectly, and the game can be properly launched. With one caveat: although it goes fullscreen... the image is not properly stretched, and it's rendered in the top-left corner of the screen (you can imagine the drama in 4k screens, when this game uses a resolution typical of 1985).
3. If I copy the missing files from the correct Wine installation into the Heroic+Proton installation... then I manage to launch the game. Sound works, the image is properly stretched to use the whole screen...
4. BUT:
- The mouse pointer does not work
- If I switch to another virtual desktop and come back, I find that the app has crashed miserably because of an error supposedly related to MS VisualStudio C++ runtime...23 Replies
inland-turquoiseOP•3mo ago
Where should I place this
gogdl
binary?
Ok, sorry. I found it, I reliad on locate
(using Flatpak, so the binary path was a bit convoluted)vicious-gold•3mo ago
you can put it anywhere you want and then go to settings > advanced > and pick it as an alternative gogdl binary
inland-turquoiseOP•3mo ago
Now it's properly installed. But similar problem as before.
1. When using GE-Proton, the image is properly adapted for my screen size... but I get no mouse pointer, and switching to another virtual desktop will make the app creash.
2. When using Wine-GE, then the mouse pointer works (although it's still brittle against virtual desktop switching)... but the game image is positioned at the top-left corner of my screen.
But to the important question:
- What's the equivalent command line call for wine made by Heroic?
I tried using the GE-Proton's
wine
and wine64
binaries, with these commands, but both of them fail without giving me the same results as Heroic.
Example: ~/.var/app/com.heroicgameslauncher.hgl/config/heroic/tools/proton/GE-Proton-latest/files/bin/wine "~/Games/Heroic/The Samaritan Paradox/samaritan.exe
this is not what happens when called by Heroic, so I guess my command line call is not correct
I also tried setting the environment variable WINEPREFIX="/home/jocs/Games/Heroic/Prefixes/default/The Samaritan Paradox"
vicious-gold•3mo ago
heroic doesn't call wine directly, we call gogdl
you can see the launch command in the logs of the game, it's a after the part that shows the game settings
inland-turquoiseOP•3mo ago
gogdl is used to run as well? Ok, I though it was in charge of downloads+installs, bad guess then
ah... I was looking for the logs on the specific game "page".... but they are all centralized close to the global settings...
not very fond of this usability choice
I uploaded it through Heroic's interface. https://0x0.st/8Uob.log .
vicious-gold•3mo ago
the logs are in the game page if you click
Report a problem running this game
at the bottom of the page, or you can also right click the game card in the Library and there's an option for logs
you can see there in the logs where it says Launch Command: ....
it's the whole command Heroic runs to launch the game (sets env variables, adds stuff based on settings, calls gogdl, etc)inland-turquoiseOP•3mo ago
Reporting is not the same as inspecting the logs though, still very far from intuitive
vicious-gold•3mo ago
you can still right click a card and see the logs
and you are... reporting a problem
I do think we should have a
Logs
button in the 3-dots menu in the game page, at some point it was removed not sure whyinland-turquoiseOP•3mo ago
I see. It's strange that it's directly acessible through the cards, but not when we are already inside the game page (taking aside the "report" line). In any case... I was not here to rant 😅 .
The updated logs, this time in verbose mode:
https://0x0.st/8Uou.log
vicious-gold•3mo ago
this is concerning, shown for your nvidia GPU
Driver: undefined
check if you have the nvidia's flatpak package installed, run flatpak install nvidia
and make sure you have a version of the flatpak package that matches your system's drivers
then uncheck the Use Dedicated Graphics Card
option, DXVK should be smart enough to pick the dedicated GPU without that setting, and enabling it sometimes creates problemsinland-turquoiseOP•3mo ago
sorry for the noise, these logs that I'm linking now seem to be more "complete", for some reason the previous ones didn't capture the error related to switching to different virtual desktops: https://0x0.st/8UoL.log
checking the nvidia thing now
---
I installed the following "runtimes" (time ago I installed the official newest Nvidia drivers manually, the DEB packages I mean, so I matched the version for the flatpak packages; also
nvidia
does not appear as an installable package):
- flatpak install runtime/org.freedesktop.Platform.GL32.nvidia-575-51-03/x86_64/1.4
- flatpak install runtime/org.freedesktop.Platform.GL.nvidia-575-64/x86_64/1.4
new logs, not much different than before: https://0x0.st/8Uo6.logvicious-gold•3mo ago
hmmm it still shows
Driver: undefined
for your nvidia GPU, that's odd
I do not have an nvidia GPU to test any of that though, but I suspect it's related to that, I imagine you want to use the Nvidia GPU for gaming, right?inland-turquoiseOP•3mo ago
generally speaking yes, but for this game I wouldn't care at all.
maybe it's because of flatpak's isolation mechanisms?
I could try with a "raw" version of Heroic, without the fancy flatpak bells & whistles
I noticed that it also struggles to load some shared libraries, like
libgamemodeauto.so
, even though it's installed in the system (both 64 & 32 bits versions)You don't have to do this manually, you can just run
flatpak update
& it'll pull in the drivers matching your system install
I don't think the Nvidia driver detection is the issue here, but you can run the following to confirm:
That should list your Nvidia GPU as an available rendererinland-turquoiseOP•3mo ago
inland-turquoiseOP•3mo ago
I'll try to run the .DEB version of Heroic, to see how it differs
(not for this command, but for the game itself)
Huh, the GPU is indeed missing there
What does
nvidia-smi
output?inland-turquoiseOP•3mo ago
it was also showing a problematic output... but as I said, this has nothing to do with the problem running that game. I've played many other games which do rely on 3d acceleration and it was fine. This one is a very old game which in turn already felt old when it was released.
I fixed the problems with the Nvidia drivers, but the game still presents the same problems: https://0x0.st/8UmB.log
it's much more likely related to the fact that it can't locate the
libgamemodeauto
library because it's not accessible for the flatpak apps (maybe it needs an extra runtime?). That library is already installed at a wide-system level, but it's not accessible for Heroic.it's much more likely related to the fact that it can't locate the libgamemodeauto library because it's not accessible for the flatpak apps (maybe it needs an extra runtime?). That library is already installed at a wide-system level, but it's not accessible for Heroic.GameMode is always installed in the Flatpak: I believe you're seeing it trying to load both 32-bit and 64-bit versions of the library, and one of those is always going to not load. Either way though, it's not causing any issues. If you're in doubt, you can disable GameMode for the game I can't reproduce this issue, the game runs fine here (also on an Optimus system). Could you uninstall the game, setup the alternative GOGDL binary again, install the game, and then just keep the GOGDL binary set while launching the game?
inland-turquoiseOP•3mo ago
that makes sense, I was peeking into the available files and found the library
going back to the original
godl
after installing gives me the same results u_u , the mouse pointer is not visible and it crashes when I switch to another desktop
same if I use the nightly version for all the steps
there's definitely some stuff on Wine/Proton's side (the crash after switching desktops), but I would not switch desktops had the mouse pointer been visible. So I guess this is a combination of different problemsvicious-gold•3mo ago
have you tried enabling gamescope? maybe it helps with that issue, I know it can help with things related to window placement and mouse in some cases
inland-turquoiseOP•2mo ago
didn't try, but I'm not sure it should be necessary. Regular Wine installations (outside Heroic) are fine, except for the huge inconvenience of not scaling up the game image
checked. no difference
I tried tweaking Gamescope's options too
I can confirm that the problem is mostly related to Heroic's proton version. I've experienced similar bugs related to the mouse pointer in other games (for example, Fallout), while non-proton wine does not present the same problem.
My workaround has been the following:
- Run the "Configure The Samaritan Paradox" entry instead of the game (can be selected next to the play button in the Heroic's UI), enforce windowed mode, with 4x scaling to ensure that the window is not too small (not anti-aliasing, but nearest neighbours, to keep the intended shapes for pixelated images).