--- title: jobs.xml и god.xml: корабли и станции NPC summary: Квоты, размещение и почему правка XML не обязана сразу менять существующий мир. section: galaxy kind: guide status: reference updated: 2026-10-27 tags: ["jobs","god","NPC","quota","save"] sources: ["https://chemodun.github.io/x4/modding-support/anatomy-of-game-data/libraries/jobs-xml/","https://chemodun.github.io/x4/modding-support/anatomy-of-game-data/libraries/god-xml/"] --- ## Разделите назначение `libraries/jobs.xml` описывает NPC-корабли: выбор судна, приказ, квоту и допустимое место. Job engine поддерживает население; при `buildatshipyard="true"` пополнение после начальной генерации связано со строительством на верфи. Квота не равна обещанию немедленного появления корабля. `libraries/god.xml` в основном задаёт генерацию станций и объектов. Их последующее развитие использует также MD. В 9.00 появились производственные записи с планами и поэтапное строительство. Не заменяйте job для патруля записью станции. ## Минимальная правка квоты Пример файла `libraries/jobs.xml` вашего расширения: ```xml 2 ``` **Предпосылка:** `wiki_scout_patrol` - вымышленный ID уже созданного вами корректного job с одним `quota`, достаточным `maxgalaxy` и подходящими location/ship. В чистой игре такой записи нет. **Что изменится:** после применения патча атрибут `galaxy` этой записи станет `2`. Это изменение цели job engine, а не команда создать два новых судна поверх имеющихся. Если селектор не нашёл запись, пример не выполнит задуманную правку. Существующие корабли не получают автоматически новое оснащение от изменения шаблона. ## Новая игра и загрузка | Сценарий | На что обратить внимание | | --- | --- | | Новая игра | Активность, выбранный dataset, квоты и фильтры места | | Загрузка с новым расширением | Его запись в сохранении и `content/@save` | | Обновление уже известного расширения | Новая запись `god` не означает автоматическую генерацию станции | | Изменение job | Состояние job сохраняется, определения читаются из файлов; старые суда могут сохранить прежние приказы | По исследованию Chem O’Dun, `god` при загрузке генерирует записи впервые добавленного к сейву расширения с `save="true"`; простое обновление известного расширения так не работает. `save="false"` не даёт такую генерацию при загрузке. При новой игре этот флаг сам по себе генерацию не выключает. Dataset для конкретного gamestart или galaxy заменяет основной набор, а не дополняет его. Проверьте также `matchextension`: ограничение пространством расширения может исключить базовую карту. ## Как проверить результат Сравните новую игру и копию старого сохранения отдельно. Зафиксируйте ID записи, фактическое число/место объектов и ожидаемый способ пополнения. Для станций можно исследовать отчёт `-godlog`; пустой отчёт без прохода генерации ничего не доказывает. Для обновления мира может понадобиться отдельная MD-миграция. Это изложение источников и учебный патч, не наша игровая приёмка. Далее: [манифест](wiki:extension-manifest), [старт игры](wiki:gamestarts-and-menu), [отладка](wiki:debugging).