Укажите реальные требования#
Базовый XML-мод не должен требовать стороннюю библиотеку только потому, что она используется в другом проекте. Добавляйте зависимость, когда ваш код или ресурсы действительно от неё зависят.
Пример обязательного DLC в content.xml:
<dependency id="ego_dlc_split" optional="false" />Если используется корпус или ресурс DLC, проверьте также правильный путь целевого файла. Патч ресурса другого расширения требует учёта его пространства файлов; это не всегда такой же путь, как у базовой игры.
Один атрибут — несколько модов#
Два корректных diff могут менять одно поле. Итог определяется эффективным документом после загрузки расширений. Проверяйте его и фактическое значение в игре, а не только наличие собственного файла.
Сначала протестируйте минимальный набор зависимостей, затем целевой набор совместимости. Сохраняйте точный список модов для воспроизведения конфликта.
Уникальные идентификаторы#
Префикс расширения нужен для macro, component, wares, MD-скриптов и событий UI. Текстовые страницы тоже могут конфликтовать. Переименование файла не меняет автоматически внутренние ID.
Обновления X4#
Сверяйте Breaking Changes и реальные файлы новой сборки. Официальный список не описывает каждое изменение внутренних Lua-скриптов UI, поэтому перехваты меню требуют отдельной проверки.
Для новой версии повторите короткий сценарий по затронутому риску: загрузка, изменённое значение, UI-действие или создание нового корабля. Сохранения проверяйте отдельно.