При запуске выделенного headless-сервера Factorio с крупными модификациями (такими как Space Exploration, Krastorio 2, Bob's & Angel's или сборками для версии 2.0) администраторы сталкиваются с неприятной ошибкой: моды установлены, версии совпадают, но при попытке подключения клиент получает отказ: Mod settings mismatch или Cannot join - different mod startup settings.
В этом практическом руководстве мы разберём типы настроек модов в Factorio, структуру файла mod-settings.dat, способ переноса настроек с локального ПК на выделенный сервер и подтверждение совпадения хэшей при запуске.
Иерархия настроек модификаций в Factorio: Startup, Map и Player#
Factorio разделяет параметры модов на три строго разграниченных уровня:
- Startup (Стартовые настройки): определяют прототипы предметов, рецепты, свойства жидкостей и механику технологий. Они читаются движком ещё до генерации мира и сохраняются в бинарном файле
mods/mod-settings.dat. - Map (Настройки карты): параметры игрового процесса (скорость экспансии кусак, настройки сложности), которые сохраняются непосредственно внутри файла мира
level.datархива сохранения.zip. - Per-player (Пользовательские настройки): интерфейс, звуки и визуальные эффекты, уникальные для каждого отдельного клиента.
Любое отличие даже в одном стартовом параметре между клиентом и сервером делает синхронизацию состояния фабрики невозможной, так как клиент и сервер скомпилируют разные математические модели игровых прототипов.
Почему возникает ошибка Mod settings mismatch при подключении#
Если headless-сервер Factorio запускается без файла mods/mod-settings.dat, игровой движок автоматически генерирует настройки по умолчанию (default values).
Если администратор настраивал баланс модов в графическом меню игры на своём домашнем ПК (например, отключал усталость от исследований или изменял плотность ресурсов), его локальный клиент сохранил эти настройки в своём файле mod-settings.dat. При попытке зайти на сервер клиент обнаруживает несовпадение прототипов и отклоняет подключение.
Проверьте наличие файла настроек в каталоге сервера:
ls -la /opt/factorio/mods/mod-settings.dat
Если файла нет, сервер работает на заводских дефолтных значениях модов.
Перенос и синхронизация файла mod-settings.dat#
Самый надёжный способ синхронизации — настроить все параметры в интерфейсе локального клиента Factorio и скопировать готовый файл mod-settings.dat на сервер.
Найдите файл на локальном компьютере:
- Linux:
~/.factorio/mods/mod-settings.dat - Windows:
%appdata%\Factorio\mods\mod-settings.dat
Скопируйте файл на удалённый выделенный сервер с помощью утилиты scp:
scp ~/.factorio/mods/mod-settings.dat user@your-server-ip:/tmp/
На сервере переместите файл в каталог mods/ и назначьте владельцем сервисного пользователя factorio:
sudo mv /tmp/mod-settings.dat /opt/factorio/mods/mod-settings.dat
sudo chown factorio:factorio /opt/factorio/mods/mod-settings.dat
sudo chmod 644 /opt/factorio/mods/mod-settings.dat
Запуск службы и валидация контрольной суммы модов#
Перезапустите службу headless-сервера Factorio:
sudo systemctl restart factorio && sudo journalctl -u factorio -n 30 --no-pager
Проверьте лог инициализации прототипов в файле factorio-current.log:
grep -E "Loading mod settings|Checksum of" /opt/factorio/factorio-current.log
Строка Loading mod settings: ... и совпадение контрольной суммы прототипов (Checksum of base: ...) подтверждают, что сервер успешно прочитал бинарные параметры. Теперь любой игрок с идентичной сборкой модов подключится без предупреждений о несовпадении настроек.
Если вы хотите развернуть автоматизированный сервер Factorio Space Age с синхронизацией модов в один клик, регулярными бэкапами фабрик и защитой от сетевых задержек UPS/FPS, профессиональный хостинг серверов Factorio предоставляет оптимизированную инфраструктуру для масштабных фабричных миров.




