LeagueDownloader is a command line tool that allows you to download and install any version from League of Legends using Riot's CDN.
A solution is usually composed of two projects: the main project and the "localization one" (e.g. lol_game_client
which contains all game files and lol_game_client_fr
which contains all french voices).
Here is how you can install a whole solution with LeagueDownloader:
solution -n <solution_name> -o <output_folder> [-v <solution_version> -l <localization> -u <cdn_url> -d <deploy-mode>]
LeagueDownloader will download and install files from projects contained in the specified solution, version and localization in the specified output folder.
Mandatory parameters:
-n <solution_name>
: the name of the solution to download (e.g.lol_game_client_sln
).-o <output_folder>
: the path to the folder where you want the solution to be downloaded.
Optional parameters:
-v <solution_version>
: the version of the solution you want to download (set to the latest released version by default).-l <localization>
: the localization of the solution (e.g.en_gb
,fr_fr
) (set toen_gb
by default).-u <cdn_url>
: the base URL of a RADS CDN (e.g.http://akacdn.riotgames.com/releases/pbe
) (set by default to Riot's CDN pointing to the live platform:http://akacdn.riotgames.com/releases/live
).-d <deploy-mode>
: allows you to override the deploy mode specified in the original game manifests. It can be used if you want all the downloaded files to be installed using a unique deploy mode. Here is what you need to enter:
Deploy mode | Parameter |
---|---|
In deploy folder | -d 0 |
In deploy and solution folders | -d 4 |
In managed files folder | -d 5 |
Uncompressed in RAF | -d 6 |
Compressed in RAF | -d 22 |
It is also possible to download a single project. The usage is similar to the solution option:
project -n <project_name> -o <output_folder> [-v <project_version> -u <cdn_url> -d <deploy-mode>]
You can display a list of files from a specific project. Of course, there are filters you can use if you decide to only show files from a specific folder, revision or even if you want to show only one file to check if it exists. Here is how you can use all this:
list -n <project_name> [-v <project_version> -r <files_revision> -f <filter> -u <cdn_url>]
By default, the project version -v
is set to the latest one.
As for the files revision, it is not set by default, which means the files revision will not be used to filter them. If you want only the files from a specific revision to show up in the list, you can specify this revision like this: -r 0.0.0.95
. If you want to only display files from the latest patch, use -r LATEST
.
You can also filter the list by deciding to only keep specific files. To do so, just specify a regular expression using the -f
argument (e.g. if you only want room.nvr and room.wgeo files to appear in the list, you can use room.(wgeo|nvr)$
.
And like before, you can customize the CDN you want to fetch data from using the -u
argument.
You can easily download the files you want by using the download options. The usage is exactly the same as the list options except that you must display an output folder this time:
download -n <project_name> -o <output_folder> [-v <project_version> -r <files_revision> -f <filter> -u <cdn_url>]
Using this option, files will be downloaded in raw format in the specified output folder. That means they won't follow a RADS architecture (no packaging inside RAFs nor sorting by revision).
It is also possible to download multiple revisions of files of your choice using the range-download
option:
range-download -n <project_name> -o <output_folder> [-f <filter> -u <cdn_url> --start-revision <start_revision> --end-revision <end_revision> --ignore-older-files <ignore_older_files> --save-manifest <save_manifest>]
Like the download
option, you need to specify the project name and the output folder, you can still customize the CDN URL and finally you can specify a regular expression to only select the files you want.
This option also comes with 4 new parameters:
start-revision
: specify the revision from which you want to download your files (by default the start revision will be the first project revision0.0.0.0
).end-revision
: specify the revision until which you want to download your files (by default the end revision will be the latest revision of the specified project).ignore-older-files
: specify whether you want the files from an earlier revision thanstart-revision
to be ignored (set tofalse
by default).save_manifest
: specify whether you want the releasemanifest file from each revision of the specified project (fromstart-revision
toend-revision
) to be saved (in addition to game files).
Let's say you want to download all the files related to Zed from the revision 0.0.1.10
to the latest. The command to use would look like something like this:
range-download -n lol_game_client -o "C:/Zed" -f "DATA/Characters/Zed" --start-revision 0.0.1.10
Letting ignore-older-files
to its default value (false
) will make the tool download all Zed files even though they were not changed by the 0.0.1.10
patch (this way you still get all the files that the game would use at version 0.0.1.10
).
Need some help to use this tool? Want to contribute? If you want to talk to the developers or other people in the community, join our discord server: