Installer league-of-legends-riot-client-blitzgg-

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.

custom-name: League of Legends + Blitz.gg Overlay
files:
- lol_installer: https://lol.secure.dyn.riotcdn.net/channels/public/x/installer/current/live.na.exe
- overlay_installer:
    filename: blitz_install.exe
    url: https://dl.blitz.gg/download/windows
game:
  args: /trustlevel:0x20000 LeagueClient.exe
  exe: $GAMEDIR/drive_c/windows/system32/runas.exe
  prefix: $GAMEDIR
  working_dir: $GAMEDIR/drive_c/Riot Games/League of Legends
installer:
- task:
    arch: win32
    description: Creating Wine prefix
    name: create_prefix
    prefix: $GAMEDIR
- task:
    app: d3dcompiler_43 d3dx9
    arch: win32
    description: Installing D9VK Dependencies
    name: winetricks
    prefix: $GAMEDIR
- task:
    app: dotnet472
    arch: win32
    description: Installing .NET Framework. (4.7.2)
    name: winetricks
    prefix: $GAMEDIR
- move:
    dst: $GAMEDIR/drive_c/users/Public/Documents
    src: overlay_installer
- input_menu:
    description: 'Choose the game''s language:'
    id: LOCALE
    options:
    - cs_CZ: "\u010Ce\u0161tina"
    - en_AU: English AUS
    - en_GB: English U.K.
    - en_US: English U.S.
    - fr_FR: "Fran\xE7ais"
    - de_DE: Deutsch
    - es_ES: "Espa\xF1ol"
    - es_MX: "Espa\xF1ol Mexicano"
    - it_IT: Italiano
    - ja_JP: "\u65E5\u672C\u8A9E"
    - hu_HU: Magyar
    - pl_PL: Polski
    - pt_BR: "Portugu\xEAs do Brasil"
    - ro_RO: Romanian
    - ru_RU: "\u0440\u0443\u0441\u0441\u043A\u0438\u0439"
    - tr_TR: "T\xFCrk\xE7e"
    preselect: en_US
- input_menu:
    description: 'Choose the game''s server region:'
    id: REGION
    options:
    - BR: Brazil
    - EUNE: Europe Nordic & East
    - EUW: Europe West
    - LAN: Latin America North
    - LAS: Latin America South
    - NA: North America
    - OCE: Oceania
    - RU: Russia
    - TR: Turkey
    - JP: Japan
    - SEA: South East Asia
    preselect: NA
- task:
    app: win7
    arch: win32
    description: Switching to Windows 7 for Blitz Install
    name: winetricks
    prefix: $GAMEDIR
- task:
    arch: win32
    args: /trustlevel:0x20000 "C:\users\Public\Documents\blitz_install.exe"
    description: Installing Blitz.gg Overlay
    executable: $GAMEDIR/drive_c/windows/system32/runas.exe
    name: wineexec
    prefix: $GAMEDIR
- task:
    arch: win32
    description: Installing League of Legends
    executable: lol_installer
    name: wineexec
    prefix: $GAMEDIR
- task:
    arch: win32
    name: winekill
    prefix: $GAMEDIR
- task:
    arch: win32
    key: GrabFullScreen
    name: set_regedit
    path: HKEY_CURRENT_USER\Software\Wine\X11 Driver
    prefix: $GAMEDIR
    value: Y
- task:
    arch: win32
    key: UseXVidMode
    name: set_regedit
    path: HKEY_CURRENT_USER\Software\Wine\X11 Driver
    prefix: $GAMEDIR
    value: N
- write_file:
    content:
      install:
        globals:
          locale: $INPUT_LOCALE
          region: $INPUT_REGION
    file: $GAMEDIR/drive_c/Riot Games/League of Legends/Config/LeagueClientSettings.yaml
- task:
    arch: win32
    name: winekill
    prefix: $GAMEDIR
- write_file:
    content: "#!/usr/bin/env sh\n\n# If abi.vsyscall32=0 is already set, no need to\
      \ do anything\nif [ \"$(cat /proc/sys/abi/vsyscall32)\" -eq 0 ]; then\n    exit\
      \ 0\nfi\n\ndialog() {\n    zenity \"$@\" --icon-name='lutris' --width=\"400\"\
      \ --title=\"League of Legends anticheat compatibility check\"\n}\n\nfinal_check()\
      \ {\n    if [ \"$(cat /proc/sys/abi/vsyscall32)\" -ne 0 ]; then\n        dialog\
      \ --warning --text=\"As far as this script can detect, your system is not configured\
      \ to work with League's anticheat. Please verify that you can get into the practice\
      \ tool before playing a multiplayer game.\"\n    fi\n}\n\ntrap final_check EXIT\n\
      \nif grep -E -x -q \"abi.vsyscall32( )?=( )?0\" /etc/sysctl.conf; then\n   \
      \ if dialog --question --text=\"It looks like you already configured your system\
      \ to work with League anticheat, and saved the setting to persist across reboots.\
      \ However, for some reason the persistence part did not work.\\n\\nFor now,\
      \ would you like to enable the setting again until the next reboot?\"\n    then\n\
      \        pkexec sh -c 'sysctl -w abi.vsyscall32=0'\n    fi\n    exit 0\nfi\n\
      \nonce=\"Change setting until next reboot\"\npersist=\"Change setting and persist\
      \ after reboot\"\nmanual=\"Show me the commands; I'll handle it myself\"\n\n\
      if dialog --question --text=\"League of Legends' anticheat requires using a\
      \ modified version of wine and changing a system setting. Otherwise, the game\
      \ will crash after champion select. Wine-lol comes with the Lutris installer,\
      \ but as far as this script can detect, the setting has not been changed yet.\\\
      nNote: The setting (abi.vsyscall32=0) may reduce the performance of some 32\
      \ bit applications.\\n\\nWould you like to change the setting now?\"\nthen\n\
      \    # I tried to embed the command in the dialog and run the output, but\n\
      \    # parsing variables with embedded quotes is an excercise in frustration.\n\
      \    RESULT=$(dialog --list --radiolist --height=\"200\" \\\n        --column=\"\
      \" --column=\"Command\" \\\n        \"TRUE\" \"$once\" \\\n        \"FALSE\"\
      \ \"$persist\" \\\n        \"FALSE\" \"$manual\")\n\n    case \"$RESULT\" in\n\
      \        \"$once\")\n            pkexec sh -c 'sysctl -w abi.vsyscall32=0'\n\
      \            ;;\n        \"$persist\")\n            pkexec sh -c 'echo \"abi.vsyscall32\
      \ = 0\" >> /etc/sysctlutris:league-of-legends?revision=43948l.conf && sysctl\
      \ -p'\n            ;;\n        \"$manual\")\n            dialog --info --no-wrap\
      \ --text=\"To change the setting (a kernel parameter) until next boot, run:\\\
      n\\nsudo sh -c 'sysctl -w abi.vsyscall32=0'\\n\\nTo persist the setting between\
      \ reboots, run:\\n\\nsudo sh -c 'echo \\\"abi.vsyscall32 = 0\\\" >> /etc/sysctl.conf\
      \ && sysctl -p'\"\n            # Anyone who wants to do it manually\
      \ doesn't need another warning\n            trap - EXIT\n            ;;\n  \
      \      *)\n            echo \"Dialog canceled or unknown option selected: $RESULT\"\
      \n            ;;\n    esac\nfi\n"
    file: $GAMEDIR/syscall_check.sh
- chmodx: $GAMEDIR/syscall_check.sh
- write_file:
    content: "#!/usr/bin/env sh\n#Update Wine/Prefix Refs as needed \n\n /bin/bash\
      \ syscall_check.sh\n WINEPREFIX="
    file: $GAMEDIR/launch_overlay.sh
- write_file:
    content: $GAMEDIR
    file: $GAMEDIR/launch_overlay.sh
    mode: a
- write_file:
    content: ' '
    file: $GAMEDIR/launch_overlay.sh
    mode: a
- write_file:
    content: $HOME/.local/share/lutris/runners/wine/lutris-lol-5.5-2-x86_64/bin/wine
    file: $GAMEDIR/launch_overlay.sh
    mode: a
- write_file:
    content: ' runas /trustlevel:0x20000 '
    file: $GAMEDIR/launch_overlay.sh
    mode: a
- write_file:
    content: '"C:\users\$USER\Local Settings\Application Data\Blitz\blitz.exe"'
    file: $GAMEDIR/launch_overlay.sh
    mode: a
- chmodx: $GAMEDIR/launch_overlay.sh
system:
  disable_compositor: true
  env:
    DXVK_LOG_LEVEL: none
    DXVK_STATE_CACHE_PATH: $GAMEDIR
    PBA_DISABLE: 0
    STAGING_SHARED_MEMORY: 1
    WINE_LARGE_ADDRESS_AWARE: 1
    __GL_SHADER_DISK_CACHE: 1
    __GL_SHADER_DISK_CACHE_PATH: $GAMEDIR
    __GL_THREADED_OPTIMIZATIONS: 1
    pulse_latency: 'true'
  prelaunch_command: $GAMEDIR/launch_overlay.sh
wine:
  MouseWarpOverride: enable
  UseGLSL: disabled
  dxvk: true
  esync: true
  version: lutris-lol-5.5-2-x86_64
{
  "custom-name": "League of Legends + Blitz.gg Overlay",
  "files": [
    {
      "lol_installer": "https://lol.secure.dyn.riotcdn.net/channels/public/x/installer/current/live.na.exe"
    },
    {
      "overlay_installer": {
        "filename": "blitz_install.exe",
        "url": "https://dl.blitz.gg/download/windows"
      }
    }
  ],
  "game": {
    "args": "/trustlevel:0x20000 LeagueClient.exe",
    "exe": "$GAMEDIR/drive_c/windows/system32/runas.exe",
    "prefix": "$GAMEDIR",
    "working_dir": "$GAMEDIR/drive_c/Riot Games/League of Legends"
  },
  "installer": [
    {
      "task": {
        "arch": "win32",
        "description": "Creating Wine prefix",
        "name": "create_prefix",
        "prefix": "$GAMEDIR"
      }
    },
    {
      "task": {
        "app": "d3dcompiler_43 d3dx9",
        "arch": "win32",
        "description": "Installing D9VK Dependencies",
        "name": "winetricks",
        "prefix": "$GAMEDIR"
      }
    },
    {
      "task": {
        "app": "dotnet472",
        "arch": "win32",
        "description": "Installing .NET Framework. (4.7.2)",
        "name": "winetricks",
        "prefix": "$GAMEDIR"
      }
    },
    {
      "move": {
        "dst": "$GAMEDIR/drive_c/users/Public/Documents",
        "src": "overlay_installer"
      }
    },
    {
      "input_menu": {
        "description": "Choose the game's language:",
        "id": "LOCALE",
        "options": [
          {
            "cs_CZ": "\u010ce\u0161tina"
          },
          {
            "en_AU": "English AUS"
          },
          {
            "en_GB": "English U.K."
          },
          {
            "en_US": "English U.S."
          },
          {
            "fr_FR": "Fran\u00e7ais"
          },
          {
            "de_DE": "Deutsch"
          },
          {
            "es_ES": "Espa\u00f1ol"
          },
          {
            "es_MX": "Espa\u00f1ol Mexicano"
          },
          {
            "it_IT": "Italiano"
          },
          {
            "ja_JP": "\u65e5\u672c\u8a9e"
          },
          {
            "hu_HU": "Magyar"
          },
          {
            "pl_PL": "Polski"
          },
          {
            "pt_BR": "Portugu\u00eas do Brasil"
          },
          {
            "ro_RO": "Romanian"
          },
          {
            "ru_RU": "\u0440\u0443\u0441\u0441\u043a\u0438\u0439"
          },
          {
            "tr_TR": "T\u00fcrk\u00e7e"
          }
        ],
        "preselect": "en_US"
      }
    },
    {
      "input_menu": {
        "description": "Choose the game's server region:",
        "id": "REGION",
        "options": [
          {
            "BR": "Brazil"
          },
          {
            "EUNE": "Europe Nordic & East"
          },
          {
            "EUW": "Europe West"
          },
          {
            "LAN": "Latin America North"
          },
          {
            "LAS": "Latin America South"
          },
          {
            "NA": "North America"
          },
          {
            "OCE": "Oceania"
          },
          {
            "RU": "Russia"
          },
          {
            "TR": "Turkey"
          },
          {
            "JP": "Japan"
          },
          {
            "SEA": "South East Asia"
          }
        ],
        "preselect": "NA"
      }
    },
    {
      "task": {
        "app": "win7",
        "arch": "win32",
        "description": "Switching to Windows 7 for Blitz Install",
        "name": "winetricks",
        "prefix": "$GAMEDIR"
      }
    },
    {
      "task": {
        "arch": "win32",
        "args": "/trustlevel:0x20000 \"C:\\users\\Public\\Documents\\blitz_install.exe\"",
        "description": "Installing Blitz.gg Overlay",
        "executable": "$GAMEDIR/drive_c/windows/system32/runas.exe",
        "name": "wineexec",
        "prefix": "$GAMEDIR"
      }
    },
    {
      "task": {
        "arch": "win32",
        "description": "Installing League of Legends",
        "executable": "lol_installer",
        "name": "wineexec",
        "prefix": "$GAMEDIR"
      }
    },
    {
      "task": {
        "arch": "win32",
        "name": "winekill",
        "prefix": "$GAMEDIR"
      }
    },
    {
      "task": {
        "arch": "win32",
        "key": "GrabFullScreen",
        "name": "set_regedit",
        "path": "HKEY_CURRENT_USER\\Software\\Wine\\X11 Driver",
        "prefix": "$GAMEDIR",
        "value": "Y"
      }
    },
    {
      "task": {
        "arch": "win32",
        "key": "UseXVidMode",
        "name": "set_regedit",
        "path": "HKEY_CURRENT_USER\\Software\\Wine\\X11 Driver",
        "prefix": "$GAMEDIR",
        "value": "N"
      }
    },
    {
      "write_file": {
        "content": {
          "install": {
            "globals": {
              "locale": "$INPUT_LOCALE",
              "region": "$INPUT_REGION"
            }
          }
        },
        "file": "$GAMEDIR/drive_c/Riot Games/League of Legends/Config/LeagueClientSettings.yaml"
      }
    },
    {
      "task": {
        "arch": "win32",
        "name": "winekill",
        "prefix": "$GAMEDIR"
      }
    },
    {
      "write_file": {
        "content": "#!/usr/bin/env sh\n\n# If abi.vsyscall32=0 is already set, no need to do anything\nif [ \"$(cat /proc/sys/abi/vsyscall32)\" -eq 0 ]; then\n    exit 0\nfi\n\ndialog() {\n    zenity \"$@\" --icon-name='lutris' --width=\"400\" --title=\"League of Legends anticheat compatibility check\"\n}\n\nfinal_check() {\n    if [ \"$(cat /proc/sys/abi/vsyscall32)\" -ne 0 ]; then\n        dialog --warning --text=\"As far as this script can detect, your system is not configured to work with League's anticheat. Please verify that you can get into the practice tool before playing a multiplayer game.\"\n    fi\n}\n\ntrap final_check EXIT\n\nif grep -E -x -q \"abi.vsyscall32( )?=( )?0\" /etc/sysctl.conf; then\n    if dialog --question --text=\"It looks like you already configured your system to work with League anticheat, and saved the setting to persist across reboots. However, for some reason the persistence part did not work.\\n\\nFor now, would you like to enable the setting again until the next reboot?\"\n    then\n        pkexec sh -c 'sysctl -w abi.vsyscall32=0'\n    fi\n    exit 0\nfi\n\nonce=\"Change setting until next reboot\"\npersist=\"Change setting and persist after reboot\"\nmanual=\"Show me the commands; I'll handle it myself\"\n\nif dialog --question --text=\"League of Legends' anticheat requires using a modified version of wine and changing a system setting. Otherwise, the game will crash after champion select. Wine-lol comes with the Lutris installer, but as far as this script can detect, the setting has not been changed yet.\\nNote: The setting (abi.vsyscall32=0) may reduce the performance of some 32 bit applications.\\n\\nWould you like to change the setting now?\"\nthen\n    # I tried to embed the command in the dialog and run the output, but\n    # parsing variables with embedded quotes is an excercise in frustration.\n    RESULT=$(dialog --list --radiolist --height=\"200\" \\\n        --column=\"\" --column=\"Command\" \\\n        \"TRUE\" \"$once\" \\\n        \"FALSE\" \"$persist\" \\\n        \"FALSE\" \"$manual\")\n\n    case \"$RESULT\" in\n        \"$once\")\n            pkexec sh -c 'sysctl -w abi.vsyscall32=0'\n            ;;\n        \"$persist\")\n            pkexec sh -c 'echo \"abi.vsyscall32 = 0\" >> /etc/sysctlutris:league-of-legends?revision=43948l.conf && sysctl -p'\n            ;;\n        \"$manual\")\n            dialog --info --no-wrap --text=\"To change the setting (a kernel parameter) until next boot, run:\\n\\nsudo sh -c 'sysctl -w abi.vsyscall32=0'\\n\\nTo persist the setting between reboots, run:\\n\\nsudo sh -c 'echo \\\"abi.vsyscall32 = 0\\\" >> /etc/sysctl.conf && sysctl -p'\"\n            # Anyone who wants to do it manually doesn't need another warning\n            trap - EXIT\n            ;;\n        *)\n            echo \"Dialog canceled or unknown option selected: $RESULT\"\n            ;;\n    esac\nfi\n",
        "file": "$GAMEDIR/syscall_check.sh"
      }
    },
    {
      "chmodx": "$GAMEDIR/syscall_check.sh"
    },
    {
      "write_file": {
        "content": "#!/usr/bin/env sh\n#Update Wine/Prefix Refs as needed \n\n /bin/bash syscall_check.sh\n WINEPREFIX=",
        "file": "$GAMEDIR/launch_overlay.sh"
      }
    },
    {
      "write_file": {
        "content": "$GAMEDIR",
        "file": "$GAMEDIR/launch_overlay.sh",
        "mode": "a"
      }
    },
    {
      "write_file": {
        "content": " ",
        "file": "$GAMEDIR/launch_overlay.sh",
        "mode": "a"
      }
    },
    {
      "write_file": {
        "content": "$HOME/.local/share/lutris/runners/wine/lutris-lol-5.5-2-x86_64/bin/wine",
        "file": "$GAMEDIR/launch_overlay.sh",
        "mode": "a"
      }
    },
    {
      "write_file": {
        "content": " runas /trustlevel:0x20000 ",
        "file": "$GAMEDIR/launch_overlay.sh",
        "mode": "a"
      }
    },
    {
      "write_file": {
        "content": "\"C:\\users\\$USER\\Local Settings\\Application Data\\Blitz\\blitz.exe\"",
        "file": "$GAMEDIR/launch_overlay.sh",
        "mode": "a"
      }
    },
    {
      "chmodx": "$GAMEDIR/launch_overlay.sh"
    }
  ],
  "system": {
    "disable_compositor": true,
    "env": {
      "DXVK_LOG_LEVEL": "none",
      "DXVK_STATE_CACHE_PATH": "$GAMEDIR",
      "PBA_DISABLE": 0,
      "STAGING_SHARED_MEMORY": 1,
      "WINE_LARGE_ADDRESS_AWARE": 1,
      "__GL_SHADER_DISK_CACHE": 1,
      "__GL_SHADER_DISK_CACHE_PATH": "$GAMEDIR",
      "__GL_THREADED_OPTIMIZATIONS": 1,
      "pulse_latency": "true"
    },
    "prelaunch_command": "$GAMEDIR/launch_overlay.sh"
  },
  "wine": {
    "MouseWarpOverride": "enable",
    "UseGLSL": "disabled",
    "dxvk": true,
    "esync": true,
    "version": "lutris-lol-5.5-2-x86_64"
  }
}
Back to game