FAForever Forums
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Login

    FAF & Steam Deck

    Scheduled Pinned Locked Moved FAF support (client and account issues)
    21 Posts 9 Posters 2.9k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Ctrl-KC Offline
      Ctrl-K
      last edited by

      @Brutus5000 let me guess... factorio?

      “Be a yardstick of quality. Some people aren’t used to an environment where excellence is expected.”
      — Steve Jobs.
      My UI Mods
      Support me

      1 Reply Last reply Reply Quote 0
      • Brutus5000B Offline
        Brutus5000 FAF Server Admin
        last edited by

        I just finished Thief (2014). Probably Tomb Raider (2013) next. FIFA also works great.

        "Nerds have a really complicated relationship with change: Change is awesome when WE'RE the ones doing it. As soon as change is coming from outside of us it becomes untrustworthy and it threatens what we think of is the familiar."
        – Benno Rice

        1 Reply Last reply Reply Quote 0
        • H-masterH Offline
          H-master @Brutus5000
          last edited by

          @brutus5000 said in FAF & Steam Deck:

          My Steam Deck is not intended to be used for RTS @Sheikah .

          Also not for checking out replays on the go?

          Check out my maps here:

          Madness 1 - 10

          https://forum.faforever.com/topic/480/h-master-s-maps

          J 1 Reply Last reply Reply Quote 0
          • J Offline
            JazzFunkNoob @H-master
            last edited by

            @h-master Now that is sweaty af!

            H-masterH 1 Reply Last reply Reply Quote 0
            • T Offline
              TinHammer @Frozen_byte
              last edited by

              @frozen_byte I have tried several combinations but ended up with:

              PROTON_NO_ESYNC=1 PROTON_DUMP_DEBUG_COMMANDS=1 %command% /nomovie  /windowed 1900 1000
              

              From your example I tested with the gamemoderun addition, but it didn't change anything.

              With this setup you will get black screen on first launch but if you hit enter the profile creation window will pop up. With your options the videos play without problems but either way this doesn't seem to affect the end result.

              As for FAF in Steam, I use:

              INSTALL4J_JAVA_HOME="/home/deck/.local/share/jdk-latest" %command%
              

              Same here, I tried adding the gamemoderun before the %command% but it did not seem to affect anything.

              I did also try to launch FAF from terminal instead of Steam but it made no difference, unsurprisingly.

              As for FAF settings, I have the following:

              Game Location

              /var/run/media/mmcblk0p1/steamapps/common/Supreme Commander Forged Alliance
              

              So the game is sitting on the SD card. I also tried it earlier from the SSD but I didn't get it to work then either.

              Command Line Format for Executables

              /home/deck/Apps/FAF/run_fa.sh "%s"
              

              I tried adding the gamemoderun here too - no change. Also I have tried moving the /nomovie and /windowed 1900 1000 after the "%s" here in case it was causing problems but that too didn't seem to help.

              The ICE adapter window pops up when FAF is trying to launch the game, but I end up with....

              109d23d6-bf2b-49ed-bf28-9b56c335a4b0-image.png

              As I was writing this and clicking around while the Direct3D popup was still active, I got another window to pop up:

              61ab336e-a388-4fe2-811b-7763bc7f2201-image.png

              I have no idea if this helps at all.

              I also checked the FAF log, but it seems to simply end to:

              warning: GAL Exception: file : c:\work\rts\main\code\src\libs\gpggal\DeviceD3D9.cpp(189)
                       error: unable to create device
              warning: GAL Exception: file : c:\work\rts\main\code\src\libs\gpggal\DeviceD3D9.cpp(189)
                       error: unable to create device
              

              Any suggestions I could try?
              I take it that you are actually able to run FAF without problems on your Deck?

              I have not changed the default proton settings so currently I'm using the default 7.0-3. The Deck itself is on the preview update channel.

              Frozen_byteF 1 Reply Last reply Reply Quote 0
              • H-masterH Offline
                H-master @JazzFunkNoob
                last edited by

                @balanceslavenoob said in FAF & Steam Deck:

                @h-master Now that is sweaty af!

                That’s what I thought 🙂

                Check out my maps here:

                Madness 1 - 10

                https://forum.faforever.com/topic/480/h-master-s-maps

                1 Reply Last reply Reply Quote 0
                • Frozen_byteF Offline
                  Frozen_byte @TinHammer
                  last edited by Frozen_byte

                  @tinhammer
                  Thanks for your informative post.

                  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.
                  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

                  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
                  Otherwise try the WINEDLLOVERRIDES="d3d9=n" trick, as explained in the FAF wiki: https://wiki.faforever.com/en/Linux-Install

                  Also have you browsed the protonDB thread? You may find some help there: https://www.protondb.com/app/9420

                  As a last resort, you may try to get the voodoo wrapper running 😕

                  T 1 Reply Last reply Reply Quote 0
                  • T Offline
                    TinHammer @Frozen_byte
                    last edited by

                    @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.

                    1 Reply Last reply Reply Quote 0
                    • O Offline
                      Ossitech
                      last edited by

                      I managed to get it working on my Steam Deck with the following steps
                      but if you are not familiar with the desktop mode and the basics of arch linux it will be a bit hard.

                      some of the commands used are not available by default on the steam deck.
                      If you already built an AUR package successfully you can skip these steps.
                      But keep in mind that some of these steps can become necessary again after a system update.

                      To get it all working you need to run these commands:

                      Setup a Password for the deck user with the passwd command:
                      passwd
                      disable the read only file system
                      sudo steamos-readonly disable
                      Setup pacman-keyring so you can install packages
                      sudo pacman-keyring --init
                      sudo pacman-keyring --populate
                      Install the needed packages for AUR
                      sudo pacman -S --needed base-devel

                      Now you can install FAF

                      Switch to Desktop mode.
                      Install Supreme Commander Forged Alliance via Steam and go to properties and use the following launch options:

                      PROTON_NO_ESYNC=1 PROTON_NO_FSYNC=1 PROTON_DUMP_DEBUG_COMMANDS=1 %command%

                      In compatibility settings select Proton Version 5.0-10.

                      Then start the Game via steam.
                      This creates a file called "run" in the location /tmp/proton_deck/run
                      "deck" is the default name of the user. Change it if your user has a different name.
                      copy this file to a location where you can find it later. I created a directory called "faf" in my home directory for this and put it there.

                      then install downlords faf client:
                      to install it, download the client with git clone

                      git clone https://aur.archlinux.org/downlords-faf-client.git

                      then navigate into the downloaded folder with

                      cd downlords-faf-client

                      and run

                      makepkg -si

                      after this you can search for "faf" in your start menu and launch the program.
                      Log in with your faf account and go to settings.
                      Go to "Forged Alliance Forever" and set the start command format to the path to your previously copied run file. So for me it is /home/deck/faf/run
                      add a space and a "%s" to that path so it looks like this:
                      /home/deck/faf/run "%s"

                      Now you should be able to start a Match via FAF.
                      Some people also changed a specific .dll file in the games bin folder to fix some graphical issues but I did not find a reason for this at least for now.
                      You can find it inside this tutorial for setting up FAF on linux: https://wiki.faforever.com/en/Linux-Install

                      1 Reply Last reply Reply Quote 2
                      • Brutus5000B Offline
                        Brutus5000 FAF Server Admin
                        last edited by

                        I guess this setup will break with every update as all pacman installs will get wiped.

                        "Nerds have a really complicated relationship with change: Change is awesome when WE'RE the ones doing it. As soon as change is coming from outside of us it becomes untrustworthy and it threatens what we think of is the familiar."
                        – Benno Rice

                        O 1 Reply Last reply Reply Quote 2
                        • O Offline
                          Ossitech @Brutus5000
                          last edited by

                          @brutus5000
                          Thats true but you can make a script out of this and be up and running very quickly again.

                          I created one for me and it works well.

                          1 Reply Last reply Reply Quote 1
                          • Brutus5000B Offline
                            Brutus5000 FAF Server Admin
                            last edited by Brutus5000

                            How do you run makepkg -si with no PGKBUILD file? Did you write one on your own?

                            "Nerds have a really complicated relationship with change: Change is awesome when WE'RE the ones doing it. As soon as change is coming from outside of us it becomes untrustworthy and it threatens what we think of is the familiar."
                            – Benno Rice

                            O 1 Reply Last reply Reply Quote 0
                            • O Offline
                              Ossitech @Brutus5000
                              last edited by

                              @brutus5000 there is a pkgbuild file inside the AUR repo
                              https://aur.archlinux.org/downlords-faf-client.git

                              1 Reply Last reply Reply Quote 0
                              • Brutus5000B Offline
                                Brutus5000 FAF Server Admin
                                last edited by

                                Oh sorry, I didn't notice that this was not the official FAF repository

                                "Nerds have a really complicated relationship with change: Change is awesome when WE'RE the ones doing it. As soon as change is coming from outside of us it becomes untrustworthy and it threatens what we think of is the familiar."
                                – Benno Rice

                                1 Reply Last reply Reply Quote 1
                                • R RagingWolfRaven referenced this topic on
                                • First post
                                  Last post