Сервер Project Zomboid на Build 42: запуск, servertest.ini и почему он не стартует
Как поднять выделенный сервер Project Zomboid после выхода стабильной 42.20: установка через Steam или SteamCMD, память в StartServer64.bat, порты 16261–16262, что менять в servertest.ini и что делать, если сервер не запускается.
29 июля 2026 года Build 42 стал стабильным, и мультиплеер переехал в основную ветку вместе с ним. До этого почти пять лет стабильной была 41-я сборка. Большинство гайдов в интернете написано под неё, поэтому люди делают всё по инструкции, а сервер не запускается или запускается без модов.
Здесь собрано то, что относится к актуальной версии: установка, память, порты, файлы настроек и список поломок, на которые натыкаются чаще всего.
Что поменялось в Build 42
Флаг -beta для 42-й сборки больше не нужен, она ставится по умолчанию. Если хочешь
остаться на 41-й, выбирай ветку legacy41.
Мир со старой сборки не переносится. Хостеры и вики пишут об этом одинаково: под B42 заводи новый мир. Даже сохранения с нестабильной 42.19 не открываются на 42.20, потому что на карте появился новый контент.
И сервер стал заметно прожорливее. Инвентарь, контейнеры и раздача лута теперь считаются на сервере, клиент в этом больше не участвует. По словам хостеров, на 8 ГБ сервер B42 падал, стоило нескольким игрокам одновременно убежать в незагруженные районы.
Установка
Сервер ставится отдельно от игры. В библиотеке Steam включи фильтр «Инструменты» и найди Project Zomboid Dedicated Server. Запускать его из Steam не нужно, он стартует через батник. Если кнопку «Играть» всё-таки нажали, проверь целостность файлов.
Если хочешь держать сервер в отдельной папке, ставь через SteamCMD:
force_install_dir C:\PZServer
login anonymous
app_update 380870 validate
quit
380870 — номер выделенного сервера в Steam. Обновляется он той же командой.
Первый запуск и память
В папке сервера три батника: StartServer64.bat, StartServer32.bat и
StartServer64_nosteam.bat. Тебе почти наверняка нужен первый.
Перед запуском открой его блокнотом. В строке запуска по умолчанию стоит 16 ГБ памяти. Если
у тебя столько свободной нет, сервер упадёт на старте с ошибкой памяти. Найди -Xms и
-Xmx и впиши то, что реально можешь отдать:
-Xms8g -Xmx8g
На первом старте консоль попросит пароль для администратора. Запиши его куда-нибудь, этим аккаунтом ты будешь заходить с правами админа. Потом сервер создаст мир с настройками по умолчанию и сообщит, получилось или нет.
Если играешь с того же компьютера, где крутится сервер, память у них общая. Отдал серверу 8 ГБ из 16 — игре останется меньше половины, и Windows тоже что-то нужно. Для компании из двух-трёх человек серверу обычно хватает меньше.
Порты
Серверу нужны 16261/UDP (основной) и 16262/UDP (прямое подключение).
Чтобы зашли друзья через интернет, пробрось оба порта на роутере и открой их в брандмауэре
Windows. В одной локальной сети или общей VPN-сети проброс не нужен, подключаются по
локальному или VPN-адресу. В servertest.ini это параметры DefaultPort и UDPPort,
трогать их приходится, когда на одной машине запускаешь второй сервер.
Где лежат настройки
Настройки хранятся в папке пользователя, рядом с батником их нет:
%USERPROFILE%\Zomboid\Server
| Файл | Что в нём |
|---|---|
servertest.ini | имя, пароль, слоты, PvP, моды, порты, бэкапы |
servertest_SandboxVars.lua | правила мира: зомби, лут, время, свет и вода |
servertest_spawnpoints.lua | точки появления игроков |
servertest_spawnregions.lua | города, в которых можно начать |
Сам мир лежит в %USERPROFILE%\Zomboid\Saves\Multiplayer\servertest.
servertest здесь просто имя сервера по умолчанию. Допиши в строку запуска после
zombie.network.GameServer параметр -servername pizza, и сервер возьмёт pizza.ini и
заведёт отдельный мир. Удобно, когда хочется тестовый сервер рядом с основным.
Что поменять в servertest.ini сразу
Файл длинный, но в первый вечер хватит десятка строк.
PublicName задаёт имя в списке серверов, а Public решает, показывать ли сервер в игровом
браузере. Если сервер только для своих, заполни Password. Параметр Open=false пускает
только по учёткам, которые завёл админ, то есть включает жёсткий белый список.
MaxPlayers — число слотов. Разработчики предупреждают, что после 32 начинаются рассинхрон и
проблемы с подгрузкой карты. PVP и SafetySystem отвечают за то, можно ли бить других
игроков и включается ли PvP вручную. PauseEmpty=true останавливает время, пока на сервере
никого нет. Для небольшой компании это удобно.
Бэкапы (BackupsCount, BackupsOnStart) не выключай. RCON (RCONPort, RCONPassword)
нужен для удалённой консоли. Если ты им не пользуешься, оставь пароль пустым и не открывай
порт наружу.
Изменения в servertest.ini можно сохранять прямо на работающем сервере и применять
командой reloadoptions. SandboxVars.lua я бы правил на остановленном.
Моды тоже прописываются в servertest.ini, но в 42-й сборке формат строк изменился. Про это
отдельная статья. Команды для управления
запущенным сервером собраны в шпаргалке админа, правила
мира — в статье про настройки песочницы.
Сервер не запускается
Окно сразу закрывается
В большинстве случаев виновата память: в -Xmx больше, чем свободно, или опечатка в самом
значении. Открой командную строку и запусти батник из неё, тогда текст ошибки не пропадёт
вместе с окном.
«Assertion Failed: Illegal termination of worker thread»
Такое бывает, если на этой машине раньше стоял сервер B41. Вики советует открыть
steam_appid.txt в папке сервера и проверить, что там одна строка 108600. Не помогло —
скопируй куда-нибудь свои .ini, .lua и сохранения, удали %USERPROFILE%\Zomboid и дай
серверу B42 создать папку заново.
Сервер запущен, а зайти нельзя
Посмотри, какой адрес стоит у сервера в «Избранном» клиента: нужен настоящий публичный IPv4
и порт 16261. Проверь, что UDP-порты проброшены. Если сервер хоть раз запускали из Steam,
останови его командой quit, проверь файлы и запусти через батник.
Персонаж висит в пустоте
Обычно это старый профиль, которым играли на сервере через кнопку «Хост». В окне
подключения поменяй имя учётки, например player на player_1, и зайди заново.
Кикает из-за контрольной суммы
У клиента и сервера разные файлы, и почти всегда дело в модах. Проверку делает
DoLuaChecksum. Выключать её, лишь бы пустило, я не советую: после этого на сервер пройдёт
кто угодно с изменёнными файлами.
Как отдать разбор агенту
Большая часть возни с сервером — читать длинный лог и искать одну неправильную строку в нескольких конфигах. Пересказывать это чату долго, а агент может открыть файлы сам.
Дока — ИИ-агент для компьютера, который читает и правит файлы и запускает команды.
Покажи ей папку Zomboid и папку сервера и пиши как человеку:
- «Сервер закрывается при старте. Посмотри батник и последний лог и скажи, в чём дело»;
- «Сделай копию настроек, потом выставь 6 слотов, пароль и выключи PvP»;
- «Сравни мой
servertest.iniс бэкапом и покажи, что изменилось»; - «Подними лут оружия в два раза, остальное не трогай».
Ни лог на тысячу строк, ни конфиг копировать в чат не нужно. Перед экспериментом попроси сделать бэкап, а перед сохранением — показать, какие строки поменяются.
Пока на компьютере работают сервер и игра, на локальную модель может не хватить памяти. На это время в Доке проще подключить облачную модель по API-ключу, а локальную включать, когда сервер выключен.
Ночной перезапуск и копию сохранений перед ним можно поставить на расписание.
С чего начать
Поставь сервер, поправь память в StartServer64.bat, запусти с настройками по умолчанию и
зайди сам по 127.0.0.1. Пока это не заработало, больше ничего не меняй.
Дальше меняй по одному параметру и перезапускай после каждого. Если что-то сломалось и непонятно почему, скачай Доку и попроси её прочитать лог. Похожие разборы у нас есть для DayZ и Forge-сервера Minecraft.