Installer forged-alliance-forever-steam-lobby
This script is for reference only and can't be directly used to install the game in the Lutris client. To install the game, download the full script.
files: - lobby: https://github.com/FAForever/downlords-faf-client/releases/download/v2021.12.0/dfc_unix_2021_12_0.tar.gz - sttngs: http://178.251.24.182/faf/client.prefs.tar.xz - openjdk15: https://download.java.net/java/GA/jdk15.0.2/0d1cfde4252546c6931946de8db48ee2/7/GPL/openjdk-15.0.2_linux-x64_bin.tar.gz game: exe: lobby/faf-client installer: - input_menu: description: "Please follow these steps before you proceed.\n------------------------------\n\ - In your Steam, make sure Steamplay for all games is enabled - In the properties\ \ of SC Forged Alliance, enter this as start arguments: PROTON_NO_ESYNC=1 PROTON_NO_FSYNC=1\n\ \ PROTON_DUMP_DEBUG_COMMANDS=1 %command%\n- In the Compatibility tab, select\ \ Proton 5.0-10 - Start the game once. Feel free to configure your graphic settings\ \ now.\n------------------------------\nThen choose where the lobby should create\ \ its configuration files:'\n" options: - ho: Your home directory (Default) - gd: Directory specified by you (removes and symlinks .faforever folder) preselect: ho - extract: dst: $GAMEDIR/lobby/ file: lobby format: tgz - extract: dst: $GAMEDIR/openjdk15/ file: openjdk15 format: tgz - chmodx: $GAMEDIR/lobby/faf-client - chmodx: $GAMEDIR/lobby/natives/faf-uid - write_file: content: '#!/bin/bash cp "/tmp/proton_$USER/run" "$GAMEDIR/" if [[ $INPUT == "gd" ]]; then cd "$HOME" rm -r .faforever mkdir "$GAMEDIR/lobbydata" && sleep 1 && ln -s "$GAMEDIR/lobbydata" "$HOME/.faforever" fi' description: Setting up start script & config directories file: $GAMEDIR/.installscript1.sh - chmodx: $GAMEDIR/.installscript1.sh - execute: file: $GAMEDIR/.installscript1.sh - extract: dst: $HOME/.faforever/ file: sttngs format: txz - chmodx: $GAMEDIR/run - write_file: content: "#!/bin/bash\ncd \"$GAMEDIR/\"\nvarpref=$(sed '11!d' run | sed -e 's/\\\ tWINEPREFIX=//g' | awk '{print $1}')\nvarinst=$(sed '4!d' run | sed -e 's/cd\ \ //g' | awk '{print $1}') # Don't ask, it's hideous\nsed -i 's|\"installationPath\"\ : \"\",|\"installationPath\": '${varinst}' Commander Forged Alliance\",|g' \"\ $HOME/.faforever/client.prefs\" # Awful, yet working. Look at it like a piece\ \ of modern art\nsed -i 's|\"executableDecorator\": \"\"|\"executableDecorator\"\ : \"$GAMEDIR/run \\\\\"%s\\\\\"\"|g' \"$HOME/.faforever/client.prefs\"\nsed\ \ -i 's|\"vaultBaseDirectory\": \"\",|\"vaultBaseDirectory\": \"$HOME/.faforever/user/My\ \ Games/Gas Powered Games/Supreme Commander Forged Alliance\",|g' \"$HOME/.faforever/client.prefs\"\ \ \nsed -i 's|\"preferencesFile\": \"\",|\"preferencesFile\": '${varpref%?}'drive_c/users/steamuser/Local\ \ Settings/Application Data/Gas Powered Games/Supreme Commander Forged Alliance/Game.prefs\"\ ,|g' \"$HOME/.faforever/client.prefs\" \n" description: Configure lobby settings file: $GAMEDIR/.installscript2.sh - chmodx: $GAMEDIR/.installscript2.sh - execute: file: $GAMEDIR/.installscript2.sh system: env: INSTALL4J_JAVA_HOME: $GAMEDIR/openjdk15/
{ "files": [ { "lobby": "https://github.com/FAForever/downlords-faf-client/releases/download/v2021.12.0/dfc_unix_2021_12_0.tar.gz" }, { "sttngs": "http://178.251.24.182/faf/client.prefs.tar.xz" }, { "openjdk15": "https://download.java.net/java/GA/jdk15.0.2/0d1cfde4252546c6931946de8db48ee2/7/GPL/openjdk-15.0.2_linux-x64_bin.tar.gz" } ], "game": { "exe": "lobby/faf-client" }, "installer": [ { "input_menu": { "description": "Please follow these steps before you proceed.\n------------------------------\n- In your Steam, make sure Steamplay for all games is enabled - In the properties of SC Forged Alliance, enter this as start arguments: PROTON_NO_ESYNC=1 PROTON_NO_FSYNC=1\n PROTON_DUMP_DEBUG_COMMANDS=1 %command%\n- In the Compatibility tab, select Proton 5.0-10 - Start the game once. Feel free to configure your graphic settings now.\n------------------------------\nThen choose where the lobby should create its configuration files:'\n", "options": [ { "ho": "Your home directory (Default)" }, { "gd": "Directory specified by you (removes and symlinks .faforever folder)" } ], "preselect": "ho" } }, { "extract": { "dst": "$GAMEDIR/lobby/", "file": "lobby", "format": "tgz" } }, { "extract": { "dst": "$GAMEDIR/openjdk15/", "file": "openjdk15", "format": "tgz" } }, { "chmodx": "$GAMEDIR/lobby/faf-client" }, { "chmodx": "$GAMEDIR/lobby/natives/faf-uid" }, { "write_file": { "content": "#!/bin/bash\ncp \"/tmp/proton_$USER/run\" \"$GAMEDIR/\"\nif [[ $INPUT == \"gd\" ]]; then\ncd \"$HOME\"\nrm -r .faforever\nmkdir \"$GAMEDIR/lobbydata\" && sleep 1 && ln -s \"$GAMEDIR/lobbydata\" \"$HOME/.faforever\"\nfi", "description": "Setting up start script & config directories", "file": "$GAMEDIR/.installscript1.sh" } }, { "chmodx": "$GAMEDIR/.installscript1.sh" }, { "execute": { "file": "$GAMEDIR/.installscript1.sh" } }, { "extract": { "dst": "$HOME/.faforever/", "file": "sttngs", "format": "txz" } }, { "chmodx": "$GAMEDIR/run" }, { "write_file": { "content": "#!/bin/bash\ncd \"$GAMEDIR/\"\nvarpref=$(sed '11!d' run | sed -e 's/\\tWINEPREFIX=//g' | awk '{print $1}')\nvarinst=$(sed '4!d' run | sed -e 's/cd //g' | awk '{print $1}') # Don't ask, it's hideous\nsed -i 's|\"installationPath\": \"\",|\"installationPath\": '${varinst}' Commander Forged Alliance\",|g' \"$HOME/.faforever/client.prefs\" # Awful, yet working. Look at it like a piece of modern art\nsed -i 's|\"executableDecorator\": \"\"|\"executableDecorator\": \"$GAMEDIR/run \\\\\"%s\\\\\"\"|g' \"$HOME/.faforever/client.prefs\"\nsed -i 's|\"vaultBaseDirectory\": \"\",|\"vaultBaseDirectory\": \"$HOME/.faforever/user/My Games/Gas Powered Games/Supreme Commander Forged Alliance\",|g' \"$HOME/.faforever/client.prefs\" \nsed -i 's|\"preferencesFile\": \"\",|\"preferencesFile\": '${varpref%?}'drive_c/users/steamuser/Local Settings/Application Data/Gas Powered Games/Supreme Commander Forged Alliance/Game.prefs\",|g' \"$HOME/.faforever/client.prefs\" \n", "description": "Configure lobby settings", "file": "$GAMEDIR/.installscript2.sh" } }, { "chmodx": "$GAMEDIR/.installscript2.sh" }, { "execute": { "file": "$GAMEDIR/.installscript2.sh" } } ], "system": { "env": { "INSTALL4J_JAVA_HOME": "$GAMEDIR/openjdk15/" } } }