Перейти к основному содержимому
Вернуться в категорию

Установка сервера Project Zomboid: Руководство по Dedicated Server и модам

Настройка выделенного сервера Project Zomboid на REXE VDS с поддержкой модов, настройками песочницы и конфигурацией мультиплеера.

Время чтения: 14 dk Настройка игровых серверов
project zomboidsteamcmdигровой серверdedicated serverмодпесочницазомби

Содержание

Введение

Project Zomboid — это изометрическая игра на выживание с зомби от The Indie Stone. С обширной поддержкой модов и настройками песочницы вы можете создать уникальный опыт выживания на собственном выделенном сервере. В этом руководстве описана полная установка сервера Project Zomboid на REXE VDS, включая управление модами и конфигурацию песочницы.

Системные требования

РесурсМинимумРекомендуется
CPU2 ядра4+ ядра
RAM4 ГБ8+ ГБ
Диск10 ГБ SSD20+ ГБ NVMe
ОСUbuntu 22.04+Ubuntu 22.04 LTS
Сеть10 Мбит/с50+ Мбит/с

Потребление RAM сервером Project Zomboid увеличивается с количеством модов и размером карты. При использовании множества модов рекомендуется 8 ГБ+ RAM.

Установка SteamCMD

hljs bash
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install lib32gcc-s1 lib32stdc++6 -y
sudo adduser steam --disabled-login
sudo su - steam
mkdir ~/steamcmd && cd ~/steamcmd
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar -xzf steamcmd_linux.tar.gz

Загрузка файлов сервера

hljs bash
cd ~/steamcmd
./steamcmd.sh +force_install_dir ~/pzserver +login anonymous +app_update 380870 validate +quit

App ID выделенного сервера Project Zomboid: 380870. Первоначальная загрузка составляет примерно 3-5 ГБ.

Установка Java

hljs bash
sudo apt install openjdk-17-jre-headless -y
java -version

Конфигурация сервера

Первый запуск

hljs bash
cd ~/pzserver
./start-server.sh -servername rexeserver

Установите надёжный пароль администратора. Затем введите quit для остановки сервера.

Конфигурация servertest.ini

hljs bash
nano ~/Zomboid/Server/rexeserver.ini
hljs ini
PublicName=REXE Project Zomboid Сервер
MaxPlayers=32
Open=true
PVP=false
PauseEmpty=true
DefaultPort=16261
UDPPort=16262
SaveWorldEveryMinutes=10
PlayerSafehouse=true
SteamVAC=true
Map=Muldraugh, KY
Mods=
WorkshopItems=
VoiceEnable=true
LoginQueueEnabled=true

Ключевые параметры

ПараметрОписаниеПо умолчанию
DefaultPortИгровой порт (UDP)16261
UDPPortПорт прямого подключения (UDP)16262
MaxPlayersМаксимум игроков32
PVPPvP включёнfalse
PauseEmptyПауза когда пустоtrue

Настройки песочницы

SandboxVars.lua

hljs bash
nano ~/Zomboid/Server/rexeserver_SandboxVars.lua
hljs lua
SandboxVars = {
  Zombies = 4,                    -- 1=Безумие, 2=Очень много, 3=Много, 4=Нормально, 5=Мало
  Distribution = 1,               -- 1=Городской фокус, 2=Равномерное
  DayLength = 2,                  -- 1=15мин, 2=30мин, 3=1час, 4=2часа
  ZombieSpeed = 3,                -- 1=Спринтеры, 2=Быстрые шаркуны, 3=Шаркуны
  ZombieStrength = 3,             -- 1=Сверхчеловеческая, 2=Нормальная, 3=Слабая
  ZombieTransmission = 1,         -- 1=Кровь+Слюна, 2=Только слюна, 3=Все заражены
  XpMultiplier = 1.0,
  EnableVehicles = true,
  CarSpawnRate = 3,
}

Настройте параметры песочницы в соответствии с предпочтениями вашего сообщества.

Установка модов

Моды Steam Workshop

hljs ini
Mods=Hydrocraft;Arsenal(26)GunFighter;Brita_2
WorkshopItems=2778991038;2297098490;2275412165

Шаги установки модов

  1. Откройте страницу мода в Steam Workshop
  2. Скопируйте Workshop ID из URL
  3. Добавьте ID в строку WorkshopItems (через точку с запятой)
  4. Добавьте имя мода в строку Mods
  5. Перезапустите сервер

Несовместимость модов может вызвать сбои сервера. Тестируйте моды по одному.

Скрипт запуска

hljs bash
nano ~/pzserver/start.sh
hljs bash
#!/bin/bash
cd ~/pzserver
./start-server.sh \
  -servername rexeserver \
  -adminpassword ПАРОЛЬ_АДМИНА \
  -ip 0.0.0.0 \
  -port 16261 \
  -udpport 16262 \
  -players 32 \
  -cachedir=/home/steam/Zomboid \
  -Xmx4096m
hljs bash
chmod +x ~/pzserver/start.sh

Настройка портов

ПортПротоколНазначение
16261UDPИгровой порт Project Zomboid
16262UDPПорт прямого подключения

Правила файрвола

hljs bash
sudo ufw allow 16261/udp comment "PZ Game"
sudo ufw allow 16262/udp comment "PZ Direct"
sudo ufw reload

Автозапуск с systemd

hljs bash
sudo nano /etc/systemd/system/pzserver.service
hljs ini
[Unit]
Description=Project Zomboid Dedicated Server
After=network.target

[Service]
Type=simple
User=steam
WorkingDirectory=/home/steam/pzserver
ExecStart=/home/steam/pzserver/start.sh
Restart=on-failure
RestartSec=30

[Install]
WantedBy=multi-user.target
hljs bash
sudo systemctl daemon-reload
sudo systemctl enable pzserver
sudo systemctl start pzserver

Автоматическое обновление

hljs bash
nano ~/update_pz.sh
hljs bash
#!/bin/bash
echo "Остановка сервера Project Zomboid..."
sudo systemctl stop pzserver
~/steamcmd/steamcmd.sh +force_install_dir ~/pzserver +login anonymous +app_update 380870 +quit
sudo systemctl start pzserver
echo "Обновление завершено."
hljs bash
chmod +x ~/update_pz.sh
crontab -e
0 5 * * * /home/steam/update_pz.sh

Резервное копирование

hljs bash
nano ~/backup_pz.sh
hljs bash
#!/bin/bash
BACKUP_DIR="/home/steam/pz-backups"
SAVE_DIR="/home/steam/Zomboid/Saves"
DATE=$(date +%Y%m%d_%H%M%S)
mkdir -p $BACKUP_DIR
tar -czf "$BACKUP_DIR/pz_save_$DATE.tar.gz" -C "$SAVE_DIR" .
find $BACKUP_DIR -name "*.tar.gz" -mtime +7 -delete
echo "Резервное копирование завершено: pz_save_$DATE.tar.gz"
hljs bash
chmod +x ~/backup_pz.sh
crontab -e
0 */4 * * * /home/steam/backup_pz.sh

Команды администратора

/adduser имя_пользователя пароль
/addusertowhitelist имя_пользователя
/setaccesslevel имя_пользователя admin
/kickuser имя_пользователя
/banuser имя_пользователя
/save
/quit

Заключение

Установка выделенного сервера Project Zomboid быстро выполняется с помощью SteamCMD. С обширными настройками песочницы и поддержкой модов вы можете создать уникальный опыт выживания с зомби для вашего сообщества.