Installer overwatch-manual

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:
- cache-updater: https://lutris.nyc3.cdn.digitaloceanspaces.com/games/overwatch/state-cache-update.sh
- setup: N/A:Select Battle.Net installer
- dxvkcache: https://lutris.nyc3.cdn.digitaloceanspaces.com/games/overwatch/Overwatch.tar.xz
game:
  arch: win64
  args: --exec="launch Pro"
  exe: drive_c/Program Files (x86)/Battle.net/Battle.net.exe
  prefix: $GAMEDIR
installer:
- task:
    arch: win64
    description: Creating 64bit Wine prefix.
    name: create_prefix
    prefix: $GAMEDIR
- extract:
    description: Extracting DXVK state cache
    dst: $GAMEDIR
    file: dxvkcache
- write_file:
    content: '#!/bin/bash

      date="$(wget --server-response --spider https://lutris.nyc3.cdn.digitaloceanspaces.com/games/overwatch/Overwatch.tar.xz
      2>&1 | sed -n "s/  Last-Modified: //p")"

      date="$(date -d "$date" +%s)"

      echo "$date" > ./state-cache-merge/.state-cache-timestamp'
    file: $GAMEDIR/timestamp.sh
- write_file:
    content: 'dxgi.nvapiHack = False

      [Overwatch.exe]

      dxvk.hud = compiler'
    file: $GAMEDIR/dxvk.conf
- merge:
    dst: $GAMEDIR/state-cache-merge
    src: cache-updater
- chmodx: $GAMEDIR/state-cache-merge/state-cache-update.sh
- chmodx: $GAMEDIR/timestamp.sh
- execute:
    file: $GAMEDIR/timestamp.sh
- move:
    dst: $CACHE
    src: $GAMEDIR/timestamp.sh
- task:
    app: arial
    arch: win64
    description: Installing Arial font...
    name: winetricks
    prefix: $GAMEDIR
    silent: true
- task:
    arch: win64
    description: Setting Windows 10 mode for Wine
    key: Version
    name: set_regedit
    path: HKEY_CURRENT_USER\Software\Wine
    prefix: $GAMEDIR
    value: win10
- task:
    name: winekill
    prefix: $GAMEDIR
- write_json:
    data:
      Client:
        GameLaunchWindowBehavior: '2'
        GameSearch:
          BackgroundSearch: 'true'
        HardwareAcceleration: 'false'
        Sound:
          Enabled: 'false'
        Streaming:
          StreamingEnabled: 'false'
    description: Writing a Battle.Net config file
    file: $GAMEDIR/drive_c/users/$USER/Application Data/Battle.net/Battle.net.config
- write_config:
    description: Enabling Borderless Windowed mode
    file: $GAMEDIR/drive_c/users/$USER/My Documents/Overwatch/Settings/Settings_v0.ini
    key: WindowMode
    section: Render.13
    value: '"1"'
- write_config:
    description: Switching to WEBM format for saving Highlights
    file: $GAMEDIR/drive_c/users/$USER/My Documents/Overwatch/Settings/Settings_v0.ini
    key: Type
    section: MovieExport.1
    value: '"1"'
- write_config:
    description: Disabling hardware acceleration for saving Highlights
    file: $GAMEDIR/drive_c/users/$USER/My Documents/Overwatch/Settings/Settings_v0.ini
    key: UseHardware
    section: MovieExport.1
    value: '"0"'
- write_file:
    content: hasseennewcinematic=True
    description: Adding a startup workaround for Hearthstone
    file: $GAMEDIR/drive_c/users/$USER/Local Settings/Application Data/Blizzard/Hearthstone/options.txt
- task:
    arch: win64
    description: 'Wine Staging: Enabling DXVA2'
    key: backend
    name: set_regedit
    path: HKEY_CURRENT_USER\Software\Wine\DXVA2
    prefix: $GAMEDIR
    value: va
- task:
    name: winekill
    prefix: $GAMEDIR
- task:
    arch: win64
    description: 'Installing Blizzard App. An installer will open.

      ------------------------------

      To progress, manually continue installation in that window.'
    exclude_processes: Battle.net.exe Agent.exe "Battle.net Helper.exe"
    executable: setup
    name: wineexec
- task:
    name: winekill
    prefix: $GAMEDIR
system:
  env:
    DXVK_CONFIG_FILE: $GAMEDIR/dxvk.conf
    DXVK_STATE_CACHE_PATH: $GAMEDIR
    STAGING_SHARED_MEMORY: 1
    __GL_SHADER_DISK_CACHE: 1
    __GL_SHADER_DISK_CACHE_PATH: $GAMEDIR
  exclude_processes: Agent.exe "Battle.net Helper.exe"
  manual_command: $GAMEDIR/state-cache-merge/state-cache-update.sh
wine:
  dxvk: true
  esync: true
  overrides:
    api-ms-win-crt-private-l1-1-0: n,b
    d3d12: disabled
    nvapi: disabled
    nvapi64: disabled
    ucrtbase: n,b
  version: lutris-4.20-x86_64
{
  "installer": [
    {
      "task": {
        "description": "Creating 64bit Wine prefix.",
        "name": "create_prefix",
        "prefix": "$GAMEDIR",
        "arch": "win64"
      }
    },
    {
      "extract": {
        "description": "Extracting DXVK state cache",
        "dst": "$GAMEDIR",
        "file": "dxvkcache"
      }
    },
    {
      "write_file": {
        "content": "#!/bin/bash\ndate=\"$(wget --server-response --spider https://lutris.nyc3.cdn.digitaloceanspaces.com/games/overwatch/Overwatch.tar.xz 2>&1 | sed -n \"s/  Last-Modified: //p\")\"\ndate=\"$(date -d \"$date\" +%s)\"\necho \"$date\" > ./state-cache-merge/.state-cache-timestamp",
        "file": "$GAMEDIR/timestamp.sh"
      }
    },
    {
      "write_file": {
        "content": "dxgi.nvapiHack = False\n[Overwatch.exe]\ndxvk.hud = compiler",
        "file": "$GAMEDIR/dxvk.conf"
      }
    },
    {
      "merge": {
        "src": "cache-updater",
        "dst": "$GAMEDIR/state-cache-merge"
      }
    },
    {
      "chmodx": "$GAMEDIR/state-cache-merge/state-cache-update.sh"
    },
    {
      "chmodx": "$GAMEDIR/timestamp.sh"
    },
    {
      "execute": {
        "file": "$GAMEDIR/timestamp.sh"
      }
    },
    {
      "move": {
        "src": "$GAMEDIR/timestamp.sh",
        "dst": "$CACHE"
      }
    },
    {
      "task": {
        "description": "Installing Arial font...",
        "arch": "win64",
        "name": "winetricks",
        "silent": true,
        "app": "arial",
        "prefix": "$GAMEDIR"
      }
    },
    {
      "task": {
        "description": "Setting Windows 10 mode for Wine",
        "name": "set_regedit",
        "path": "HKEY_CURRENT_USER\\Software\\Wine",
        "arch": "win64",
        "value": "win10",
        "key": "Version",
        "prefix": "$GAMEDIR"
      }
    },
    {
      "task": {
        "name": "winekill",
        "prefix": "$GAMEDIR"
      }
    },
    {
      "write_json": {
        "description": "Writing a Battle.Net config file",
        "data": {
          "Client": {
            "GameSearch": {
              "BackgroundSearch": "true"
            },
            "GameLaunchWindowBehavior": "2",
            "Streaming": {
              "StreamingEnabled": "false"
            },
            "HardwareAcceleration": "false",
            "Sound": {
              "Enabled": "false"
            }
          }
        },
        "file": "$GAMEDIR/drive_c/users/$USER/Application Data/Battle.net/Battle.net.config"
      }
    },
    {
      "write_config": {
        "description": "Enabling Borderless Windowed mode",
        "value": "\"1\"",
        "section": "Render.13",
        "file": "$GAMEDIR/drive_c/users/$USER/My Documents/Overwatch/Settings/Settings_v0.ini",
        "key": "WindowMode"
      }
    },
    {
      "write_config": {
        "description": "Switching to WEBM format for saving Highlights",
        "value": "\"1\"",
        "section": "MovieExport.1",
        "file": "$GAMEDIR/drive_c/users/$USER/My Documents/Overwatch/Settings/Settings_v0.ini",
        "key": "Type"
      }
    },
    {
      "write_config": {
        "description": "Disabling hardware acceleration for saving Highlights",
        "value": "\"0\"",
        "section": "MovieExport.1",
        "file": "$GAMEDIR/drive_c/users/$USER/My Documents/Overwatch/Settings/Settings_v0.ini",
        "key": "UseHardware"
      }
    },
    {
      "write_file": {
        "description": "Adding a startup workaround for Hearthstone",
        "content": "hasseennewcinematic=True",
        "file": "$GAMEDIR/drive_c/users/$USER/Local Settings/Application Data/Blizzard/Hearthstone/options.txt"
      }
    },
    {
      "task": {
        "description": "Wine Staging: Enabling DXVA2",
        "name": "set_regedit",
        "path": "HKEY_CURRENT_USER\\Software\\Wine\\DXVA2",
        "arch": "win64",
        "value": "va",
        "key": "backend",
        "prefix": "$GAMEDIR"
      }
    },
    {
      "task": {
        "name": "winekill",
        "prefix": "$GAMEDIR"
      }
    },
    {
      "task": {
        "description": "Installing Blizzard App. An installer will open.\n------------------------------\nTo progress, manually continue installation in that window.",
        "name": "wineexec",
        "exclude_processes": "Battle.net.exe Agent.exe \"Battle.net Helper.exe\"",
        "executable": "setup",
        "arch": "win64"
      }
    },
    {
      "task": {
        "name": "winekill",
        "prefix": "$GAMEDIR"
      }
    }
  ],
  "game": {
    "args": "--exec=\"launch Pro\"",
    "arch": "win64",
    "prefix": "$GAMEDIR",
    "exe": "drive_c/Program Files (x86)/Battle.net/Battle.net.exe"
  },
  "system": {
    "manual_command": "$GAMEDIR/state-cache-merge/state-cache-update.sh",
    "exclude_processes": "Agent.exe \"Battle.net Helper.exe\"",
    "env": {
      "__GL_SHADER_DISK_CACHE_PATH": "$GAMEDIR",
      "DXVK_STATE_CACHE_PATH": "$GAMEDIR",
      "__GL_SHADER_DISK_CACHE": 1,
      "STAGING_SHARED_MEMORY": 1,
      "DXVK_CONFIG_FILE": "$GAMEDIR/dxvk.conf"
    }
  },
  "wine": {
    "esync": true,
    "overrides": {
      "nvapi64": "disabled",
      "d3d12": "disabled",
      "api-ms-win-crt-private-l1-1-0": "n,b",
      "nvapi": "disabled",
      "ucrtbase": "n,b"
    },
    "version": "lutris-4.20-x86_64",
    "dxvk": true
  },
  "files": [
    {
      "cache-updater": "https://lutris.nyc3.cdn.digitaloceanspaces.com/games/overwatch/state-cache-update.sh"
    },
    {
      "setup": "N/A:Select Battle.Net installer"
    },
    {
      "dxvkcache": "https://lutris.nyc3.cdn.digitaloceanspaces.com/games/overwatch/Overwatch.tar.xz"
    }
  ]
}
Back to game