Ana içeriğe geç
Kategoriye Dön

Project Zomboid Sunucu Kurulumu: Dedicated Server ve Mod Rehberi

REXE VDS üzerinde Project Zomboid dedicated sunucu kurulumu, mod desteği, sandbox ayarları ve multiplayer yapılandırması rehberi.

Okuma süresi: 14 dk Oyun Sunucusu Kurulumları
project zomboidsteamcmdoyun sunucusudedicated servermodsandboxzombi

İçindekiler

Giriş

Project Zomboid, The Indie Stone tarafından geliştirilen izometrik zombi hayatta kalma oyunudur. Kapsamlı mod desteği ve sandbox ayarları ile kendi dedicated sunucunuzu kurarak benzersiz bir hayatta kalma deneyimi oluşturabilirsiniz. Bu rehberde REXE VDS üzerinde Project Zomboid sunucu kurulumunu, mod yönetimini ve sandbox yapılandırmasını detaylı olarak anlatacağız.

Sistem Gereksinimleri

KaynakMinimumÖnerilen
CPU2 Çekirdek4+ Çekirdek
RAM4 GB8+ GB
Disk10 GB SSD20+ GB NVMe
OSUbuntu 22.04+Ubuntu 22.04 LTS
10 Mbps50+ Mbps

Project Zomboid sunucusu mod sayısına ve harita büyüklüğüne bağlı olarak RAM tüketimini artırır. Çok sayıda mod kullanıyorsanız 8 GB+ RAM önerilir.

SteamCMD Kurulumu

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

Project Zomboid Sunucu Dosyalarını İndirme

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

Project Zomboid Dedicated Server App ID: 380870. İlk indirme yaklaşık 3-5 GB disk alanı kaplar.

Java Kurulumu

Project Zomboid sunucusu Java gerektirir:

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

Sunucu Yapılandırması

İlk Başlatma

Sunucuyu ilk kez başlatarak yapılandırma dosyalarını oluşturun:

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

Admin şifresi sorulduğunda güçlü bir şifre belirleyin. Ardından quit yazarak sunucuyu durdurun.

servertest.ini Yapılandırması

hljs bash
nano ~/Zomboid/Server/rexeserver.ini
hljs ini
PublicName=REXE Project Zomboid Sunucusu
PublicDescription=REXE Teknoloji PZ Dedicated Server
MaxPlayers=32
Open=true
PVP=false
PauseEmpty=true
DefaultPort=16261
UDPPort=16262
Password=
MaxAccountsPerUser=5
PingLimit=400
HoursForLootRespawn=0
MaxItemsForLootRespawn=4
ConstructionPreventsLootRespawn=true
DropOffWhiteListAfterDeath=false
NoFire=false
AnnounceDeath=true
MinutesPerPage=2.0
SaveWorldEveryMinutes=10
PlayerSafehouse=true
AdminSafehouse=false
SafehouseAllowTrepass=true
SafehouseAllowFire=true
SafehouseAllowLoot=true
SafehouseAllowRespawn=false
SafehouseDaySurvivedToClaim=0
SafeHouseRemovalTime=144
AllowDestructionBySledgehammer=true
SledgehammerOnlyInSafehouse=false
SteamScoreboard=true
SteamVAC=true
Map=Muldraugh, KY
Mods=
WorkshopItems=
ResetID=0
ServerPlayerID=
AutoCreateUserInWhiteList=false
DoLuaChecksum=true
DenyLoginOnOverloadedServer=true
LoginQueueEnabled=true
LoginQueueConnectTimeout=60
VoiceEnable=true
VoiceMinDistance=10.0
VoiceMaxDistance=100.0
Voice3D=true
SpeedLimit=1.0
ServerWelcomeMessage=REXE Project Zomboid Sunucusuna Hosgeldiniz! <LINE> <RGB:1,0,0> Kurallar icin /help yazin.

Önemli Parametreler

ParametreAçıklamaVarsayılan
DefaultPortOyun portu (UDP)16261
UDPPortDoğrudan bağlantı portu (UDP)16262
MaxPlayersMaksimum oyuncu32
PVPPvP aktif mifalse
PauseEmptyBoşken duraklattrue
SaveWorldEveryMinutesOtomatik kayıt sıklığı (dk)10

Sandbox Ayarları

SandboxVars.lua

Sandbox ayarları oyun deneyimini tamamen özelleştirmenizi sağlar:

hljs bash
nano ~/Zomboid/Server/rexeserver_SandboxVars.lua
hljs lua
SandboxVars = {
  Zombies = 4,                    -- 1=Insane, 2=Very High, 3=High, 4=Normal, 5=Low
  Distribution = 1,               -- 1=Urban Focused, 2=Uniform
  DayLength = 2,                  -- 1=15min, 2=30min, 3=1hr, 4=2hr, 5=3hr
  StartMonth = 7,                 -- Başlangıç ayı (1-12)
  StartDay = 1,                   -- Başlangıç günü
  StartTime = 2,                  -- 1=7am, 2=9am, 3=12pm, 4=2pm, 5=5pm, 6=9pm, 7=12am, 8=2am, 9=5am
  WaterShut = 2,                  -- 0=Instant, 1=0-30 days, 2=0-2 months, 3=0-6 months, 4=0-1 year, 5=0-5 years, 6=Never
  ElecShut = 2,                   -- Aynı değerler
  WaterShutModifier = 14,         -- Su kapanma günü
  ElecShutModifier = 14,          -- Elektrik kapanma günü
  FoodLoot = 2,                   -- 1=Extremely Rare, 2=Rare, 3=Normal, 4=Common, 5=Abundant
  WeaponLoot = 2,
  OtherLoot = 2,
  Temperature = 3,                -- 1=Very Cold, 2=Cold, 3=Normal, 4=Hot, 5=Very Hot
  Rain = 3,                       -- 1=Very Dry, 2=Dry, 3=Normal, 4=Rainy, 5=Very Rainy
  ErosionSpeed = 3,               -- 1=Very Fast, 2=Fast, 3=Normal, 4=Slow, 5=Very Slow
  XpMultiplier = 1.0,             -- XP çarpanı
  Farming = 3,                    -- 1=Very Fast, 2=Fast, 3=Normal, 4=Slow, 5=Very Slow
  NatureAbundance = 3,            -- Doğal kaynak bolluğu
  ZombieSpeed = 3,                -- 1=Sprinters, 2=Fast Shamblers, 3=Shamblers
  ZombieStrength = 3,             -- 1=Superhuman, 2=Normal, 3=Weak
  ZombieToughness = 3,            -- 1=Tough, 2=Normal, 3=Fragile
  ZombieTransmission = 1,         -- 1=Blood+Saliva, 2=Saliva Only, 3=Everyone's Infected
  ZombieCognition = 3,            -- 1=Navigate+Use Doors, 2=Navigate, 3=Basic Navigation
  ZombieMemory = 2,               -- 1=Long, 2=Normal, 3=Short, 4=None
  ZombieSight = 2,                -- 1=Eagle, 2=Normal, 3=Poor
  ZombieHearing = 2,              -- 1=Pinpoint, 2=Normal, 3=Poor
  PlayerBuildingMultiplier = 1.0,
  SurvivorHouseChance = 0,
  VehicleStoryChance = 0,
  ZoneStoryChance = 0,
  StarterKit = false,
  AllowExteriorGenerator = true,
  MaxFogIntensity = 1.0,
  MaxRainFxIntensity = 1.0,
  EnableSnowOnGround = true,
  TimeSinceApo = 0,
  PlantResilience = 3,
  PlantAbundance = 3,
  EndRegen = 3,
  Helicopter = 1,                 -- 0=Never, 1=Once, 2=Sometimes
  MetaEvent = 1,                  -- 0=Never, 1=Sometimes
  SleepingEvent = 1,              -- 0=Never, 1=Sometimes
  RearVulnerability = 3,          -- 1=Low, 2=Medium, 3=High
  AttackBlockMovements = true,
  AllClothesUnlocked = false,
  EnableVehicles = true,
  CarSpawnRate = 3,               -- 1=None, 2=Very Low, 3=Low, 4=Normal
  InitialInfection = 1,           -- Başlangıç enfeksiyon seviyesi
}

Sandbox ayarlarını topluluğunuzun tercihlerine göre özelleştirin. Yeni oyuncular için zombi hızını "Shamblers" ve loot'u "Normal" yapmanız önerilir.

Mod Kurulumu

Steam Workshop Modları

Mod eklemek için rexeserver.ini dosyasında:

hljs ini
Mods=mod1;mod2;mod3
WorkshopItems=workshop_id1;workshop_id2;workshop_id3

Örnek popüler modlar:

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

Mod Ekleme Adımları

  1. Steam Workshop'ta mod sayfasını açın
  2. URL'den Workshop ID'yi kopyalayın (örn: steamcommunity.com/sharedfiles/filedetails/?id=2778991038)
  3. WorkshopItems satırına ID'yi ekleyin (noktalı virgülle ayırın)
  4. Mods satırına mod adını ekleyin
  5. Sunucuyu yeniden başlatın

Mod uyumsuzlukları sunucu çökmelerine neden olabilir. Modları tek tek ekleyerek test edin.

Başlatma Scripti

hljs bash
nano ~/pzserver/start.sh
hljs bash
#!/bin/bash
cd ~/pzserver
./start-server.sh \
  -servername rexeserver \
  -adminpassword ADMIN_SIFRE \
  -ip 0.0.0.0 \
  -port 16261 \
  -udpport 16262 \
  -players 32 \
  -cachedir=/home/steam/Zomboid \
  -Xmx4096m
hljs bash
chmod +x ~/pzserver/start.sh

Port Ayarları

PortProtokolKullanım
16261UDPProject Zomboid oyun portu
16262UDPDoğrudan bağlantı portu

Firewall Kuralları

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

Otomatik Başlatma (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
TimeoutStartSec=120

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

Otomatik Güncelleme

hljs bash
nano ~/update_pz.sh
hljs bash
#!/bin/bash
echo "Project Zomboid sunucusu durduruluyor..."
sudo systemctl stop pzserver
echo "Güncelleme kontrol ediliyor..."
~/steamcmd/steamcmd.sh +force_install_dir ~/pzserver +login anonymous +app_update 380870 +quit
echo "Sunucu yeniden başlatılıyor..."
sudo systemctl start pzserver
echo "Güncelleme tamamlandı."
hljs bash
chmod +x ~/update_pz.sh
crontab -e
0 5 * * * /home/steam/update_pz.sh

Yedekleme

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 "Yedekleme tamamlandı: pz_save_$DATE.tar.gz"
hljs bash
chmod +x ~/backup_pz.sh
crontab -e
0 */4 * * * /home/steam/backup_pz.sh

Admin Komutları

Sunucu konsolundan kullanılabilecek temel admin komutları:

/adduser kullanici_adi sifre          # Kullanıcı ekle
/addusertowhitelist kullanici_adi     # Whitelist'e ekle
/setaccesslevel kullanici_adi admin   # Admin yap
/kickuser kullanici_adi               # Oyuncuyu at
/banuser kullanici_adi                # Oyuncuyu banla
/save                                  # Dünyayı kaydet
/quit                                  # Sunucuyu kapat

Sonuç

Project Zomboid dedicated sunucu kurulumu SteamCMD ile hızlıca tamamlanabilir. Kapsamlı sandbox ayarları ve mod desteği ile topluluğunuz için benzersiz bir zombi hayatta kalma deneyimi oluşturabilirsiniz. REXE VDS'in güçlü altyapısı ve Path.net DDoS koruması ile sunucunuz güvenle çalışır.