@frozen_byte said in FAF & Steam Deck:
Sorry, I didn't have time to tinker with this recently so I'm replying a bit late.
firstly, but not related to your error:
PROTON_NO_ESYNC should be used with PROTON_NO_FSYNC, so either enable or disable both at the same time.
Ok, I did try now one more time to add the NO_FSYNC as well, but as you mentioned, it had no effect on the error.
gamemoderun
is an application called gamemode from Feral Interactive, this should not apply to a steamdeck installation. If you are curious, have a look here: https://github.com/FeralInteractive/gamemode
Ok, it seems Steam Deck comes with that exact software pre-installed, which is why I had that command as well. I just didn't know it wasn't Steam Deck specific.
The Problem looks like the compat layer for DirectX 9 is broken somehow.
Have you tried to install the winetricks a second time? protontricks 9420 dlls d3dx9 xact
I had tried to play with these before but just in case, I had re-downloaded everything and installed the d3dx9 and xact using protontricks. No change.
Otherwise try the WINEDLLOVERRIDES="d3d9=n"
trick, as explained in the FAF wiki: https://wiki.faforever.com/en/Linux-Install
I think this is already the proton default, which is included in the dumped "run" script:
#!/bin/bash
#Run game or given command in environment
cd "/run/media/mmcblk0p1/steamapps/common/Supreme Commander Forged Alliance"
DEF_CMD=("/run/media/mmcblk0p1/steamapps/common/Supreme Commander Forged Alliance/bin/SupremeCommander.exe" "/nomovie" "/windowed" "1900" "1000")
PATH="/home/deck/.local/share/Steam/steamapps/common/Proton 7.0/dist/bin/:/usr/bin:/bin" \
TERM="xterm" \
WINEDEBUG="-all" \
WINEDLLPATH="/home/deck/.local/share/Steam/steamapps/common/Proton 7.0/dist/lib64//wine:/home/deck/.local/share/Steam/steamapps/common/Proton 7.0/dist/lib//wine" \
LD_LIBRARY_PATH="/home/deck/.local/share/Steam/ubuntu12_64/video/:/home/deck/.local/share/Steam/ubuntu12_32/video/:/home/deck/.local/share/Steam/steamapps/common/Proton 7.0/dist/lib64/:/home/deck/.local/share/Steam/steamapps/common/Proton 7.0/dist/lib/:/usr/lib/pressure-vessel/overrides/lib/x86_64-linux-gnu/aliases:/usr/lib/pressure-vessel/overrides/lib/i386-linux-gnu/aliases" \
WINEPREFIX="/home/deck/.local/share/Steam/steamapps/compatdata/9420/pfx/" \
SteamGameId="9420" \
SteamAppId="9420" \
WINEDLLOVERRIDES="steam.exe=b;dotnetfx35.exe=b;dotnetfx35setup.exe=b;beclient.dll=b,n;beclient_x64.dll=b,n;d3d11=n;d3d10core=n;d3d9=n;dxgi=n" \
STEAM_COMPAT_CLIENT_INSTALL_PATH="/home/deck/.local/share/Steam" \
WINE_LARGE_ADDRESS_AWARE="1" \
GST_PLUGIN_SYSTEM_PATH_1_0="/home/deck/.local/share/Steam/steamapps/common/Proton 7.0/dist/lib64/gstreamer-1.0:/home/deck/.local/share/Steam/steamapps/common/Proton 7.0/dist/lib/gstreamer-1.0" \
WINE_GST_REGISTRY_DIR="/home/deck/.local/share/Steam/steamapps/compatdata/9420/gstreamer-1.0/" \
MEDIACONV_AUDIO_DUMP_FILE="/home/deck/.local/share/Steam/steamapps/shadercache/9420/fozmediav1/audiov2.foz" \
MEDIACONV_AUDIO_TRANSCODED_FILE="/home/deck/.local/share/Steam/steamapps/shadercache/9420/transcoded_audio.foz" \
MEDIACONV_VIDEO_DUMP_FILE="/home/deck/.local/share/Steam/steamapps/shadercache/9420/fozmediav1/video.foz" \
MEDIACONV_VIDEO_TRANSCODED_FILE="/home/deck/.local/share/Steam/steamapps/shadercache/9420/transcoded_video.foz" \
"/home/deck/.local/share/Steam/steamapps/common/Proton 7.0/dist/bin/wine64" c:\\windows\\system32\\steam.exe "${@:-${DEF_CMD[@]}}"
Also have you browsed the protonDB thread? You may find some help there: https://www.protondb.com/app/9420
Yes, I did mention that I had already checked that page out. The only mentions are that the game is completely playable, which I can also confirm and the only side remark about FAF was: "Didn't try multiplayer, because the multiplayer is dead for this game, only via Forged Alliance Forever client, which is a separate topic to launch on SteamDeck. "
As a last resort, you may try to get the voodoo wrapper running
I could but I have a feeling I just don't feel motivated enough as I would need to install a bunch of stuff using the OS tools, which in turn means I would need to mount rootfs with write mode to make modifications.
On top of that, all changes will reset on every update so either I would have to opt out of updates or create scripts which will re-install everything back after every update. And finally there is no guarantee it will even help
Anyway, thanks for the follow-up - I will keep looking for solutions. While this game might not be best played with the Deck's small screen but it runs perfectly fine docked at least on 1080p so it would be really nice to be able to plug the Deck to a dock and start playing vs. boot up my power hungry, old and noisy desktop PC for this.