Project Zomboid Intermédiaire 12 min de lecture

Installer un serveur Project Zomboid dédié via SteamCMD (Windows et Linux)

Guide complet pour installer un serveur Project Zomboid dédié avec SteamCMD : App ID 380870, ports UDP 16261/16262, StartServer.bat, start-server.sh, premier démarrage et mot de passe admin.

Installer un serveur Project Zomboid dédié via SteamCMD (Windows et Linux)

Installer un serveur Project Zomboid dédié via SteamCMD (Windows et Linux)

Vous voulez héberger vous-même votre serveur Project Zomboid Build 42 sans passer par un hébergeur ? Ce guide vous accompagne pas à pas pour l’installer via SteamCMD, sur Windows comme sur Linux. Toutes les commandes, ports et chemins sont vérifiés contre la documentation officielle PZwiki et le SteamDB.

Pas envie de gérer SteamCMD, le firewall et les mises à jour ? Louez un serveur Project Zomboid chez HebergTonServ — installation auto Build 42, panel intuitif et support 24/7 dès 25,90€/mois.


Pré-requis matériels

ComposantMinimumRecommandé
CPU4 cœurs récents à bonne fréquenceAMD Ryzen 9 / Intel i7 (PZ est CPU-bound)
RAM8 Go (Build 42, ~4 joueurs vanilla)16 Go (Build 42 modé)
DisqueSSDSSD NVMe
Réseau20 Mbps montantsFibre, IP fixe ou DDNS
OSWindows 10/11, Debian/UbuntuWindows Server, Debian 12

Important : en Build 42, comptez ~6 Go de base + 500 Mo par joueur, la règle recommandée par The Indie Stone. Le détail complet (CPU, disque, réseau) est dans Configuration requise d’un serveur dédié Project Zomboid.


Étape 1 — Télécharger SteamCMD

Windows

  1. Téléchargez : https://steamcdn-a.akamaihd.net/client/installer/steamcmd.zip
  2. Extrayez dans C:\steamcmd\
  3. Lancez steamcmd.exe une première fois pour auto-update
  4. Attendez le prompt Steam>

Linux (Debian / Ubuntu)

sudo apt update
sudo apt install lib32gcc-s1 wget unzip -y
mkdir ~/steamcmd && cd ~/steamcmd
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar -xvzf steamcmd_linux.tar.gz
./steamcmd.sh

Étape 2 — Installer le serveur (App ID 380870)

L’App ID du serveur Project Zomboid dédié est 380870 (le client est 108600).

Windows

login anonymous
force_install_dir C:\pzserver\
app_update 380870 validate
quit

Ou en une ligne PowerShell :

steamcmd.exe +login anonymous +force_install_dir C:\pzserver\ +app_update 380870 validate +quit

Linux

Créez un user dédié pour la sécurité :

sudo adduser pzuser
sudo su - pzuser

Puis :

~/steamcmd/steamcmd.sh +login anonymous +force_install_dir /home/pzuser/pzserver/ +app_update 380870 validate +quit

Attendez le message Success! App '380870' fully installed avant de continuer.


Étape 3 — Structure des fichiers

Après installation :

pzserver/
├── StartServer64.bat              ← lanceur Windows 64-bit (cas standard)
├── StartServer64_nosteam.bat      ← lanceur Windows sans Steam (joueurs GOG)
├── StartServer32.bat              ← lanceur Windows 32-bit
├── start-server.sh                ← lanceur Linux
├── jre64/                         ← Java embarqué, rien à installer
├── steamapps/
└── ...

Les fichiers de configuration ne sont pas dans le dossier serveur. Ils sont créés dans le dossier utilisateur Zomboid/ à la racine du home :

  • Windows : C:\Users\<VotreUser>\Zomboid\
  • Linux : ~/Zomboid/

Étape 4 — Ouvrir les ports réseau

Project Zomboid utilise 2 ports UDP :

PortProtocoleUsage
16261UDPPort principal (DefaultPort)
16262UDPPort de connexion directe (UDPPort)

Pour héberger plusieurs instances PZ sur la même machine, décalez de +13 : 2e instance = 16274/16275.

Windows — règles firewall

PowerShell administrateur :

New-NetFirewallRule -DisplayName "Project Zomboid" -Direction Inbound -Protocol UDP -LocalPort 16261,16262 -Action Allow

Linux — UFW

sudo ufw allow 16261/udp
sudo ufw allow 16262/udp
sudo ufw reload

Routeur / Box

Forwardez ces 2 ports UDP vers l’IP locale de la machine serveur. Sans ça, vos amis ne pourront pas se connecter.


Étape 5 — Premier démarrage

Windows

Double-cliquez StartServer64.bat.

⚠️ Avant le premier lancement, ouvrez StartServer64.bat : la documentation officielle indique qu’il réserve 16 Go par défaut (-Xms et -Xmx). Sur une machine qui n’a pas cette mémoire, le serveur refuse de démarrer avec une erreur mémoire. Ajustez les deux valeurs (voir étape 6).

Ne lancez jamais le serveur depuis la bibliothèque Steam : utilisez le .bat. Si c’est arrivé, vérifiez l’intégrité des fichiers.

Au premier lancement, le serveur :

  1. Génère le dossier Zomboid/ dans votre home
  2. Demande deux fois le mot de passe admin dans la console
  3. Crée le monde par défaut “servertest”
  4. Démarre l’écoute sur 16261/16262

Linux

cd ~/pzserver
./start-server.sh

Mêmes étapes : mot de passe admin, génération monde, démarrage.

Mémorisez bien ce mot de passe : c’est celui du compte admin créé automatiquement. Connecté avec ce compte, vous pourrez promouvoir d’autres joueurs avec /setaccesslevel "pseudo" "admin". Le mot de passe RCON, lui, est distinct (RCONPassword dans servertest.ini).


Étape 6 — Personnaliser StartServer64.bat / start-server.sh

Windows — augmenter la RAM allouée

Ouvrez StartServer64.bat avec le Bloc-notes. Ligne type :

.\jre64\bin\java.exe -Xms8g -Xmx8g -Dzomboid.steam=1 -Dzomboid.znetlog=1 ...
FlagRôle
-Xms8gRAM minimum allouée
-Xmx8gRAM maximum allouée

Ajustez selon votre setup, en restant sous 75 % de la RAM de la machine : -Xmx8g pour ~4 joueurs vanilla, -Xmx12g pour ~12 joueurs, -Xmx16g pour 20 à 32 joueurs modés en Build 42.

Linux — script systemd

⚠️ The Indie Stone déconseille explicitement de gérer le serveur via systemd : un arrêt par signal ne garantit pas une sauvegarde propre du monde. Si vous le faites malgré tout, la documentation officielle passe par un FIFO (zomboid.control) pour envoyer save puis quit à l’arrêt. L’unité ci-dessous est la version minimale : ne l’arrêtez jamais sans avoir tapé save puis quit dans la console.

Pour faire tourner en service auto :

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

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

[Install]
WantedBy=multi-user.target

Activer + démarrer :

sudo systemctl enable pzserver
sudo systemctl start pzserver
sudo journalctl -u pzserver -f   # voir les logs

Étape 7 — Vérifier la visibilité du serveur

  1. Lancez Project Zomboid
  2. Multijoueur → Rejoindre
  3. Onglet Favoris → ajoutez votre IP publique IPv4 et le port 16261
  4. Nom de compte et mot de passe : ceux que vous voulez pour un joueur. Pour vous connecter en admin, utilisez le compte admin et le mot de passe choisi au premier démarrage

Avec Open=true (par défaut dans servertest.ini), un nouveau joueur crée son compte automatiquement à la première connexion. Si vous jouez sur la même machine que le serveur et que la connexion bloque, renseignez votre IP locale dans le champ Local IP.


Étape 8 — Mettre à jour le serveur

Quand The Indie Stone publie un patch :

steamcmd.exe +login anonymous +force_install_dir C:\pzserver\ +app_update 380870 validate +quit

Toujours arrêter le serveur avant la MAJ. Avant chaque MAJ majeure (Build 41 → 42), backupez Zomboid/Saves/ et Zomboid/Server/.


FAQ

Combien de RAM par joueur ?

La règle recommandée est 500 Mo par joueur, sur une base d’environ 6 Go en Build 42. Pour 16 joueurs : 6 + 8 = 14 Go, soit 16 Go en pratique avec des mods. Détail : Combien de RAM pour un serveur Project Zomboid ?

Différence entre App ID 108600 et 380870 ?

108600 = client Project Zomboid (le jeu). 380870 = serveur dédié — gratuit, anonyme via SteamCMD. Pas besoin du jeu pour héberger.

Mon serveur n’apparaît pas dans le browser PZ

Causes courantes :

  • Ports UDP 16261/16262 non ouverts ou non redirigés
  • Le serveur tourne mais Public=false dans servertest.ini (valeur par défaut) : il n’est pas listé dans le navigateur du jeu, mais reste joignable par IP
  • Votre machine a plusieurs IP : renseignez server_browser_announced_ip

Le serveur ne démarre pas avec « Illegal termination of worker thread » ?

Erreur documentée quand un serveur Build 41 a tourné sur la même machine avant l’installation de Build 42. Vérifiez que steam_appid.txt ne contient que 108600, sauvegardez vos .ini, .lua et saves, puis supprimez le dossier Zomboid de l’utilisateur : il sera recréé au prochain démarrage.

Comment changer le nom du monde “servertest” ?

Le nom interne du serveur est servertest. Pour en utiliser un autre, lancez le serveur avec :

./start-server.sh -servername MyServer

Le serveur génère alors MyServer.ini, MyServer_SandboxVars.lua, etc. dans Zomboid/Server/.

Build 41 ou Build 42 ?

Build 42 est stable depuis la version 42.20, sortie le 29 juillet 2026, multijoueur inclus, et c’est la branche Steam par défaut : app_update 380870 validate l’installe sans flag. Build 41 reste disponible via la branche legacy41 (app_update 380870 -beta legacy41 validate) pour les communautés dont les mods n’ont pas migré. Voir Passer son serveur en Build 42 stable.


Conclusion

Votre serveur Project Zomboid dédié est en ligne via SteamCMD. Étapes suivantes recommandées :

  1. Configurez servertest.ini — slots, mot de passe, RCON, PVP. Voir : Configurer servertest.ini Project Zomboid
  2. Tunez SandboxVars.lua — population zombies, loot, sprint, jour-nuit. Voir : Régler Sandbox.lua Project Zomboid
  3. Apprenez les commandes admin — /setaccesslevel, /addxp, /teleport. Voir : Liste commandes admin Project Zomboid
  4. Installez des mods — Workshop. Voir : Installer mods Workshop Project Zomboid

Pour un hébergeur Project Zomboid avec Build 42 pré-installé, jusqu’à 32 joueurs, panel intuitif et support 24/7, HebergTonServ est la référence française dès 25,90€/mois.

Pour aller plus loin