mirror of
https://github.com/derrod/legendary.git
synced 2025-03-07 20:29:40 +00:00
113 lines
4.4 KiB
Markdown
113 lines
4.4 KiB
Markdown
|
# Legendary (Game Launcher)
|
||
|
### A free and open-source Epic Game Launcher replacement
|
||
|
[](https://discord.gg/UJKBwPw)
|
||
|
|
||
|
Legendary (named after the next highest tier [in item rarity](https://wow.gamepedia.com/Quality)) is an open-source game launcher that can download and install games from the Epic Games Store on Linux and Windows.
|
||
|
|
||
|
Right now it is in an early public pre-release stage and still needs a lot of work to work. But it does work!
|
||
|
|
||
|
**Currently implemented:**
|
||
|
- Authenticate with Epic (can import authentication from EGS installation [Windows only])
|
||
|
- Download and install games
|
||
|
- Update installed games (not well tested/potentially buggy)
|
||
|
- Launch games with online authentication
|
||
|
|
||
|
**Planned:**
|
||
|
- Better Linux and WINE support
|
||
|
- Importing installed games from the EGS launcher
|
||
|
- PyPI distribution
|
||
|
- Miscellaneous optimizations
|
||
|
- Simple GUI for managing/launching games
|
||
|
- Lots and lots of bug fixes and refactoring...
|
||
|
|
||
|
## Requirements
|
||
|
|
||
|
- python 3.8+
|
||
|
- requests
|
||
|
|
||
|
## How to install
|
||
|
|
||
|
- Windows (standalone): Download the latest EXE from [GitHub](https://github.com/derrod/legendary/releases/latest)
|
||
|
- Linux/Windows (requires setuptools to be installed): `python3.8 setup.py install`
|
||
|
|
||
|
A PyPI package will follow once it has gotten more testing.
|
||
|
|
||
|
The Windows .exe was created with PyInstaller and will run standalone without python being installed.
|
||
|
|
||
|
## Usage
|
||
|
|
||
|
````
|
||
|
usage: legendary [-h] (--auth | --download <name> | --install <name> | --update <name> | --uninstall <name> | --launch <name> | --list-games | --list-installed) [-v] [--import] [--base-path <path>] [--max-shared-memory <size>] [--max-workers <num>] [--manifest <uri>] [--base-url <url>] [--force]
|
||
|
[--disable-patching] [--offline] [--skip-version-check] [--override-username <username>] [--dry-run] [--check-updates]
|
||
|
|
||
|
Legendary (Game Launcher)
|
||
|
|
||
|
optional arguments:
|
||
|
-h, --help show this help message and exit
|
||
|
--auth Authenticate Legendary with your account
|
||
|
--download <name> Download a game's files
|
||
|
--install <name> Download and install a game
|
||
|
--update <name> Update a game (alias for --install)
|
||
|
--uninstall <name> Remove a game
|
||
|
--launch <name> Launch game
|
||
|
--list-games List available games
|
||
|
--list-installed List installed games
|
||
|
-v Set loglevel to debug
|
||
|
|
||
|
Authentication options:
|
||
|
--import Import EGS authentication data
|
||
|
|
||
|
Downloading options:
|
||
|
--base-path <path> Path for game installations (defaults to ~/legendary)
|
||
|
--max-shared-memory <size>
|
||
|
Maximum amount of shared memory to use (in MiB), default: 1 GiB
|
||
|
--max-workers <num> Maximum amount of download workers, default: 2 * logical CPU
|
||
|
--manifest <uri> Manifest URL or path to use instead of the CDN one (e.g. for downgrading)
|
||
|
--base-url <url> Base URL to download from (e.g. to test or switch to a different CDNs)
|
||
|
--force Ignore existing files (overwrite)
|
||
|
|
||
|
Installation options:
|
||
|
--disable-patching Do not attempt to patch existing installations (download full game)
|
||
|
|
||
|
Game launch options:
|
||
|
Note: any additional arguments will be passed to the game.
|
||
|
|
||
|
--offline Skip login and launch game without online authentication
|
||
|
--skip-version-check Skip version check when launching game in online mode
|
||
|
--override-username <username>
|
||
|
Override username used when launching the game (only works with some titles)
|
||
|
--dry-run Print the command line that would have been used to launch the game and exit
|
||
|
|
||
|
Listing options:
|
||
|
--check-updates Check for updates when listing installed games
|
||
|
````
|
||
|
|
||
|
|
||
|
## game config
|
||
|
|
||
|
Legendary supports game specific configuration in `~/.config/legendary/config.ini`:
|
||
|
````ini
|
||
|
[Legendary]
|
||
|
log_level = debug
|
||
|
; maximum shared memory (in MiB) to use for installation
|
||
|
max_memory = 1024
|
||
|
; default install directory
|
||
|
install_dir = /mnt/tank/games
|
||
|
|
||
|
[AppName]
|
||
|
; launch game without online authentication by default
|
||
|
offline = true
|
||
|
; Skip checking for updates when launching this game
|
||
|
skip_update_check = true
|
||
|
; start parameters to use (in addition to the required ones)
|
||
|
start_params = -windowed
|
||
|
; (linux) specify wine executable to use
|
||
|
wine_executable = wine
|
||
|
|
||
|
[AppName.env]
|
||
|
; environment variables to set for this game (mostly useful on linux)
|
||
|
WINEPREFIX = /home/user/legendary/Game/.wine
|
||
|
DXVK_CONFIG_FILE = /home/user/legendary/Game/dxvk.conf
|
||
|
````
|
||
|
|