При подключении популярных кастомных карт (таких как Raven Creek, Bedford Falls, Grapeseed или Blackwood) администраторы серверов Project Zomboid часто сталкиваются с непонятным поведением: мод успешно скачан, чанки карты отображаются в игре и на них можно доехать на автомобиле из Малдро, но в меню создания нового персонажа или после гибели кастомный город отсутствует в списке точек появления (Spawn Locations).
В этом практическом руководстве мы разберём архитектурное разделение рендеринга мира и точек спавна в Project Zomboid, найдём файл spawnpoints.lua внутри директории мода и свяжем его с конфигурацией spawnregions.lua сервера.
Разделение загрузки чанков мира и меню выбора спавна#
В Project Zomboid за загрузку ландшафта и за отображение городов в стартовом меню отвечают два совершенно независимых механизма:
- Загрузка физических ячеек мира: управляется параметром
Map=в конфигурационном файле~/Zomboid/Server/<ИмяСервера>.ini. Например,Map=RavenCreek;Muldraugh, KYзаставляет игровой движок подгружать здания мода вместо стандартного леса. - Список точек спавна в интерфейсе: управляется отдельным Lua-скриптом
~/Zomboid/Server/<ИмяСервера>_spawnregions.lua.
Проверьте текущую строку загрузки карт в .ini:
grep -E "^Map=" ~/Zomboid/Server/servertest.ini
Если в конфигурации .ini указана строка Map=RavenCreek;Muldraugh, KY, карта функционирует, но пока в spawnregions.lua прописаны только стандартные города (Rosewood, West Point, Muldraugh, Riverside), движок не предоставит игрокам возможность появиться в кастомном городе.
Поиск файлов spawnpoints.lua в директории модификации#
Каждая качественная карта из мастерской Steam Workshop содержит готовый файл spawnpoints.lua, определяющий координаты кроватей, гостиниц и жилых комнат для старта.
Найдите расположение этого файла в каталоге модов сервера:
find ~/Zomboid/mods/ ~/Zomboid/SteamApps/workshop/content/108600/ \
-type f -name "spawnpoints.lua" 2>/dev/null
Команда вернёт пути, например: .../Raven Creek/media/maps/Raven Creek/spawnpoints.lua.
Нам требуется относительный путь карты внутри игрового движка: media/maps/Raven Creek/spawnpoints.lua.
Настройка таблицы spawnregions.lua для сервера#
Откройте файл ~/Zomboid/Server/servertest_spawnregions.lua (если файла нет, создайте его на основе стандартного шаблона):
cat << 'EOF' > ~/Zomboid/Server/servertest_spawnregions.lua
function SpawnRegions()
return {
{ name = "Muldraugh, KY", file = "media/maps/Muldraugh, KY/spawnpoints.lua" },
{ name = "West Point, KY", file = "media/maps/West Point, KY/spawnpoints.lua" },
{ name = "Rosewood, KY", file = "media/maps/Rosewood, KY/spawnpoints.lua" },
{ name = "Riverside, KY", file = "media/maps/Riverside, KY/spawnpoints.lua" },
{ name = "Raven Creek", file = "media/maps/Raven Creek/spawnpoints.lua" },
}
end
EOF
cat ~/Zomboid/Server/servertest_spawnregions.lua
Параметр name определяет отображаемое название города в интерфейсе клиента, а file указывает точный путь к файлу координат точек появления.
Применение изменений и тестирование создания персонажа#
Убедитесь, что директива SpawnRegionsFile в основном файле конфигурации не переопределена, и перезапустите сервер:
sudo systemctl restart zomboid && sudo journalctl -u zomboid -n 25 --no-pager
Подключитесь к серверу новым персонажем или выполните самоубийство на тестовом аккаунте: в окне выбора региона появления появится новый пункт «Raven Creek», переносящий выживших прямо в безопасные стартовые комнаты кастомной локации.
Если вы хотите запускать сборки Project Zomboid с поддержкой десятков Workshop-карт, автоматическим формированием точек спавна и защитой от конфликтов ячеек мира, современный хостинг серверов Project Zomboid предоставляет интуитивный веб-интерфейс для управления модами и зонами возрождения.




