Installer forged-alliance-forever-steam-lobby

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/
description: This will install FAF Lobby v2021.12.0 and set up everything ready-to-play.
game_slug: forged-alliance-forever
gogslug: ''
humblestoreid: ''
installer_slug: forged-alliance-forever-steam-lobby
name: Forged Alliance Forever
notes: 'You''ll need SC: Forged Alliance downloaded in your Steam to follow this script.'
runner: linux
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------------------------------\n\
        Then 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/
slug: forged-alliance-forever-steam-lobby
steamid: null
version: Steam + Lobby
year: null
{
  "game_slug": "forged-alliance-forever",
  "version": "Steam + Lobby",
  "description": "This will install FAF Lobby v2021.12.0 and set up everything ready-to-play.",
  "notes": "You'll need SC: Forged Alliance downloaded in your Steam to follow this script.",
  "name": "Forged Alliance Forever",
  "year": null,
  "steamid": null,
  "gogslug": "",
  "humblestoreid": "",
  "runner": "linux",
  "slug": "forged-alliance-forever-steam-lobby",
  "installer_slug": "forged-alliance-forever-steam-lobby",
  "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\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/"
      }
    }
  }
}
Back to game