A dedicated Project Zomboid server is the right tool when the world should stay online without the host client. On current Build 42 stable, the server application is Steam App ID 380870 and anonymous SteamCMD login works. The most common failures are not “server magic”: they are wrong build files, mismatched server identity, closed UDP ports, stale mods, or an update applied without a save/config backup.
Quick answer
Install the dedicated server with SteamCMD using app_update 380870 validate on the current Stable branch.
Forward/allow UDP 16261 and 16262 for current Build 42 internet hosting; LAN-only play does not need router forwarding.
Back up Server configs, Multiplayer saves and database data before changing build branch, server name, cache path or Workshop list.
At a glance
Swipe horizontally to view all columns.
| Stage | Windows example | What matters |
|---|---|---|
Install | steamcmd +login anonymous +force_install_dir D:\PZServer +app_update 380870 validate +quit | Use the dedicated app 380870, not the game app |
First run | StartServer64.bat | Let Build 42 generate the config/save family |
Configure | Zomboid\Server\servertest.ini | Keep server name consistent with its files |
Network | UDP 16261 + 16262 | Firewall and router forwarding for WAN |
Update | Stop → SteamCMD update → start | Never update a live writing save |
Install and prove a vanilla server first
Download App 380870, run the server once, set a strong admin password, join the world, save, stop cleanly and restart. Do this before adding Workshop mods. If vanilla persistence is not proven, mods only add more variables to troubleshoot.
Know which files define the world
The server name selects the INI/Lua configuration family and the Multiplayer save identity. Keep the same server name and cache root after the world becomes durable. A mismatch can look like a wiped map even when the old files still exist.
Open only the ports you need
For current Build 42 player traffic, UDP 16261 and 16262 are the important ports in current guides. Add OS firewall rules and router forwarding only when the server must be reachable from outside the LAN.
Backup before updates and mod changes
Stop the server cleanly. Copy the Server folder, Multiplayer save, database and mod records before major changes. Then run SteamCMD again. If a patch or Workshop update breaks something, a verified backup is faster than trying to reconstruct the old world from memory.
Troubleshooting and common mistakes
Swipe horizontally to view all columns.
| Problem | Fix / response |
|---|---|
Server starts but no one can join | Check OS firewall, router forwarding, Public/password settings and that the clients are on the same build. |
World looks reset after changing launch options | Verify server name/cachedir and point the launch back to the original config/save identity. |
Mods download but joining fails | Check both Mods= and WorkshopItems=, dependencies and load order, then fully restart. |
Update broke the world | Stop experimenting and restore the pre-update backup before changing more variables. |
FAQ
What is the dedicated server Steam App ID?
380870.
Which ports should I start with on Build 42?
Current Build 42 guides use UDP 16261 and 16262 for player traffic.
Can I host without SteamCMD?
Yes, the Steam dedicated-server tool is another route, but SteamCMD is the easiest repeatable install/update method for a headless box.
