HGL
eastern-cyan

Game Mode not working with Linux Native games on Steam Deck

Enabling Game Mode seems to conflict with Linux Native installs from GOG. I did systemctl --user status gamemoded to verify if GameMode was running/ready, and it is. The game runs fine without GameMode, so I'm not looking for help there, but I'm wondering why the Linux Native version crashes with it turned on. Also, wouldn't it be preferred for it to be turned on, since it supposedly optimizes system performance? This is more for my edification, so I can troubleshoot in the future. Solution: https://discord.com/channels/812703221789097985/1192633658847264838/1192639510002020392
17 Replies
eastern-cyan
eastern-cyanOP2y ago
System Info:
CPU: 8x AMD Custom APU 0405
Memory: 15.53 GB (used: 3.42 GB)
GPUs:
GPU 0:
Name: Advanced Micro Devices, Inc. [AMD/ATI] undefined
IDs: D=1435 V=1002 SD=0123 SV=1002
Driver: amdgpu
OS: SteamOS 3.5.7 holo (linux)

The current system is a Steam Deck (model: OLED)
We are running inside a Flatpak container

Software Versions:
Heroic: 2.11.0 Kumachi
Legendary: 0.20.33 Undue Alarm
gogdl: 0.7.3
Nile: 1.0.0 Jonathan Joestar

Game Settings: {
"autoInstallDxvk": true,
"autoInstallVkd3d": true,
"preferSystemLibs": false,
"enableEsync": true,
"enableFsync": true,
"nvidiaPrime": false,
"enviromentOptions": [],
"wrapperOptions": [],
"showFps": false,
"targetExe": "/home/deck/Games/Heroic/Freedom Planet/game/run.sh",
"useGameMode": true,
"useSteamRuntime": false,
"language": "",
"wineVersion": {
"bin": "/home/deck/.local/share/Steam/compatibilitytools.d/GE-Proton8-25/proton",
"name": "Proton - GE-Proton8-25",
"type": "proton"
},
"winePrefix": "/home/deck/Games/Heroic/Prefixes/default"
}

Game launched at: Thu Jan 04 2024 17:03:45 GMT-0600 (Central Standard Time)

Launch Command: HEROIC_APP_NAME=1207667013 HEROIC_APP_RUNNER=gog HEROIC_APP_SOURCE=gog /app/bin/heroic/resources/app.asar.unpacked/build/bin/linux/gogdl launch "/home/deck/Games/Heroic/Freedom Planet" --override-exe "/home/deck/Games/Heroic/Freedom Planet/game/run.sh" 1207667013 --wrapper /app/bin/gamemoderun --platform linux

Game Log:
gamemodeauto:
dbus[210]: arguments to dbus_pending_call_block() were incorrect, assertion "pending != NULL" failed in file ../../dbus/dbus-pending-call.c line 766.
This is normally a bug in some application using the D-Bus library.

D-Bus not built with -rdynamic so unable to print a backtrace
Launch command: ['/app/bin/gamemoderun', '/home/deck/Games/Heroic/Freedom Planet/game/run.sh']
All processes exited
System Info:
CPU: 8x AMD Custom APU 0405
Memory: 15.53 GB (used: 3.42 GB)
GPUs:
GPU 0:
Name: Advanced Micro Devices, Inc. [AMD/ATI] undefined
IDs: D=1435 V=1002 SD=0123 SV=1002
Driver: amdgpu
OS: SteamOS 3.5.7 holo (linux)

The current system is a Steam Deck (model: OLED)
We are running inside a Flatpak container

Software Versions:
Heroic: 2.11.0 Kumachi
Legendary: 0.20.33 Undue Alarm
gogdl: 0.7.3
Nile: 1.0.0 Jonathan Joestar

Game Settings: {
"autoInstallDxvk": true,
"autoInstallVkd3d": true,
"preferSystemLibs": false,
"enableEsync": true,
"enableFsync": true,
"nvidiaPrime": false,
"enviromentOptions": [],
"wrapperOptions": [],
"showFps": false,
"targetExe": "/home/deck/Games/Heroic/Freedom Planet/game/run.sh",
"useGameMode": true,
"useSteamRuntime": false,
"language": "",
"wineVersion": {
"bin": "/home/deck/.local/share/Steam/compatibilitytools.d/GE-Proton8-25/proton",
"name": "Proton - GE-Proton8-25",
"type": "proton"
},
"winePrefix": "/home/deck/Games/Heroic/Prefixes/default"
}

Game launched at: Thu Jan 04 2024 17:03:45 GMT-0600 (Central Standard Time)

Launch Command: HEROIC_APP_NAME=1207667013 HEROIC_APP_RUNNER=gog HEROIC_APP_SOURCE=gog /app/bin/heroic/resources/app.asar.unpacked/build/bin/linux/gogdl launch "/home/deck/Games/Heroic/Freedom Planet" --override-exe "/home/deck/Games/Heroic/Freedom Planet/game/run.sh" 1207667013 --wrapper /app/bin/gamemoderun --platform linux

Game Log:
gamemodeauto:
dbus[210]: arguments to dbus_pending_call_block() were incorrect, assertion "pending != NULL" failed in file ../../dbus/dbus-pending-call.c line 766.
This is normally a bug in some application using the D-Bus library.

D-Bus not built with -rdynamic so unable to print a backtrace
Launch command: ['/app/bin/gamemoderun', '/home/deck/Games/Heroic/Freedom Planet/game/run.sh']
All processes exited
extended-salmon
extended-salmon2y ago
this is a native game? why is it using proton?
eastern-cyan
eastern-cyanOP2y ago
It's not. Doesn't even let me choose proton options. Those are just the global defaults
extended-salmon
extended-salmon2y ago
okay, so when you installed it did you check the box that says "use default options" or something similar?
eastern-cyan
eastern-cyanOP2y ago
I think I used the default options, but I chose the Linux installer And it's targeting the run.sh correctly, but the weird thing is useGameMode: true causes it to crash on startup Works fine without it
extended-salmon
extended-salmon2y ago
do you need use gamemode? a couple things to note: don't use proton by default, only a few games need it to work from heroic, even on a steam deck don't check the use default options button when installing a game, that box is terribly named i'm almost positive this wasn't installed correctly
eastern-cyan
eastern-cyanOP2y ago
Not to play, but I read that it optimizes the OS (probably by suspending unnecessary processes or something), so just curious if it's only for Wine/Proton
extended-salmon
extended-salmon2y ago
it only works for proton, i learned that today :]
eastern-cyan
eastern-cyanOP2y ago
Ah, that makes sense why it's causing problems And why it works on Proton-based installs
extended-salmon
extended-salmon2y ago
well, it only does something with proton being targeted
eastern-cyan
eastern-cyanOP2y ago
I'm new to the whole Wine ecosystem, and this was my last place to try to figure this out. The broader internet was of no help I appreciate the tip. Should I use Wine GE instead?
extended-salmon
extended-salmon2y ago
there are a lot of people here smarter than me typically, yes. it gives much better logs
eastern-cyan
eastern-cyanOP2y ago
Ah, cool More debugging info is always good
equal-jade
equal-jade2y ago
for a native game this doesnt matter.. those are all wine issues
extended-salmon
extended-salmon2y ago
I was doubting that it was a native game is all
equal-jade
equal-jade2y ago
Launch command: ['/app/bin/gamemoderun', '/home/deck/Games/Heroic/Freedom Planet/game/run.sh']
usually my suggestion is to actually run windows versions of these games rather than the linux builds there's often dependencies that the game was built against that can no longer be fulfilled, for native games game devs arent sitting around and updating their dependencies over time
eastern-cyan
eastern-cyanOP2y ago
Yeah, and it's not like these specific games are exactly new. Still, ProtonDB said the native client ran perfectly (which it seems to, once you run it through the Steam Overlay) Using the native client was more a flight of fancy so I didn't have to create a new wine prefix. And to your point, I could not get the naive version of Rogue Legacy to work at all, but the Windows version works with some tweaking.

Did you find this page helpful?