Студия модов
Лаунчер → «Моды» → «Создать свой мод». Дайте моду имя и выберите, с чего начать: пустой мод, своя планета или звёздная система. Планета и система это рабочие копии примеров: их можно сразу запустить и потом переделать под себя.

- Слева файлы, в центре код с подсветкой. Ctrl+S сохраняет и сразу проверяет файл: ошибка видна с номером строки.
- Внизу терминал, как в VS Code. Кнопки Claude, Codex и Antigravity открывают нейросеть прямо в папке мода, если программы нет, она поставится сама. Попросите: «добавь планету-океан с тремя городами», и нейросеть напишет мод по правилам игры. Работает и любой другой CLI.
- Файлы перетаскиваются мышью: на дерево файлов, чтобы положить в мод, или в терминал, чтобы вставить путь. Копирование и вставка в терминале как в Windows.
- «Играть с модом» открывает последнюю партию сразу с модом. В игре F6 подхватывает правки кода и текстов без перезапуска, а в меню паузы есть «Обратно в студию».
- «Проверить» прогоняет весь мод, «Упаковать» собирает zip, «В магазин» выкладывает.
- Несколько своих модов? Переключайтесь между ними списком «Проекты» наверху студии.
Моды не трогают ваш компьютер, учётку и ключи: коду мода недоступны сеть, запуск программ и файлы вне папки мода. Всё нужное есть в API игры, таблица замен в документации для моддеров.
Магазин модов и пресетов
В лаунчере есть раздел «Магазин»: моды и пресеты игроков с картинками, звёздами и отзывами. Поиск, разделы, метки, отдельно бесплатные и платные. «Подробнее» открывает галерею, описание и кнопку «Установить». Надоел мод, удаляете его там же.

Выложить свой
Кнопка «В магазин» есть в студии, в разделе «Моды» у своего мода и в редакторе пресетов. Игра всё делает сама:
- Один раз входите через GitHub: игра показывает код и сама открывает страницу, остаётся нажать «Authorize». Аккаунт GitHub бесплатный, его можно завести там же.
- Заполняете карточку: картинка, название, описание, раздел, метки, цена.
- Игра упаковывает мод, создаёт репозиторий на вашем GitHub, выпускает релиз и ставит товар в каталог. Новая версия выходит той же кнопкой.

Продавать
Платный мод шифруется сам, открыть его сможет только купивший. Деньги идут прямо вам: подключите в кабинете на сайте свою кассу (ЮKassa, Lava, кошелёк ЮMoney, CryptoBot) или продавайте кодами через любую другую. В кабинете видно продажи, установки и оценки, там же меняется цена и картинка. Комиссия магазина 10% с продаж, раз в месяц до 10 числа. Бесплатные моды без комиссии.
Моды и пресеты делают игроки. Игра их не проверяет и не отвечает за их содержимое.
Где лежат моды
Мод это папка или zip-архив с файлом mod.json. Игра ищет моды в папке mods рядом с PaxUniverse.exe и в папке модов в данных пользователя. Открыть её можно из лаунчера: страница «Моды», кнопка «Папка модов».

В лаунчере моды включаются галочками, порядок меняется стрелками. Галочка действует сразу, перезапускать ничего не нужно. Проблемы мода (сломанный JSON, неизвестное тело, ошибка в коде) видно прямо на его карточке.
Первый мод за минуту
Проще всего через студию. Без неё: откройте игру и нажмите F8, откроется консоль. Введите:
new my_mod Мой первый мод
Игра создаст папку mods/my_mod из шаблона. В ней:
my_mod/
mod.json описание мода
main.gd код (можно удалить, если код не нужен)
data/lang/ru.json переводы
data/lang/en.json
AGENTS.md правила для ИИ-помощника
CLAUDE.md
README.md
.vscode/ подсказки по схемам для редактора
Консоль понимает help, mods, problems, reload, check, pack, json и eval.
mod.json
{
"id": "my_mod",
"name": {"ru": "Мой первый мод", "en": "My first mod"},
"version": "0.1.0",
"api": 1,
"game_version": ">=0.9.0",
"authors": ["Вы"],
"description": {"ru": "Что добавляет мод.", "en": "What the mod adds."},
"tags": ["planet"],
"depends": [],
"load_after": [],
"entry": "main.gd"
}
depends и load_after задают порядок. Картинка thumbnail.png в корне мода появится в лаунчере.
Правки данных без копирования
Почти всё в игре хранится в data/*.json: тела, ресурсы, кризисы, эпохи, спутники, фракции. Мод не копирует эти файлы, а кладёт рядом правку с тем же путём и окончанием .patch.json. Так несколько модов уживаются вместе и не ломаются при обновлениях.
// data/bodies.patch.json
{
"тела": {
"$edit": [{"$match": {"имя": "Марс"}, "параметры": {"water": 0.3}}],
"$remove": [{"имя": "Плутон"}],
"$append": [{"имя": "Тея", "род": "камень", "r": 4100, "a": 285000000}]
}
}
- Объекты сливаются вглубь,
nullудаляет ключ. - Для массивов есть
$append,$prepend,$editс$match,$remove,$insert_after,$replace. - Переводы
data/lang/*.jsonсливаются со словарём игры. - Тексты для нейросети можно заменить или дописать:
data/prompt_report.append.txtдобавит свои правила к рассказчику.
Свой код
Код пишется на GDScript. Файл из entry наследует PaxMod, все обработчики необязательные:
extends PaxMod
func _world_ready(game: PaxGame) -> void:
game.toast(tr_key("my_mod_hello"))
game.add_bottom_button("🛰 Моя кнопка", func(): game.toast("Работает"))
func _days_passed(game: PaxGame, from_day: int, days: int) -> void:
# правила вашего мода каждый шаг времени
pass
func _save_state(game: PaxGame) -> Dictionary:
return {"счётчик": 1} # попадёт в сохранение
func _game_loaded(game: PaxGame, state: Dictionary) -> void:
pass
Через PaxGame доступны дата и скорость времени, тела и их параметры, ресурсы и колонии, фракции, хроника, камера, свои окна и кнопки. Можно добавить своего персонажа с портретом, с которым игрок поговорит, и запустить корабль между звёздами. Полный список методов в docs/modding/ru/04-код.md и в справочнике API.
var n: int = ....Свои планеты и звёзды
Пример Тея из комплекта добавляет потерянную планету, осколок которой по одной из гипотез стал Луной. Нужны три картинки в planets/: цвет поверхности, рельеф и маска океана. Провинции для нового тела игра нарежет сама, если вы не принесли свои.
Пример Альфа Центавра добавляет вторую звёздную систему: три звезды, планету Проксима b с картой и межзвёздные ковчеги. Расстояние 4,53 светового года, при скорости 0,1 скорости света ковчег летит 45 лет и основывает колонию. Свет планете даёт своя звезда.
// data/bodies.patch.json из примера со звёздами (сокращено)
{
"системы": {"$append": [{"имя": "Альфа Центавра", "звезда": "Альфа Центавра A",
"положение_св_лет": [-1.64, -1.37, -3.84], "масса": 1.1}]},
"тела": {"$append": [
{"имя": "Альфа Центавра A", "род": "звезда", "система": "Альфа Центавра", "r": 851000, "a": 0},
{"имя": "Проксима Центавра", "род": "звезда", "спутник": "Альфа Центавра A", "r": 107000, "a": 1940000000000},
{"имя": "Проксима b", "род": "камень", "спутник": "Проксима Центавра", "r": 7160, "a": 7260000,
"карта": "res://mods/example_alpha_centauri/planets/proxima_b"}
]}
}
Телу можно дать свой шейдер с параметрами и свою 3D-модель в glTF.
Что ещё можно
Музыка и звуки
Свои треки по настроению (тревога, надежда, кризис) и фоновые звуки.
Персонажи
Человек с характером, историей и портретом появится в контактах.
Пресеты
Мод может принести свои миры в presets/, они появятся в выборе мира.
Кризисы и эпохи
Новые кризисы со стадиями, новые эпохи для машины времени.
Языки
Перевод интерфейса и своих строк на любой из девяти языков.
Шейдеры
Свой вид поверхности, атмосферы, колец.
Проверка и упаковка
В консоли check my_mod проверит JSON, правки, тела, переводы и код и скажет, что не так. pack my_mod соберёт zip без лишних файлов, его можно выкладывать. То же из командной строки:
PaxUniverse.exe --headless -- --check-mods my_mod
PaxUniverse.exe --headless -- --pack-mod my_mod
PaxUniverse.exe --headless -- --new-mod other_mod "Другой мод"
Для всех файлов есть JSON-схемы, редактор вроде VS Code подсказывает поля прямо при наборе.
Моды с ИИ-помощником
В шаблоне мода лежат AGENTS.md и CLAUDE.md: правила игры, API, типичные ошибки. Откройте папку мода в Claude Code, Cursor или другом помощнике и опишите словами, что хотите: «добавь спутник у Марса с базой и кнопку, которая считает её население». Помощник прочтёт правила и напишет мод по ним, а check покажет, если что-то не так.
Документация целиком лежит в папке игры: docs/modding/ru и docs/modding/en, примеры в docs/modding/examples.