
⚡ Автоматическая разблокировка всех DLC для Stellaris на Linux (Steam) без лишних движений.
📖 О проекте
ldu-tool — это утилита на Python, которая полностью автоматизирует процесс подключения официального контента Stellaris в Linux-версии игры. Вместо ручного поиска архивов, правки конфигов и настройки эмулятора API, скрипт делает всё сам:
- 📥 Скачивает актуальные DLC
- 🔧 Внедряет актуальную версию эмулятора Steam API (Goldberg)
- 📋 Генерирует корректные конфиги для работы всех дополнений
- 🧹 Удаляет временные
.zip файлы после установки
⚠️ Важно: Инструмент работает только на Linux. Использование осуществляется на ваш собственный риск.
🚀 Быстрый старт
📦 Установка в 2 команды (рекомендуемый способ)
- Установите утилиту через
pipx. Эта команда скачает и изолирует пакет в вашем пользовательском окружении, не затрагивая системные библиотеки Python:
pipx install ldu-tool
- Проверьте успешность установки. Эта команда выведет текущую версию утилиты, если всё прошло успешно:
ldu-tool --version
Если pipx ещё не установлен (например, на Arch Linux), установите его с помощью менеджера пакетов. Эта команда загрузит и установит pipx из официальных репозиториев дистрибутива:
sudo pacman -S python-pipx
💻 Альтернативная установка (из исходников):
- Клонируем данный репозиторий в удобное вам место
git clone https://github.com/IAMVanilka/linux-dlc-unlocker-tool
- Переходим в папку с репозиторием
cd linux-dlc-unlocker-tool
- Создаем виртуальное окружение (необходим python-env)
python -m venv .venv
- Активируем окружение
source venv/bin/activate
ИЛИ
source venv/bin/activate.fish # Если у вас fish вместо bash
- Устанавливаем зависимости
pip install -r requirements.txt
- Проверяем работу утилиты
python -m modules.main --version
Если отобразилась версия утилиты, то значит вы всё сделали правильно!
🛠️ Использование
После установки инструмент готов к работе. Запуск базовой установки в текущей директории. Скрипт автоматически найдёт игру, скачает DLC и настроит эмулятор:
ldu-tool install
Установка в конкретную папку. Эта команда запустит процесс по указанному пути к корневой директории Stellaris:
ldu-tool install --path /путь/к/Stellaris
⚙️ Список команд
| Команда |
Назначение |
| Базовые |
– |
ldu-tool -V/--version |
Отобразить версию инструмента |
ldu-tool --help / ldu-tool install --help |
Отобразить подсказку по командам |
| Install |
|
ldu-tool install / ldu-tool install <game_name> |
Запускает базовую установку в директории где находится скрипт. Скачивает dlc и модифицированную библиотеку libsteam_api.so |
ldu-tool install --path/-p <PATH_TO_GAME> |
Запускает базовую установку по указанному пути. Скачивает dlc и модифицированную библиотеку libsteam_api.so |
ldu-tool install --dlc |
Скачивает только DLC с удаленного сервера |
ldu-tool install --libs/-l |
Скачивает только libsteam_api.so с удаленного сервера |
ldu-tool install --force/-f |
Скачивает и распаковывает DLC даже, если они уже установлены |
ldu-tool install --mods/-m |
Монтирует папку steam workshop в папку с модами |
| List |
|
ldu-tool list |
Отображает доступные для разблокировки игры |
🔍 Как это работает?
- Проверка директории: Скрипт ищет бинарный файл
stellaris в указанной папке. Если его нет, запрашивает подтверждение у пользователя.
- Эмулятор API: Загружает свежую сборку
libsteam_api.so из форка GitLab-репозитория Goldberg Emulator и помещает её в корень игры.
- Настройка DLC: Создаёт папку
steam_settings/ и файл configs.app.ini, заполняя его dlc_id:name всех официальных DLC через публичный API api.steamcmd.net.
- Загрузка контента: Скачивает ZIP-архивы с файлами DLC с внешнего файлового сервера**.
- Распаковка: Извлекает содержимое архивов в папку
dlc/ и автоматически удаляет исходные .zip файлы.
- Запуск (опционально): После установки предлагает запустить игру через Steam.
📂 Структура файлов после установки
/путь/к/Stellaris/
├── stellaris # Основной исполняемый файл игры
├── libsteam_api.so # Эмулятор Steam API (Goldberg)
├── steam_settings/
│ └── steam_appid.txt
configs.app.ini # Настройки эмулятора и информация обо всех DLC
└── dlc/ # Распакованные файлы контента DLC
❓ Устранение неполадок
- Ошибка подключения к
api.steamcmd.net: Попробуйте использовать VPN или прокси, если находитесь в регионе с ограничениями доступа.
PermissionError при создании папок: Убедитесь, что у вашего пользователя есть права на запись в папку с игрой. Не запускайте скрипт через sudo, лучше измените владельца папки через chown -R $USER:$USER /путь/к/Stellaris (рекурсивно меняет владельца папки и всех её вложенных файлов на текущего пользователя).
- Игра не видит DLC: Проверьте, что
libsteam_api.so лежит в той же директории, что и бинарник stellaris, а папка dlc/ содержит распакованные файлы, а не архивы. Проверьте файл steam_settings/configs.app.ini. Внутри должен быть раздел [app::dlcs] в котором все DLC в формате dlc_id = dlc_name. Если всё вроде ОК и ничего не работает, то открывайте issue, обсудим вопрос).
- Потерялись сохранения: Используя модифицированную библиотеку
libsteam_api.so, вам придётся отказаться от Steam Cloud Saves, так как библиотека перехватывает все запросы к steam api. Сохранения игры пишутся в директорию: ~/.local/share/Paradox Interactive/Stellaris/save games/. Если нужно перенести сейвы на другое устройство, то придётся это делать вручную (как настоящий пират!).
🤝 Поддержка и развитие
Нашли баг, хотите предложить улучшение или добавить поддержку другой игры? Создайте Issue или отправьте Pull Request.
📜 Лицензия
Данный проект распространяется “как есть” (as is). Автор не несет ответственности за возможные последствия использования утилиты. Используйте на свой страх и риск.
评论