LOOT는 다음을 위한 플러그인 로드 순서 최적화 프로그램입니다.
LOOT는 모든 플러그인 종속성을 충족하고 각 플러그인이 게임에 미치는 영향을 최대화하는 로드 순서를 자동으로 계산할 수 있습니다. 또한 많은 문제를 감지할 수 있으며 Wrye Bash에 대한 수많은 플러그인별 사용 참고 사항, 경고 및 Bash 태그 제안을 제공합니다.
LOOT는 도움 없이 대부분의 플러그인을 올바르게 처리할 수 있지만 일부 플러그인은 올바르게 정렬하려면 추가 메타데이터가 필요합니다. LOOT에는 지원되는 각 게임에 대한 메타데이터 마스터 목록이 있으며, 더 추가하여 LOOT의 동작을 사용자 정의할 수 있습니다.
LOOT는 모드 사용을 더 쉽게 만드는 데 도움이 되며 여전히 모드 로드 순서에 대한 실무 지식을 보유하고 있어야 합니다. 개요는 주문 로드 소개를 참조하세요.
릴리스는 GitHub에서 호스팅됩니다. Linux 사용자는 Flathub에서 LOOT를 설치해야 합니다.
스냅샷 빌드는 GitHub Actions 실행에서 아티팩트로 사용할 수 있지만 90일 동안만 보관되며 GitHub 계정에 로그인한 경우에만 다운로드할 수 있습니다. 이러한 제한을 완화하기 위해 스냅샷 빌드 아티팩트에는 여기에 호스팅된 공개 키를 사용하여 확인할 수 있는 GPG 서명이 포함되어 있습니다. 즉, 아티팩트를 다른 곳에 다시 업로드하고 진위를 계속 증명할 수 있음을 의미합니다.
스냅샷 빌드 아티팩트의 이름은 다음과 같습니다.
loot_<last tag>-<revisions since tag>-g<short revision ID>_<branch>-<platform>.<file extension>
스냅샷 빌드는 단일 파일 Flatpak 번들로도 제공되며 다음과 같이 설치할 수 있습니다.
flatpak --user install ~/Downloads/loot.flatpak
Adwaita 테마를 설치할 수도 있습니다.
flatpak install flathub org.kde.KStyle.Adwaita//6.7
빌드 프로세스는 .github/workflows/release.yml
을 참조하세요.
GitHub Actions 워크플로에서는 CMake, 컬, gettext, Git, Inno Setup 6, Python, Visual Studio 2019 및 7-zip이 이미 설치되어 있다고 가정합니다.
vslavik의 사전 컴파일된 Gettext 바이너리는 아마도 Windows에서 최신 버전의 Gettext를 얻는 가장 쉬운 방법일 것입니다.
빌드 프로세스는 .github/workflows/ci.yml
의 flatpak
작업을 참조하세요.
Flatpak 구축은 비교적 독립적이며 다음 사항만 설치하면 됩니다.
git
flatpak
flatpak-builder
python
, pip
및 venv
Linux 배포판은 Python, pip 및 venv를 별도로 패키징할 수 있습니다.
LOOT의 모든 기능이 Linux 빌드에 구현된 것은 아닙니다. LOOT의 이슈 추적기에서 linux
라고 표시된 이슈는 구현 가능한 누락된 기능을 다룹니다.
Flatpak 빌드는 권한이 없는 컨테이너에서는 작동하지 않습니다. 여기에는 generate_manifests.sh
스크립트 실행이 포함됩니다.
LOOT는 다음 CMake 변수를 사용하여 빌드 매개변수를 설정합니다.
매개변수 | 가치 | 기본 | 설명 |
---|---|---|---|
LIBLOOT_URL | URL | GitHub 릴리스 아카이브 URL | libloot 릴리스 아카이브를 가져올 URL입니다. 기본적으로 이는 GitHub에서 호스팅되는 libloot 릴리스 아카이브의 URL입니다. 로컬에서 빌드 및 패키지된 libloot에 연결하려는 경우 이를 지정하는 것이 유용합니다. |
LOOT_BUILD_TESTS | ON , OFF | ON | LOOT의 테스트를 빌드할지 여부입니다. |
LOOT_RUN_CLANG_TIDY | ON , OFF | OFF | 빌드 중에 clang-tidy를 실행할지 여부입니다. CMake의 MSVC 생성기를 사용할 때는 효과가 없습니다. |
MINIZIP_NG_URL | URL | 릴리스 아카이브 URL | 소스 아카이브를 가져올 URL입니다. |
OGDF_URL | URL | 릴리스 아카이브 URL | 소스 아카이브를 가져올 URL입니다. |
VALVE_FILE_VDF_URL | URL | GitHub 커밋 아카이브 URL | 소스 아카이브를 가져올 URL입니다. |
ZLIB_URL | URL | 릴리스 아카이브 URL | 소스 아카이브를 가져올 URL입니다. |
아카이브가 이미 다운로드된 경우(예: 오프라인 빌드의 경우) URL 매개변수를 사용하여 로컬 경로를 제공할 수 있습니다.
CMake가 Boost를 찾을 수 없으면 BOOST_ROOT
설정하고, CMake가 Qt를 찾을 수 없으면 Qt6_ROOT
(예: C:/Qt/6.7.2/msvc2019_64
)를 설정해야 할 수도 있습니다.
문서는 Sphinx를 사용하여 작성되었습니다. Python을 설치하고 PATH
에서 액세스할 수 있는지 확인한 후 다음을 실행하세요.
py -m venv .venv
.venvScriptsactivate
pip install -r docs/requirements.txt
sphinx-build -b html docs build/docs/html
Linux에서 실행하는 경우 .venvScriptsactivate
.venv/bin/activate
로 바꾸세요.
또는 docker run -it --rm -v ${PWD}/docs:/docs/docs:ro -v ${PWD}/resources:/docs/resources:ro -v ${PWD}/build:/docs/build sphinxdoc/sphinx:7.1.2 bash
실행하여 Docker를 사용하여 개발 환경 변경을 피할 수 있습니다. docker run -it --rm -v ${PWD}/docs:/docs/docs:ro -v ${PWD}/resources:/docs/resources:ro -v ${PWD}/build:/docs/build sphinxdoc/sphinx:7.1.2 bash
위의 두 명령을 실행하는 데 사용할 수 있는 셸을 얻으세요.
Windows에서는 설치 프로그램을 생성하고 Windows 및 Linux에서는 압축 아카이브를 생성하기 위한 패키징 스크립트가 제공됩니다.
scripts/installer.iss
Inno 설치 스크립트를 실행하여 build
폴더에 설치 프로그램 실행 파일을 빌드합니다. 비공식 한국어, 스웨덴어 및 중국어 간체 Inno 설정 번역 파일이 공식 번역 파일과 함께 설치되면 설치 프로그램 스크립트는 해당 언어 옵션도 제공합니다. 발견되지 않으면 설치 프로그램은 해당 항목 없이 구축됩니다.
아카이브 패키징 스크립트에는 Git이 필요하고, Windows에서는 7-Zip도 필요하고, Linux에서는 tar
및 xz
도 필요합니다. python scripts/archive.py
사용하여 실행할 수 있으며 build
폴더에 LOOT에 대한 아카이브를 생성합니다. 아카이브 이름은 위의 다운로드 섹션에 설명된 대로 지정됩니다.
아카이브 패키징 스크립트는 Windows에서 실행될 때 windeployqt.exe
호출합니다. 이는 PATH
에서 액세스할 수 있어야 합니다.