Перейти к основному содержимому

Упаковка и публикация

Упаковка​

В редакторе кита: mod.io → Create & Upload → Package Mods (сама страница называется Package UGC). Выберите свой плагин, в поле What platform to Package for поставьте Windows (по умолчанию стоит Linux, поэтому её нужно сменить), укажите Package Output Path и нажмите Package. Упаковывается только то, что лежит в папке Content вашего плагина (плюс его Config\Tags).

Форма Package UGC

Форма Package UGC: плагин, платформа Windows, папка результата.

Результат записывается в <папка результата>\<ИмяМода>_Windows\:

  • <ИмяМода>.uplugin
  • Config\Tags\*.ini (если в моде есть теги)
  • Content\Paks\Windows\*.pak, .ucas, .utoc

Загрузка на mod.io​

Запакуйте в zip содержимое папки <ИмяМода>_Windows так, чтобы .uplugin лежал в корне архива, и загрузите архив на mod.io. Моды распространяются только через mod.io: игроки получают их, подписываясь там. Не распространяйте упакованные моды иначе (Steam Workshop, другие сайты, zip-файлы напрямую, ручная установка игроками).

Перед публикацией протестируйте мод локально. Попросите пользователей мода подписываться и отписываться между кампаниями (или хотя бы между днями), как описано в разделе Моды и сохранения.

Версии​

Каждый упакованный мод несёт в своём .uplugin поля "EngineVersion", "GameVersion" и "ExplicitlyLoaded": true. Инструмент Package Mods проставляет их все автоматически (включая GameVersion 5) — не трогайте их.

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

"EngineVersion": "5.7.0-0+UE5-QZ",
"GameVersion": 5,
"ExplicitlyLoaded": true

Без ExplicitlyLoaded мод ломается на цикле пересканирования игры. .uplugin должен быть в UTF-8 без BOM. Кроме того, в Content мода нужен ассет UGC Metadata с Io Store Enabled = true (Create Mods добавляет его).

Почему мод могут отклонить​

Игра отказывается грузить моды с отсутствующей или слишком старой GameVersion, а не падает. Игрок видит уведомление в главном меню:

  • «Mods need an update», когда у отклонённых модов проблема только в отсутствующей или старой GameVersion;
  • «Some mods were not loaded» в остальных случаях.

После ломающего обновления игры переупакуйте мод обновлённым Creator Kit и перезалейте файл; страница мода на mod.io и подписчики сохраняются. Моды, установленные или обновлённые посреди сессии, применяются сразу, без перезапуска игры.

Обновления, которые только добавляют контент (новые дни, компании, DLC-контент), от моддеров ничего не требуют. Ломающие обновления (новая версия движка или изменённые C++-классы данных) требуют, и об этом будет сказано в заметках к релизу. См. Список изменений.

Моды, обращающиеся к внешним серверам​

Моды могут использовать ноды HTTP Blueprint и Json Blueprint Utilities. Не публикуйте моды с этими нодами, пока не выйдет обновление игры, которое их включает: старые билды игры такие моды загрузить не могут. Те же правила действуют для любого внешнего взаимодействия, включая сопутствующую программу, с которой ваш мод общается через файлы. Вы отвечаете за сервер или программу и за данные игрока, которые отправляете. Скажите об этом ясно на странице мода, а когда внешней части нет, мод должен работать дальше без ошибок (просто отключать эту функцию). Мод mod.io не может устанавливать программы; всё, что игрокам нужно скачать отдельно, находится вне проверок игры и mod.io. См. FAQ.

Перед публикацией​

  • Удалите тестовые ассеты (тестовые профили, тестовые скины).
  • Используйте уникальные имена и теги со своим префиксом.
  • Укажите зависимости на mod.io; см. Моды, использующие другие моды.
  • Проверьте, что ваш контент случайно не меняет официальные кампании: автоматически включаемые симптомы, автоматически выдаваемые инструменты и скины персонала применяются везде.
  • Уберите отладочные клавиши.