Installer wuthering-waves-official-launcher

files:
- wuwaclient:
    filename: WutheringWaves_overseas _setup_2.5.1.0.exe
    url: https://mirrors-package-mc.aki-game.net/client/download/20260226123849_pEliMFQ9eQKYg8YAdw/WutheringWaves_overseas_setup_2.5.1.0.exe
game:
  arch: win64
  exe: $GAMEDIR/drive_c/Program Files/Wuthering Waves/launcher.exe
  prefix: $GAMEDIR
installer:
- task:
    description: Creating Wine Bottle, please wait...
    install_gecko: false
    install_mono: false
    name: create_prefix
    prefix: $GAMEDIR
- task:
    app: corefonts
    description: 'Winetricks: Installing "corefonts"'
    name: winetricks
    silent: true
- task:
    app: win8
    description: 'Winetricks: Set Windows version to "win8"'
    name: winetricks
    silent: true
- task:
    description: Installing 'Wuthering Waves Launcher'. Don't start the game after
      installation, just exit.
    executable: wuwaclient
    name: wineexec
- write_file:
    content: "#!/usr/bin/env bash\n\n# Base directory where version directories reside\n\
      base_dir=$GAME_DIRECTORY/drive_c/Program\\ Files/Wuthering\\ Waves\n\n# Check\
      \ if bbe is installed\nif ! command -v bbe &> /dev/null; then\n    echo \"Error:\
      \ bbe is not installed. Please install bbe and try again.\"\n    exit 1\nfi\n\
      \n# Auto-detect the latest version directory (assumes version directories match\
      \ the pattern X.Y.Z.W)\nversion_dir=$(find \"$base_dir\" -maxdepth 1 -type d\
      \ -name \"[0-9]*.[0-9]*.[0-9]*.[0-9]*\" | sort -V | tail -n1)\n\nif [ -z \"\
      $version_dir\" ]; then\n    echo \"No version directory found in '$base_dir'.\"\
      \n    exit 1\nfi\n\necho \"Using version directory: $version_dir\"\ncd \"$version_dir\"\
      \ || { echo \"Failed to change directory to $version_dir\"; exit 1; }\n\n# Check\
      \ if the DLL still contains the original pattern\nif ! grep -a -q $'\\x12AllowsTransparency'\
      \ launcher_main.dll; then\n    echo \"launcher_main.dll is already patched or\
      \ does not contain the expected pattern.\"\n    exit 0\nfi\n\n# Backup the original\
      \ file and apply the patch using bbe\nmv launcher_main.dll launcher_main.dll.bak\n\
      bbe -e \"s/\\x12AllowsTransparency/\\x09IsEnabled\\x1bA\\x00\\x03AAAAA/\" launcher_main.dll.bak\
      \ > launcher_main.dll\n\necho \"Patch applied successfully.\"\n"
    file: $GAMEDIR/drive_c/Program Files/Wuthering Waves/webview2-workaround.sh
- execute:
    args: +x "$GAMEDIR/drive_c/Program Files/Wuthering Waves/webview2-workaround.sh"
    description: 'Workaround: disable transparency in ''launcher_main.dll'''
    file: chmod
require-binaries: bbe
system:
  env:
    STEAMDECK: '1'
  prelaunch_command: '''$GAMEDIR/drive_c/Program Files/Wuthering Waves/webview2-workaround.sh'''
  prelaunch_wait: true
description: Installs the Official Launcher for Wuthering Waves
game_slug: wuthering-waves
gogslug: ''
humblestoreid: ''
installer_slug: wuthering-waves-official-launcher
name: Wuthering Waves
notes: "The recent launcher is based on WebView2 (Microsoft Edge something) and as\
  \ described on \"https://codeberg.org/mkrsym1/jadeite/issues/69\" the launcher window\
  \ is invisible after a regular installation. So this installer script runs workaround\
  \ to fix this problem. \r\nPlease notice:\r\n- The mentioned workaround needs to\
  \ be reapplied after a launcher update. To automate this Lutris run a prelaunch\
  \ script before the game launcher is initialized. \r\n- If the launcher window does\
  \ not open after an automatic update, completely exit the game and restart it with\
  \ Lutris to trigger the fix.\r\n- The script requires \"bbe\" to be installed on\
  \ the system."
runner: wine
script:
  files:
  - wuwaclient:
      filename: WutheringWaves_overseas _setup_2.5.1.0.exe
      url: https://mirrors-package-mc.aki-game.net/client/download/20260226123849_pEliMFQ9eQKYg8YAdw/WutheringWaves_overseas_setup_2.5.1.0.exe
  game:
    arch: win64
    exe: $GAMEDIR/drive_c/Program Files/Wuthering Waves/launcher.exe
    prefix: $GAMEDIR
  installer:
  - task:
      description: Creating Wine Bottle, please wait...
      install_gecko: false
      install_mono: false
      name: create_prefix
      prefix: $GAMEDIR
  - task:
      app: corefonts
      description: 'Winetricks: Installing "corefonts"'
      name: winetricks
      silent: true
  - task:
      app: win8
      description: 'Winetricks: Set Windows version to "win8"'
      name: winetricks
      silent: true
  - task:
      description: Installing 'Wuthering Waves Launcher'. Don't start the game after
        installation, just exit.
      executable: wuwaclient
      name: wineexec
  - write_file:
      content: "#!/usr/bin/env bash\n\n# Base directory where version directories\
        \ reside\nbase_dir=$GAME_DIRECTORY/drive_c/Program\\ Files/Wuthering\\ Waves\n\
        \n# Check if bbe is installed\nif ! command -v bbe &> /dev/null; then\n  \
        \  echo \"Error: bbe is not installed. Please install bbe and try again.\"\
        \n    exit 1\nfi\n\n# Auto-detect the latest version directory (assumes version\
        \ directories match the pattern X.Y.Z.W)\nversion_dir=$(find \"$base_dir\"\
        \ -maxdepth 1 -type d -name \"[0-9]*.[0-9]*.[0-9]*.[0-9]*\" | sort -V | tail\
        \ -n1)\n\nif [ -z \"$version_dir\" ]; then\n    echo \"No version directory\
        \ found in '$base_dir'.\"\n    exit 1\nfi\n\necho \"Using version directory:\
        \ $version_dir\"\ncd \"$version_dir\" || { echo \"Failed to change directory\
        \ to $version_dir\"; exit 1; }\n\n# Check if the DLL still contains the original\
        \ pattern\nif ! grep -a -q $'\\x12AllowsTransparency' launcher_main.dll; then\n\
        \    echo \"launcher_main.dll is already patched or does not contain the expected\
        \ pattern.\"\n    exit 0\nfi\n\n# Backup the original file and apply the patch\
        \ using bbe\nmv launcher_main.dll launcher_main.dll.bak\nbbe -e \"s/\\x12AllowsTransparency/\\\
        x09IsEnabled\\x1bA\\x00\\x03AAAAA/\" launcher_main.dll.bak > launcher_main.dll\n\
        \necho \"Patch applied successfully.\"\n"
      file: $GAMEDIR/drive_c/Program Files/Wuthering Waves/webview2-workaround.sh
  - execute:
      args: +x "$GAMEDIR/drive_c/Program Files/Wuthering Waves/webview2-workaround.sh"
      description: 'Workaround: disable transparency in ''launcher_main.dll'''
      file: chmod
  require-binaries: bbe
  system:
    env:
      STEAMDECK: '1'
    prelaunch_command: '''$GAMEDIR/drive_c/Program Files/Wuthering Waves/webview2-workaround.sh'''
    prelaunch_wait: true
slug: wuthering-waves-official-launcher
steamid: 3513350
version: Official Launcher
year: 2024
{
  "game_slug": "wuthering-waves",
  "version": "Official Launcher",
  "description": "Installs the Official Launcher for Wuthering Waves",
  "notes": "The recent launcher is based on WebView2 (Microsoft Edge something) and as described on \"https://codeberg.org/mkrsym1/jadeite/issues/69\" the launcher window is invisible after a regular installation. So this installer script runs workaround to fix this problem. \r\nPlease notice:\r\n- The mentioned workaround needs to be reapplied after a launcher update. To automate this Lutris run a prelaunch script before the game launcher is initialized. \r\n- If the launcher window does not open after an automatic update, completely exit the game and restart it with Lutris to trigger the fix.\r\n- The script requires \"bbe\" to be installed on the system.",
  "name": "Wuthering Waves",
  "year": 2024,
  "steamid": 3513350,
  "gogslug": "",
  "humblestoreid": "",
  "runner": "wine",
  "slug": "wuthering-waves-official-launcher",
  "installer_slug": "wuthering-waves-official-launcher",
  "script": {
    "files": [
      {
        "wuwaclient": {
          "filename": "WutheringWaves_overseas _setup_2.5.1.0.exe",
          "url": "https://mirrors-package-mc.aki-game.net/client/download/20260226123849_pEliMFQ9eQKYg8YAdw/WutheringWaves_overseas_setup_2.5.1.0.exe"
        }
      }
    ],
    "game": {
      "arch": "win64",
      "exe": "$GAMEDIR/drive_c/Program Files/Wuthering Waves/launcher.exe",
      "prefix": "$GAMEDIR"
    },
    "installer": [
      {
        "task": {
          "description": "Creating Wine Bottle, please wait...",
          "install_gecko": false,
          "install_mono": false,
          "name": "create_prefix",
          "prefix": "$GAMEDIR"
        }
      },
      {
        "task": {
          "app": "corefonts",
          "description": "Winetricks: Installing \"corefonts\"",
          "name": "winetricks",
          "silent": true
        }
      },
      {
        "task": {
          "app": "win8",
          "description": "Winetricks: Set Windows version to \"win8\"",
          "name": "winetricks",
          "silent": true
        }
      },
      {
        "task": {
          "description": "Installing 'Wuthering Waves Launcher'. Don't start the game after installation, just exit.",
          "executable": "wuwaclient",
          "name": "wineexec"
        }
      },
      {
        "write_file": {
          "content": "#!/usr/bin/env bash\n\n# Base directory where version directories reside\nbase_dir=$GAME_DIRECTORY/drive_c/Program\\ Files/Wuthering\\ Waves\n\n# Check if bbe is installed\nif ! command -v bbe &> /dev/null; then\n    echo \"Error: bbe is not installed. Please install bbe and try again.\"\n    exit 1\nfi\n\n# Auto-detect the latest version directory (assumes version directories match the pattern X.Y.Z.W)\nversion_dir=$(find \"$base_dir\" -maxdepth 1 -type d -name \"[0-9]*.[0-9]*.[0-9]*.[0-9]*\" | sort -V | tail -n1)\n\nif [ -z \"$version_dir\" ]; then\n    echo \"No version directory found in '$base_dir'.\"\n    exit 1\nfi\n\necho \"Using version directory: $version_dir\"\ncd \"$version_dir\" || { echo \"Failed to change directory to $version_dir\"; exit 1; }\n\n# Check if the DLL still contains the original pattern\nif ! grep -a -q $'\\x12AllowsTransparency' launcher_main.dll; then\n    echo \"launcher_main.dll is already patched or does not contain the expected pattern.\"\n    exit 0\nfi\n\n# Backup the original file and apply the patch using bbe\nmv launcher_main.dll launcher_main.dll.bak\nbbe -e \"s/\\x12AllowsTransparency/\\x09IsEnabled\\x1bA\\x00\\x03AAAAA/\" launcher_main.dll.bak > launcher_main.dll\n\necho \"Patch applied successfully.\"\n",
          "file": "$GAMEDIR/drive_c/Program Files/Wuthering Waves/webview2-workaround.sh"
        }
      },
      {
        "execute": {
          "args": "+x \"$GAMEDIR/drive_c/Program Files/Wuthering Waves/webview2-workaround.sh\"",
          "description": "Workaround: disable transparency in 'launcher_main.dll'",
          "file": "chmod"
        }
      }
    ],
    "require-binaries": "bbe",
    "system": {
      "env": {
        "STEAMDECK": "1"
      },
      "prelaunch_command": "'$GAMEDIR/drive_c/Program Files/Wuthering Waves/webview2-workaround.sh'",
      "prelaunch_wait": true
    }
  }
}
Back to game