MAATRIX GAMES / Блог / Empyrion: установка модов на сервер

Empyrion: установка модов на сервер

MAATRIX GAMES

Скачали мод для Empyrion, закинули куда попало — и либо сервер вообще не видит его, либо игроки не могут подключиться с загадочной ошибкой про EAC. Знакомая история: в Empyrion под словом "мод" скрываются две совсем разные вещи с разной установкой, и большая часть проблем начинается именно с путаницы между ними. Разберём по порядку — что куда класть, что обязательно поменять в конфиге и на чём чаще всего спотыкаются новички.

Два вида модов в Empyrion — и почему их нельзя ставить одинаково

Первое, что нужно понять: в Empyrion нет единого механизма модов, как, скажем, Steam Workshop у ARK или Oxide/uMod у Rust. Есть два принципиально разных типа контента, которые в комьюнити одинаково называют "модами", но работают они совершенно по-разному.

API-моды (DLL-моды) — это код на C#, написанный под встроенный игровой API (Game Modding API). Такой мод меняет логику сервера: добавляет команды, автоматизирует экономику, интегрируется с Discord, следит за поведением игроков и так далее. Ставится в папку Content/Mods рядом с исполняемым файлом сервера.

Модовые сценарии — это не код, а полный пересобранный игровой мир: конфиги блоков, чертежи построек, планеты, POI, торговцы, квесты. Самый известный пример — Reforged Eden и Reforged Galaxy, overhaul-сценарии, которые меняют баланс игры до неузнаваемости. Ставятся в папку Content/Scenarios и подключаются через отдельную настройку в конфиге сервера.

API-мод (DLL)Модовый сценарий
Формат.dll (иногда исходники .cs)папка с конфигами, чертежами, ассетами
Куда ставитсяContent/Mods/<имя>/Content/Scenarios/<имя>/
Где активируетсясам факт наличия в папкеполе CustomScenario в dedicated.yaml
Нужен ли клиенту отдельный шагнет, мод работает на серверенет, клиент скачивает сценарий сам при первом коннекте
Требует ли новый миробычно нетпочти всегда да

Дальше разберём оба типа по отдельности, потому что грабли у них разные.

Где искать проверенные моды и сценарии

Основной современный источник — Nexus Mods, раздел Empyrion — Galactic Survival. Именно туда переехала активная разработка большинства крупных модов и сценариев, включая Reforged Eden. Steam Workshop у игры формально есть и всё ещё используется частью авторов, но живых, регулярно обновляемых проектов там заметно меньше, чем на Nexus.

Второй источник — официальный форум empyriononline.com и Discord-сервер игры: там авторы модов выкладывают changelog'и, отвечают на баг-репорты и честно предупреждают, если мод временно сломан после очередного апдейта игры.

На что смотреть перед установкой, особенно на боевой сервер с активным комьюнити:

  • Дата последнего обновления мода относительно версии игры. Empyrion обновляется нередко, и API-моды, скомпилированные под старую версию интерфейса, могут вообще не загрузиться или уронить сервер при старте.
  • Комментарии и раздел багов на странице мода. Жалобы на краши сервера или конфликты с другими модами — сигнал отложить установку до фикса.
  • Готовый .dll или только исходники. Если автор выложил только .cs-файлы без скомпилированной библиотеки, потребуется собрать мод самостоятельно под нужную версию Game Modding API — для новичка это лишний барьер, лучше поискать альтернативу с готовым .dll.
  • Совместимость сценария с текущим сохранением. Почти все overhaul-сценарии требуют новый мир — про это отдельно ниже.

Прежде чем катить что-либо на живой сервер с игроками, разумно поднять тестовый инстанс — благо создать и удалить сервер для проверки мода занимает пару минут, если вы уже разворачивали основной сервер Empyrion и знаете процесс.

Поднять сервер Empyrion за пару минут

Готовый образ MAATRIX GAMES: NVMe, AMD EPYC, DDoS-защита, панель управления. Локации UK, US, RU. Оплата картой РФ, СБП или криптой.

Создать сервер

Отключаем EAC — обязательное условие для API-модов

Easy Anti-Cheat (EAC) в Empyrion конфликтует с большинством API-модов: система античита блокирует загрузку стороннего кода в процесс сервера. Поэтому первый практический шаг перед установкой DLL-мода — отключить EAC в конфиге.

Открываем dedicated.yaml в корне папки сервера и меняем параметр в блоке Srv:

Srv:
  EACActive: false

Важный нюанс, который ловит почти всех новичков: настройка EAC должна совпадать у сервера и у клиента. Если на сервере античит выключен, а игрок запускает игру с активным EAC (или наоборот), подключение просто не пройдёт — без внятной ошибки, просто зависание на этапе коннекта или разрыв соединения. Попросите игроков сообщества один раз проверить в настройках игры (Options → Misc), что пункт запуска с EAC выключен, если ваш сервер работает без античита.

Отключение EAC — осознанный компромисс: вы теряете часть защиты от читеров ради возможности запускать моды. Для приватных серверов друзей или тематических RP-проектов это обычно оправдано, для крупного паблик-сервера с открытой регистрацией — решение стоит принимать взвешенно, зная о риске.

После смены параметра сервер нужно перезапустить — на лету dedicated.yaml не перечитывается.

Устанавливаем DLL-мод через Content/Mods

Если папки Content/Mods в корне сервера ещё нет — создайте её вручную, свежая установка через SteamCMD её не генерирует. Внутри — отдельная подпапка на каждый мод, с любым понятным именем (например, с названием и версией мода, чтобы не путаться при апдейтах):

<корень сервера>/Content/Mods/
└── MyServerMod_v1.4/
    ├── MyServerMod.dll
    └── config.json

Кладём в эту подпапку файлы, которые дал автор — обычно это .dll и, возможно, файл настроек мода. Если вместо готовой библиотеки у вас только исходный код (.cs), придётся собрать его самостоятельно под версию Game Modding API, соответствующую текущей сборке сервера — это отдельная задача уровня "написать код", а не просто "поставить мод", и в рамках этой статьи мы её не разбираем.

После того как файлы на месте, перезапускаем сервер и сразу смотрим лог запуска — в консоли или файле лога в папке Logs рядом с исполняемым файлом сервера должны появиться строки об инициализации мода. Если строк нет вообще — либо .dll лежит не в той папке, либо файл повреждён, либо версия мода несовместима с текущей сборкой Empyrion.

Ставить несколько API-модов одновременно можно — каждый живёт в своей подпапке Content/Mods независимо. Но чем больше модов одновременно цепляются к одним и тем же игровым событиям (например, несколько модов экономики), тем выше шанс, что они начнут конфликтовать друг с другом в логике, а не технически — это уже надо тестировать руками на конкретной связке.

Устанавливаем модовый сценарий: Reforged Eden и подобные

Скачиваем сценарий с Nexus Mods (обычно архивом .zip) либо подписываемся на него в Steam Workshop — тогда файлы окажутся в SteamLibrary/steamapps/workshop/content/383120/<ID сценария>/.

Дальше — в папку Content/Scenarios на сервере:

  • если скачали архив с Nexus — распаковываем его содержимое прямо в Content/Scenarios/<Имя сценария>/;
  • если брали через Workshop — копируем папку с числовым ID и переименовываем её в человекочитаемое имя. Это важно: если оставить папку с названием вида 3143225812, сервер её не подхватит корректно по имени в конфиге.

Затем в dedicated.yaml, блок GameConfig, указываем точное имя папки сценария:

GameConfig:
  CustomScenario: 'Reforged Eden'

Ключевой момент, который стоит проговорить с комьюнити заранее: overhaul-сценарии вроде Reforged Eden не накатываются на существующее сохранение — под них нужен новый мир. Если запустить такой сценарий поверх старого dedicated.yaml с прежним SrvSaveDirectory, велик риск получить сломанные конфиги построек, отсутствующих торговцев или странно сгенерированные планеты. Меняйте имя сохранения (SrvName / директорию сейва) при переходе на новый сценарий и предупреждайте игроков, что прогресс на старом мире не перенесётся.

Отдельно порадует то, что клиентам ничего вручную ставить не нужно — при первом подключении к серверу с кастомным сценарием игра сама скачивает нужные файлы. У тяжёлых сценариев вроде Reforged Eden это может занять заметное время на первом заходе — предупредите игроков, чтобы не паниковали, увидев долгую загрузку вместо привычного быстрого коннекта.

Совместимость версий и типичные ошибки при активации

Empyrion обновляется регулярно, и это главный источник проблем с уже работающими модами. API-моды собраны под конкретную версию интерфейса игры (Game Modding API) — после крупного апдейта сервера мод может либо тихо не загрузиться, либо, что хуже, уронить сервер при старте с ошибкой в логе. Прежде чем накатывать обновление Empyrion на боевой сервер с модами, разумно сначала обновить тестовый инстанс и проверить, что все моды и сценарий пережили апдейт — а уже потом катить изменение на живой мир. О принципах автообновления и что стоит фиксировать вручную — в статье про автообновление модов на сервере.

Частые ошибки при установке и активации:

  • Игроки не могут подключиться после установки мода. Почти всегда — рассинхрон настройки EAC между сервером и клиентом. Проверьте EACActive в dedicated.yaml и попросите игроков свериться с настройкой в клиенте.
  • Мод "не виден" серверу, хотя файлы на месте. Часто причина — папки Content/Mods не существовало до установки и её забыли создать, либо .dll лежит не в подпапке, а прямо в Content/Mods без вложенной директории.
  • Сценарий не активируется, в логе "scenario not found". Обычно — папка сценария в Content/Scenarios осталась с числовым Workshop ID вместо читаемого имени, а в CustomScenario указано другое название. Имя папки и значение в конфиге должны совпадать один в один.
  • После установки Reforged Eden мир выглядит поломанным. Сценарий запустили поверх старого сохранения вместо нового мира — единственное надёжное решение здесь — начать сохранение заново под новый сценарий.
  • Сервер падает сразу после старта с новым модом. Проверьте лог в папке Logs — если там стектрейс со ссылкой на .dll мода, велика вероятность несовместимости с текущей версией игры; временно уберите мод из Content/Mods и уточните у автора актуальную сборку.
  • Игроки жалуются на долгую загрузку при первом заходе после смены сценария. Это ожидаемо для тяжёлых overhaul-сценариев — клиент докачивает файлы сам, тут можно только заранее предупредить, а не "починить".

Если сервер не запускается и вы не уверены, что дело именно в моде, стоит для начала исключить базовые причины — общий разбор частых сбоев при старте есть в статье сервер Empyrion не запускается.

Поднять сервер Empyrion за пару минут

Готовый образ MAATRIX GAMES: NVMe, AMD EPYC, DDoS-защита, панель управления. Локации UK, US, RU. Оплата картой РФ, СБП или криптой.

Создать сервер

Частые вопросы

Нужно ли игрокам вручную ставить моды, если сервер их использует?

Для API-модов — нет, они работают только на стороне сервера. Для модовых сценариев (Reforged Eden и подобных) — тоже нет, клиент скачивает нужные файлы автоматически при первом подключении к серверу.

Можно ли применить Reforged Eden поверх текущего мира?

Не рекомендуется — overhaul-сценарии рассчитаны на новое сохранение, накатывание поверх старого мира почти всегда приводит к сломанным конфигам построек и генерации.

Обязательно ли отключать EAC для любых модов?

Для API-модов (DLL) — практически всегда да, иначе античит блокирует загрузку кода. Для чисто контентных сценариев без исполняемого кода такой жёсткой привязки нет, но стоит свериться с требованиями конкретного сценария.

Где смотреть, что мод сломался после обновления игры?

В файле лога сервера в папке Logs рядом с исполняемым файлом — там будут видны ошибки инициализации мода или стектрейс краша, если проблема в несовместимой версии.

Можно ли ставить несколько API-модов и модовый сценарий одновременно?

Технически да — сценарий и DLL-моды работают независимо друг от друга. Но тестируйте связку на отдельном инстансе перед боевым сервером, особенно если несколько модов трогают одну и ту же игровую механику.