/LeagueSandbox-RL-Learning

Modified version of the LeagueSandbox project which relies on a Redis server to accept actions and send observations. Intended for reinforcement learning within v4.20 League of Legends.

Primary LanguageC#GNU Affero General Public License v3.0AGPL-3.0

Build status Build Status codecov.io

The League Sandbox project's game server

Project website along with more specifications can be found from: https://leaguesandbox.github.io/
Project chat on Discord: https://discord.gg/Bz3znAM

Contributing

Take a look at this

Setup guide

Auto Setup (Windows x64)

Manual Setup (Windows/Mac)

Manual Setup (Linux)

  • Download the 4.20 version of League game client:
    1. Unscrubbed, packed version: (https://mega.nz/#!hpkiQK5A!pFkZJtxCMQktJf4umplAdPC_Fukt0xgMfO7g3bGp1Io)
    2. Scrubbed, moddable version: (https://drive.google.com/open?id=1vr6kGpDK1Hq3Loh8-2z7dlmXSCGKqY2Z)
  • Install git and dotnet (dotnet-host, dotnet-runtime, dotnet-sdk, dotnet-targeting-pack) using your distro's package manager
  • Clone the git repository using git clone https://github.com/LeagueSandbox/GameServer.git, then to download the necessary contents packages, run:
    • cd GameServer
    • git submodule init
    • git submodule update
  • Build the server by running dotnet build .
  • Enter the output directory by running cd GameServerConsole/bin/Debug/netcoreapp3.0/
  • Open Settings/GameServerSettings.json and change "autoStartClient": true to false
  • Start the server: ./GameServerConsole

Running the game client

Automatically Launching from Visual Studio or GameServerConsole.exe

Click the debug button.

Auto run settings are located in GameServer/GameServerConsole/bin/Debug/netcoreapp3.0/Settings/GameServerSettings.json, there is where you'll set the path to your League of Legends' deploy folder, which shown by the example already in the file.

Manually Launching from command line

start "" "Path/To/Your/League420/RADS/solutions/lol_game_client_sln/releases/0.0.1.68/deploy/League of Legends.exe" "8394" "LoLLauncher.exe" "" "127.0.0.1 5119 17BLOhi6KZsTtldTsizvHg== 1"

Manually Launching from command line (Linux)

  • Install wine and winetricks using your package manager.
  • Run winetricks d3dx9 - without this you will get into the game, but your screen will be black.
  • Mark .exe files executable by running find . -type f -iname "*.exe" -exec chmod +x {} \; in your League-of-Legends-4-20 directory.
  • Enter the directory containing the client by running cd /path/to/your/League-of-Legends-4-20/RADS/solutions/lol_game_client_sln/releases/0.0.1.68/deploy/
  • Run the game:
./League\ of\ Legends.exe "8394" "/path/to/your/League-of-Legends-4-20/RADS/projects/lol_launcher/releases/0.0.0.227/deploy/LoLLauncher.exe" "" "127.0.0.1 5119 17BLOhi6KZsTtldTsizvHg== 1"

License

This repository is under the AGPL-3.0 license. This essentially means that all changes that are made on top of this repository are required to be made public, regardless of where the code is being ran.