免费和开源的epic games launcher替代产品,可从linux和windows上的epic games平台下载并安装游戏-凯发k8国际真人

80b18f80-96c7-11ea-9183-0a8c96e7cada

是一款开源游戏启动器,可以从linux和windows上的epic games平台下载并安装游戏。它的名称是许多mmorpg中稀有物品等级上的嘲讽之词。

目前,尚处于测试阶段,功能尚不完善。您可能会遇到一些错误或问题。如果您这样做,请在github上创建一个问题,以便我们进行修复。

注意: legendary当前是一个没有图形用户界面的cli(命令行界面)应用程序,必须从终端(例如powershell)运行

什么有效:

  • 使用epic的服务进行身份验证
  • 下载并安装游戏及其dlc
  • 已安装游戏的delta补丁/更新
  • 通过在线身份验证启动游戏(适用于多人游戏/ drm)
  • 同步云保存(与egl兼容)
  • 在linux上使用wine运行游戏
  • 从导入/导出已安装的游戏

计划:

  • 简单的gui,用于管理/启动游戏
  • 更好的界面,供其他开发人员在其项目中使用legendary
  • 大量的错误修复,优化和重构…

要求

  • linux或windows(64位)
  • python 3.8 (在windows上为64位)
  • pypi软件包:requests,可选setuptoolswheel用于设置/构建

如何运行/安装

包装经理

一些发行版已经有可用的软件包,请查看available linux packages wiki页面以获取详细信息。

当前,这包括 arch, fedora, opensuse和 gentoo, 但是将来会有更多可用。

请注意,由于软件包是由第三方维护的,因此将它们更新到最新版本可能需要一些时间。如果您始终希望拥有最新的功能和修补程序,则建议使用pypi发行版。

单机版

从最新版本下载legendarylegendary.exe二进制文件, 然后将其移至/中的某个位置。在linux上不要忘记它。$path%path%chmod x

windows .exe和linux可执行文件是使用pyinstaller创建的,即使没有安装python也可以独立运行。请注意,在linux上,需要glibc> = 2.25,因此较旧的发行版(如ubuntu 16.04或debian stretch)将无法工作。

python包

先决条件

为防止安装过程中出现权限问题,请pip通过运行升级您的python -m pip install -u pip --user

提示:在linux或windows上,您可能需要用python上述命令替换。python3.8py -3.8

从pypi安装(推荐)

legendary在pypi上可用,只需运行即可安装:

pip install legendary-gl

从仓库手动

  • 安装python3.8,setuptools,wheel和request
  • 克隆git存储库并cd到其中
  • 跑 pip install .

ubuntu 20.04示例

ubuntu 20.04的标准存储库包括安装传奇版本所需的一切:

sudo apt install python3 python3-requests python3-setuptools-git
git clone https://github.com/derrod/legendary.git
cd legendary
pip install .

如果legendary安装后可执行文件不可用,则可能需要path正确配置。您可以通过运行以下命令来执行此操作:

echo 'export path=$path:~/.local/bin' >> ~/.profile && source ~/.profile

直接从仓库(用于开发/测试)

  • 安装python3.8和请求(可选地在venv中)
  • cd进入仓库
  • 输入pip install -e .

legendary将以“可编辑”模式安装-对源代码的任何更改将在legendary可执行文件下次运行时生效。

快速开始

提示:将powershell与独立可执行文件一起使用时,可能需要在以下命令中替换legendary.\legendary

登录:

legendary auth

身份验证有点挑剔,因为我们必须通过epic网站。登录页面应在浏览器中打开,登录后将显示一个包含代码的json响应,只需将代码复制并粘贴到终端中即可登录。在windows上,您可以使用该--import标志从以下位置导入身份验证史诗游戏启动器。请注意,这将使您退出epic launcher。

列出您的游戏

legendary list-games

这将获取您帐户中可用游戏的列表,第一次可能需要一段时间,具体取决于您拥有的游戏数量。

安装游戏

legendary install anemone

重要提示:这些命令使用的名称是应用程序名称,而不是游戏名称!应用程序名称在游戏列表中游戏名称后面的括号中。

列出已安装的游戏并检查更新

legendary list-installed --check-updates

使用在线身份验证启动(运行)游戏

legendary launch anemone

提示:大多数游戏都可以在离线(--offline)上正常运行,因此不需要通过传奇启动就可以进行在线身份验证。您可以运行legendary launch --offline --dry-run以获取命令行,该命令行将使用epic launcher使用的所有参数启动游戏。然后,如果游戏需要它们,则可以将它们输入任何其他游戏启动器(例如lutris / steam)。

导入以前安装的游戏

legendary import-game anemone /mnt/games/epic/worldofgoo

注意:导入将需要完整的验证,因此legendary可以在以后正确更新游戏。

与epic cloud同步保存游戏

legendary sync-saves

注意:在安装了受支持的游戏之后,第一次运行此命令时,它将要求您确认或提供保存游戏所在的路径。

使用自动同步所有游戏

legendary -y egl-sync

用法

usage: legendary [-h] [-v] [-y] [-v]
                 {auth,install,download,update,repair,uninstall,launch,list-games,list-installed,list-files,list-saves,download-saves,sync-saves,verify-game,import-game,egl-sync,status,cleanup}
                 ...
legendary v0.x.x - "codename"
optional arguments:
  -h, --help            show this help message and exit
  -v, --debug           set loglevel to debug
  -y, --yes             default to yes for all prompts
  -v, --version         print version and exit
commands:
  {auth,install,download,update,repair,uninstall,launch,list-games,list-installed,list-files,list-saves,download-saves,sync-saves,verify-game,import-game,egl-sync,status,cleanup}
    auth                authenticate with epic
    install (download,update,repair)
                        download a game
    uninstall           uninstall (delete) a game
    launch              launch a game
    list-games          list available (installable) games
    list-installed      list installed games
    list-files          list files in manifest
    list-saves          list available cloud saves
    download-saves      download all cloud saves
    sync-saves          sync cloud saves
    verify-game         verify a game's local files
    import-game         import an already installed game
    egl-sync            setup or run  sync
    status              show legendary status information
    cleanup             remove old temporary, metadata, and manifest files
individual command help:
command: auth
usage: legendary auth [-h] [--import] [--code ]
                      [--sid ] [--delete]
optional arguments:
  -h, --help            show this help message and exit
  --import              import epic games launcher authentication data (logs
                        out of egl)
  --code 
                        use specified exchange code instead of interactive
                        authentication
  --sid     use specified session id instead of interactive
                        authentication
  --delete              remove existing authentication (log out)
command: install
usage: legendary install  [options]
aliases: download, update
positional arguments:
              name of the app
optional arguments:
  -h, --help            show this help message and exit
  --base-path     path for game installations (defaults to ~/legendary)
  --game-folder   folder for game installation (defaults to folder
                        specified in metadata)
  --max-shared-memory 
                        maximum amount of shared memory to use (in mib),
                        default: 1 gib
  --max-workers    maximum amount of download workers, default: min(2 *
                        cpus, 16)
  --manifest       manifest url or path to use instead of the cdn one
                        (e.g. for downgrading)
  --old-manifest   manifest url or path to use as the old one (e.g. for
                        testing patching)
  --delta-manifest 
                        manifest url or path to use as the delta one (e.g. for
                        testing)
  --base-url       base url to download from (e.g. to test or switch to a
                        different cdns)
  --force               download all files / ignore existing (overwrite)
  --disable-patching    do not attempt to patch existing installation
                        (download entire changed files)
  --download-only, --no-install
                        do not intall app and do not run prerequisite
                        installers after download
  --update-only         only update, do not do anything if specified app is
                        not installed
  --dlm-debug           set download manager and worker processes' loglevel to
                        debug
  --platform 
                        platform override for download (also sets --no-
                        install)
  --prefix      only fetch files whose path starts with  (case
                        insensitive)
  --exclude     exclude files starting with  (case
                        insensitive)
  --install-tag    only download files with the specified install tag
  --enable-reordering   enable reordering optimization to reduce ram
                        requirements during download (may have adverse results
                        for some titles)
  --dl-timeout     connection timeout for downloader (default: 10
                        seconds)
  --save-path     set save game path to be used for sync-saves
  --repair              repair installed game by checking and redownloading
                        corrupted/missing files
  --repair-and-update   update game to the latest version when repairing
  --ignore-free-space   do not abort if not enough free space is available
  --disable-delta-manifests
                        do not use delta manifests when updating (may increase
                        download size)
  --reset-sdl           reset selective downloading choices (requires repair
                        to download new components)
command: uninstall
usage: legendary uninstall [-h] [--keep-files] 
positional arguments:
      name of the app
optional arguments:
  -h, --help    show this help message and exit
  --keep-files  keep files but remove game from legendary database
command: launch
usage: legendary launch  [options]
note: additional arguments are passed to the game
positional arguments:
              name of the app
optional arguments:
  -h, --help            show this help message and exit
  --offline             skip login and launch game without online
                        authentication
  --skip-version-check  skip version check when launching game in online mode
  --override-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
  --language 
                        override language for game launch (defaults to system
                        locale)
  --wrapper 
                        wrapper command to launch game with
  --set-defaults        save parameters used to launch to config (does not
                        include env vars)
  --reset-defaults      reset config settings for app and exit
  --wine   set wine binary to use to launch the app
  --wine-prefix 
                        set wine prefix to use
  --no-wine             do not run game with wine (e.g. if a wrapper is used)
command: list-games
usage: legendary list-games [-h] [--platform ] [--include-ue] [--csv]
                            [--tsv] [--json]
optional arguments:
  -h, --help            show this help message and exit
  --platform 
                        override platform that games are shown for (e.g.
                        win32/mac)
  --include-ue          also include unreal engine content
                        (engine/marketplace) in list
  --csv                 list games in csv format
  --tsv                 list games in tsv format
  --json                list games in json format
command: list-installed
usage: legendary list-installed [-h] [--check-updates] [--csv] [--tsv] [--json]
                                [--show-dirs]
optional arguments:
  -h, --help       show this help message and exit
  --check-updates  check for updates for installed games
  --csv            list games in csv format
  --tsv            list games in tsv format
  --json           list games in json format
  --show-dirs      print installation directory in output
command: list-files
usage: legendary list-files [-h] [--force-download] [--platform ]
                            [--manifest ] [--csv] [--tsv] [--json]
                            [--hashlist] [--install-tag ]
                            []
positional arguments:
              name of the app (optional)
optional arguments:
  -h, --help            show this help message and exit
  --force-download      always download instead of using on-disk manifest
  --platform 
                        platform override for download (disables install)
  --manifest       manifest url or path to use instead of the cdn one
  --csv                 output in csv format
  --tsv                 output in tsv format
  --json                output in json format
  --hashlist            output file hash list in hashcheck/sha1sum -c
                        compatible format
  --install-tag    show only files with specified install tag
command: list-saves
usage: legendary list-saves [-h] []
positional arguments:
    name of the app (optional)
optional arguments:
  -h, --help  show this help message and exit
command: download-saves
usage: legendary download-saves [-h] []
positional arguments:
    name of the app (optional)
optional arguments:
  -h, --help  show this help message and exit
command: sync-saves
usage: legendary sync-saves [-h] [--skip-upload] [--skip-download]
                            [--force-upload] [--force-download]
                            [--save-path ] [--disable-filters]
                            []
positional arguments:
            name of the app (optional)
optional arguments:
  -h, --help          show this help message and exit
  --skip-upload       only download new saves from cloud, don't upload
  --skip-download     only upload new saves from cloud, don't download
  --force-upload      force upload even if local saves are older
  --force-download    force download even if local saves are newer
  --save-path   override savegame path (requires single app name to be
                      specified)
  --disable-filters   disable save game file filtering
command: verify-game
usage: legendary verify-game [-h] 
positional arguments:
    name of the app
optional arguments:
  -h, --help  show this help message and exit
command: import-game
usage: legendary import-game [-h] [--disable-check]
                              
positional arguments:
              name of the app
  
                        path where the game is installed
optional arguments:
  -h, --help            show this help message and exit
  --disable-check       disables completeness check of the to-be-imported game
                        installation (useful if the imported game is a much
                        older version or missing files)
command: egl-sync
usage: legendary egl-sync [-h] [--egl-manifest-path egl_manifest_path]
                          [--egl-wine-prefix egl_wine_prefix] [--enable-sync]
                          [--disable-sync] [--one-shot] [--import-only]
                          [--export-only] [--unlink]
optional arguments:
  -h, --help            show this help message and exit
  --egl-manifest-path egl_manifest_path
                        path to the epic games launcher's manifests folder,
                        should point to
                        /programdata/epic/epicgameslauncher/data/manifests
  --egl-wine-prefix egl_wine_prefix
                        path to the wine prefix the epic games launcher is
                        installed in
  --enable-sync         enable automatic egl <-> legendary sync
  --disable-sync        disable automatic sync and exit
  --one-shot            sync once, do not ask to setup automatic sync
  --import-only         only import games from egl (no export)
  --export-only         only export games to egl (no import)
  --unlink              disable sync and remove egl metadata from installed
                        games
command: status
usage: legendary status [-h] [--offline] [--json]
optional arguments:
  -h, --help  show this help message and exit
  --offline   only print offline status information, do not login
  --json      show status in json format
command: cleanup
usage: legendary cleanup [-h] [--keep-manifests]
optional arguments:
  -h, --help        show this help message and exit
  --keep-manifests  do not delete old manifests

环境变量

legendary支持通过环境变量覆盖某些事物,它还可以通过调用前设置的任何环境变量进行传递。

传奇的特定环境变量:

  • lgdry_wine_binary -指定酒的二进制文件
  • lgdry_wine_prefix -指定的酒名
  • lgdry_no_wine -禁用酒
  • lgdry_wrapper -指定包装程序二进制/命令行

请注意,多次出现的设置的优先级是:命令行>环境变量>配置变量。

配置文件

legendary在以下方面支持某些选项以及游戏特定的配置~/.config/legendary/config.ini

[legendary]
log_level = debug
; maximum shared memory (in mib) to use for installation
max_memory = 1024
; maximum number of worker processes when downloading (fewer workers will be slower, but also use fewer system resources)
max_workers = 8
; default install directory
install_dir = /mnt/tank/games
; locale override, must be in rfc 1766 format (e.g. "en-us")
locale = en-us
; whether or not syncing with egl is enabled
egl_sync = false
; path to the "manifests" folder in the egl programdata directory
egl_programdata = /home/user/games/epic-games-store/drive_c/...
; default settings to use (currently limited to wine executable)
[default]
; (linux) specify wine executable to use
wine_executable = wine
; wine prefix (alternative to using environment variable)
wine_prefix = /home/user/.wine
; default environment variables to set (overridden by game specific ones)
[default.env]
wineprefix = /home/user/legendary/.wine
; settings to only use for "appname"
[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
wine_executable = /path/to/proton/wine64
; override language with two-letter language code
language = fr
[appname.env]
; environment variables to set for this game (mostly useful on linux)
wineprefix = /mnt/tank/games/game/.wine
dxvk_config_file = /mnt/tank/games/game/dxvk.conf
[appname2]
; use a wrapper to run this script
; note that the path might have to be quoted if it contains spaces
wrapper = "/path/to/proton 5.0/proton" run
; do not run this executable with wine (e.g. when the wrapper handles that)
no_wine = true

下载地址:

未经允许不得转载:凯发k8国际真人 » 免费和开源的epic games launcher替代产品,可从linux和windows上的epic games平台下载并安装游戏

分享到
网站地图