Skip to main content

Project Zomboid Dedicated Server: Setup & Settings (Build 42)

Steam app 380870WindowsLinuxmacOS

A Project Zomboid dedicated server is a free download: Steam app 380870, which SteamCMD fetches with an anonymous login. It listens on port 16261 and 16262 by default, starts from StartServer64.bat on Windows or start-server.sh on Linux, and keeps its settings in servertest.ini unless you give it another name. Below: install, ports, memory, the config files, start options and all 144 server settings with their defaults.

Ports, scripts, memory, files and settings are read from the Build 42 server itself (depot manifest of 23 Sept 2026). Install and connection steps are adapted from PZwiki, Dedicated server (CC BY-NC-SA 3.0).

1. Install the server

In the Steam client the server sits under Library → Tools as “Project Zomboid Dedicated Server”; PZwiki advises not to start it from Steam. On a machine without Steam, use SteamCMD:

force_install_dir <folder for the server>
login anonymous
app_update 380870 validate
quit

Steps adapted from PZwiki, Dedicated server. PZwiki also advises running the server on Linux as its own user, not as root. Re-running app_update 380870 validate updates it.

2. Ports

SettingDefaultThe game's tooltip
DefaultPort16261Default starting port for player data. If UDP, this is this one of two ports used.
UDPPort16262—
RCONPort27015The port for the RCON (Remote Console)

Players reach the server on 16261 and 16262, so both must be open in the firewall and forwarded on the router; PZwiki gives both as UDP (PZwiki, Dedicated server). A second server on the same machine needs its own pair, set in its own .ini.

3. Start scripts and memory

SystemStart withMemory as shipped
WindowsStartServer64.bat, StartServer64_nosteam.bat-Xms16g -Xmx16g in StartServer64.bat
Linuxstart-server.sh-Xmx8g in ProjectZomboid64.json
macOSStartServer.commandnot read

On Windows, StartServer64.bat reserves 16 GB up front (-Xms16g) and caps the server at 16 GB. On a machine with less free memory, lower both numbers in that file before the first start — PZwiki notes the server will not start otherwise (PZwiki, Dedicated server). On Linux the limit is -Xmx8g in ProjectZomboid64.json — the script itself says to edit it there: “Edit memory option -Xmx in ProjectZomboid64.json for 64bit servers”.

4. First start and the config files

The first start asks for the admin account's password in the console — “Enter new administrator password:” — then writes the server's files into its Server folder — %USERPROFILE%\Zomboid\server on Windows, ~/Zomboid/Server on Linux (PZwiki, Server settings). Each file is named after the server, servertest by default; the server's code names 5 of them, where PZwiki lists four (it leaves out servertest_zombies.ini):

  • servertest.ini
  • servertest_SandboxVars.lua
  • servertest_spawnpoints.lua
  • servertest_spawnregions.lua
  • servertest_zombies.ini

servertest.ini holds the server settings listed below; servertest_SandboxVars.lua holds the world's sandbox rules (every option and preset: sandbox settings). Settings can also be changed while the server runs, with /showoptions, /changeoption and /reloadoptions.

5. Start options

Add them after the start script, for example start-server.sh -servername mysurvivors:

  • -adminpassword — admin password
  • -adminusername — admin account name
  • -cachedir= — moves the game's Zomboid folder, where the Server folder lives, to another path
  • -nosteam — a non-Steam server, for players on the non-Steam version (GOG)
  • -servername — picks the server's name — which config files it reads and which save it uses

16 more options are in the server's code without a description we can source: -anti-cheats, -console_dot_txt_size_kb=, -coop, -debugLogFile=, -debuglog=, -disablelog=, -gui, -ip, -no-attachment, -no-foraging, -no-worldgen, -port, -seed=, -steamvac, -udpport, -useTimeStampedLogFileNames=. The -servername and -nosteam descriptions follow PZwiki, Dedicated server; -cachedir= follows PZwiki, Game files.

6. Join the server

In the game: Join → Favorites, add the server's public IP and port 16261, then an account name and password (PZwiki, Dedicated server). Whether a new name gets in depends on the Open setting, on by default — the game's tooltip: “Clients may join without already having an account in the whitelist. If set to false, administrators must manually create username/password combos.” Players on the non-Steam version need a server started with -nosteam; on a LAN or VPN use the local address.

All 144 server settings (servertest.ini)

Every setting the server reads from its .ini, with its default and allowed range from the code and the tooltip the game shows for it. 23 settings ship without a tooltip. One mismatch inside the game: the BadWordPolicy tooltip lists choices up to 4, but the code accepts 1–3.

144 of 144 settings

SettingDefaultWhat it does (the game's tooltip)
PVPtruePlayers can hurt and kill other players
PVPLogToolChattruePVP is logged to admin chat
PVPLogToolFiletruePVP is logged to file
PauseEmptytrueGame time stops when there are no players online
GlobalChattrueToggles global chat on or off.
ChatStreamss,r,a,w,y,sh,f,allNo tooltip in the game
OpentrueClients may join without already having an account in the whitelist. If set to false, administrators must manually create username/password combos.
ServerWelcomeMessageWelcome to Project Zomboid Multiplayer! <LINE> <LINE> To int…The first welcome message visible in the chat panel. This will be displayed immediately after player login. you can use RGB colours to chance the colour of the welcome message. You can also use < LINE>, without the space, to create a separate lines within your text. Use: \<RGB:1,0,0> This message will show up red!
DisplayUserNametrueDisplay usernames above player's heads in-game.
ShowFirstAndLastNamefalseDisplay first & last name above player's heads.
UsernameDisguisesfalseNo tooltip in the game
HideDisguisedUserNamefalseNo tooltip in the game
SwitchZombiesOwnershipEachUpdatefalseNo tooltip in the game
SpawnPoint0,0,0Force every new player to spawn at these set x,y,z world coordinates. Find desired coordinates at map.projectzomboid.com. (Ignored when 0,0,0)
SafetySystemtruePlayers can enter and leave PVP on an individual basis. A player can only hurt another player when at least one of them is in PVP mode - as shown by the unobscured skull and crossbones on the left of the screen. When SafetySystem=false, players are free to hurt each other at any time if PVP is enabled.
ShowSafetytrueDisplay a skull icon over the head of players who have entered PVP mode
SafetyToggleTimer20–1000The time it takes for a player to enter and leave PVP mode
SafetyCooldownTimer30–1000The delay before a player can enter or leave PVP mode again, having recently done so
SafetyDisconnectDelay600–60No tooltip in the game
SpawnItems(empty)Item types new players spawn with.\nSeparate multiple item types with commas.\nExample: Base.Axe,Base.Bag_BigHikingBag
DefaultPort162610–65535Default starting port for player data. If UDP, this is this one of two ports used.
UDPPort162620–65535No tooltip in the game
ResetID10000000000–2147483647Reset ID determines if the server has undergone a soft-reset. If this number does match the client, the client must create a new character. Used in conjunction with PlayerServerID. It is strongly advised that you backup these IDs somewhere
Mods(empty)Enter the mod loading ID here. It can be found in \Steam\steamapps\workshop\modID\mods\modName\info.txt
MapMuldraugh, KYEnter the foldername of the mod found in \Steam\steamapps\workshop\modID\mods\modName\media\maps\
DoLuaChecksumtrueKick clients whose game files don't match the server's.
DenyLoginOnOverloadedServertrueNo tooltip in the game
PublicfalseShows the server on the in-game browser. (Note: Steam-enabled servers are always visible in the Steam server browser)
PublicNameMy PZ ServerName of the server displayed in the in-game browser and, if applicable, the Steam browser
PublicDescription(empty)Description displayed in the in-game public server browser. Typing \n will create a new line in your description
MaxPlayers321–254Maximum number of players that can be on the server at one time. This excludes admins. WARNING: Server player counts above 32 will potentially result in poor map streaming and desync. Please advance with caution.
PingLimit00–2147483647Ping limit, in milliseconds, before a player is kicked from the server. (Set to 0 to disable)
SafehousePreventsLootRespawntrueItems will not respawn in buildings that players have claimed as a safehouse
DropOffWhiteListAfterDeathfalseRemove player accounts from the whitelist after death. This prevents players creating a new character after death on Open=false servers
NoFirefalseAll forms of fire are disabled - except for campfires
AnnounceDeathfalseIf checked, every time a player dies a global message will be displayed in the chat
AnnounceAnimalDeathfalseIf checked, every time an animal dies a global message will be displayed in the chat
SaveWorldEveryMinutes00–2147483647Loaded parts of the map are saved after this set number of real-world minutes have passed. (The map is usually saved only after clients leave a loaded area)
PlayerSafehousefalseBoth admins and players can claim safehouses
AdminSafehousefalseOnly admins can claim safehouses
SafehouseAllowTrepasstrueAllow non-members to enter a safehouse without being invited
SafehouseAllowFiretrueAllow fire to damage safehouses
SafehouseAllowLoottrueAllow non-members to take items from safehouses
SafehouseAllowRespawnfalsePlayers will respawn in a safehouse that they were a member of before they died
SafehouseDaySurvivedToClaim00–2147483647Players must have survived this number of in-game days before they are allowed to claim a safehouse
SafeHouseRemovalTime1440–2147483647Players are automatically removed from a safehouse they have not visited for this many real-world hours
SafehouseAllowNonResidentialfalseGoverns whether players can claim non-residential buildings.
SafehouseDisableDisguisestrueNo tooltip in the game
MaxSafezoneSize200000–2147483647No tooltip in the game
AllowDestructionBySledgehammertrueAllow players to destroy world objects with sledgehammers
SledgehammerOnlyInSafehousefalseAllow players to destroy world objects only in their safehouse (require AllowDestructionBySledgehammer to true).
WarfalseNo tooltip in the game
WarStartDelay60060–2147483647Time in seconds before the war starts.
WarDuration360060–2147483647War duration in seconds.
WarSafehouseHitPoints30–2147483647Safehouse hit points limit.
ServerPlayerID2147483647ServerPlayerID determines if a character is from another server, or single player. This value may be changed by soft resets. If this number does match the client, the client must create a new character. This is used in conjunction with ResetID. It is strongly advised that you backup these IDs somewhere
RCONPort270150–65535The port for the RCON (Remote Console)
RCONPassword(empty)RCON password (Pick a strong password)
DiscordEnablefalseEnables global text chat integration with a Discord channel
DiscordToken(empty)Discord bot access token
DiscordChatChannel(empty)The Discord chat channel name
DiscordLogChannel(empty)The Discord logs channel name
DiscordCommandChannel(empty)The Discord commands channel name
WebhookAddress(empty)The Slack incoming webhook URL
Password(empty)Clients must know this password to join the server. (Ignored when hosting a server via the Host button)
MaxAccountsPerUser00–2147483647Limits the number of different accounts a single Steam user may create on this server. Ignored when using the Hosts button.
AllowCooptrueAllow co-op/splitscreen players
SleepAllowedfalsePlayers are allowed to sleep when their survivor becomes tired, but they do not NEED to sleep
SleepNeededfalsePlayers get tired and need to sleep. (Ignored if SleepAllowed=false)
KnockedDownAllowedfalseWIP: Activating this setting may cause visual desynchronization of player positions.
SneakModeHideFromOtherPlayerstrueNo tooltip in the game
UltraSpeedDoesnotAffectToAnimalsfalseNo tooltip in the game
WorkshopItems(empty)List Workshop Mod IDs for the server to download. Each must be separated by a semicolon. Example: WorkshopItems=514427485;513111049
SteamScoreboardfalseShow Steam usernames and avatars in the Players list.
SteamVACtrueEnable the Steam VAC system
UPnPtrueAttempt to configure a UPnP-enabled internet gateway to automatically setup port forwarding rules. The server will fall back to default ports if this fails
VoiceEnabletrueVOIP is enabled when checked
VoiceMinDistance100–100000The minimum tile distance over which VOIP sounds can be heard.
VoiceMaxDistance1000–100000The maximum tile distance over which VOIP sounds can be heard.
Voice3DtrueToggle directional audio for VOIP
SpeedLimit7010–150No tooltip in the game
LoginQueueEnabledfalseNo tooltip in the game
LoginQueueConnectTimeout6020–1200No tooltip in the game
server_browser_announced_ip(empty)Set the IP from which the server is broadcast. This is for network configurations with multiple IP addresses, such as server farms
PlayerRespawnWithSelffalsePlayers can respawn in-game at the coordinates where they died
PlayerRespawnWithOtherfalsePlayers can respawn in-game at a split screen / Remote Play player's location
FastForwardMultiplier401–100Governs how fast time passes while players sleep. Value multiplies the speed of the time that passes during sleeping.
DisableSafehouseWhenOwnerConnectedfalseSafehouse acts like a normal house if an owner of the safehouse is connected (so secure when the owner is offline)
FactiontruePlayers can create factions when true
FactionDaySurvivedToCreate00–2147483647Players must survive this number of in-game days before being allowed to create a faction
FactionPlayersRequiredForTag11–2147483647Number of players required as faction members before the faction owner can create a group tag
DisableRadioStafffalseDisables radio transmissions from players with an access level
DisableRadioAdmintrueDisables radio transmissions from players with 'admin' access level
DisableRadioGMtrueDisables radio transmissions from players with 'gm' access level
DisableRadioOverseerfalseDisables radio transmissions from players with 'overseer' access level
DisableRadioModeratorfalseDisables radio transmissions from players with 'moderator' access level
DisableRadioInvisibletrueDisables radio transmissions from invisible players
ClientCommandFilter-vehicle.*;+vehicle.damageWindow;+vehicle.fixPart;+vehicle.i…Semicolon-separated list of commands that will not be written to the cmd.txt server log. For example: \n-vehicle. Inputting * means do NOT write any vehicle command. Inputting: \n+vehicle.installPart means DO write that command
ClientActionLogsISEnterVehicle;ISExitVehicle;ISTakeEngineParts;Semicolon-separated list of actions that will be written to the ClientActionLogs.txt server log.
PerkLogstrueTrack changes in player perk levels in PerkLog.txt server log
ItemNumbersLimitPerContainer00–9000Maximum number of items that can be placed in a container. Zero means there is no limit. (PLEASE NOTE: This includes individual small items such as nails. A limit of 50 will mean only 50 nails can be stored.)
BloodSplatLifespanDays00–365Number of days before old blood splats are removed. Removal happens when map chunks are loaded. Zero means they will never disappear
AllowNonAsciiUsernamefalseAllow use of non-ASCII (cyrillic etc) characters in usernames
BanKickGlobalSoundtrueNo tooltip in the game
RemovePlayerCorpsesOnCorpseRemovalfalseIf enabled, when HoursForCorpseRemoval triggers, it will also remove player's corpses from the ground.
TrashDeleteAllfalseIf true, player can use the "delete all" button on bins.
PVPMeleeWhileHitReactionfalseIf true, player can hit again when struck by another player.
MouseOverToSeeDisplayNametrueIf true, players will have to mouse over someone to see their display name.
HidePlayersBehindYoutrueIf true, automatically hide the player you can't see (like zombies).
PVPMeleeDamageModifier300–500Damage multiplier for PVP melee attacks.
PVPFirearmDamageModifier500–500Damage multiplier for PVP ranged attacks.
CarEngineAttractionModifier0.50–10Modify the range of zombie attraction to cars. (Lower values can help with lag.)
PlayerBumpPlayerfalseGoverns whether players bump (and knock over) other players when running through them.
MapRemotePlayerVisibility11–4Controls display of remote players on the in-game map.\n1=Hidden 2=Friends 3=Friends and nearby players 4=Everyone
BackupsCount51–300No tooltip in the game
BackupsOnStarttrueNo tooltip in the game
BackupsOnVersionChangetrueNo tooltip in the game
BackupsPeriod00–1500No tooltip in the game
DisableVehicleTowingfalseDisables vehicle towing
DisableTrailerTowingfalseDisables trailer towing
DisableBurntTowingfalseDisables burnt vehicle towing
BadWordListFile(empty)Path to the file with the list of words to be prohibited. Each word must be on a separate line
GoodWordListFile(empty)Path to the file with the list of words that should be allowed, even if they contain bad word. Each word should be on a separate line.
BadWordPolicy31–3What to do with the sender of a bad word in the chat: 1 - ban, 2 - kick, 3 - record the violation in the database, 4 - mute
BadWordReplacement[HIDDEN]The symbol or piece of text that will replace the bad word
AntiCheatSafety21–4Disables safety system anti-cheat protection.
AntiCheatSpeed21–4Disables character speed anti-cheat protection.
AntiCheatNoClip41–4Disables character no-clipping anti-cheat protection.
AntiCheatHit21–4Disables character hit anti-cheat protection.
AntiCheatPacketException41–4Disables packet exception checks anti-cheat protection.
AntiCheatPermission21–4Disables player permissions anti-cheat protection.
AntiCheatXP21–4Disables player XP anti-cheat protection.
AntiCheatSafeHouse21–4Disables safehouse anti-cheat protection.
AntiCheatPlayer21–4Disables player anti-cheat protection.
AntiCheatChecksum21–4Disables checksum anti-cheat protection.
MultiplayerStatisticsPeriod10–10Sets the multiplayer update period in seconds. Statistics is disabled if value is 0.
DisableScoreboardfalseDisables scoreboard.
HideAdminsInPlayerListfalseHides admins in the player list.
MaxPacketsPerSecond300100–1000Sets the limit for processing network packets from each client on the server.
ShowCoordinatesfalseShows player character coordinates in the lower right corner.
Seedset at run timeThe worldgen seed used to generate the world. If you want to change this, put a new value in and delete map_worldgen.bin in your save directory.
UsePhysicsHitReactionfalseNo tooltip in the game
ChatMessageCharacterLimit20064–1024No tooltip in the game
ChatMessageSlowModeTime31–30No tooltip in the game

More Project Zomboid

Install, port-forwarding, folder and joining details on this page are adapted from PZwiki (PZwiki, Dedicated server, Server settings, Game files) and shared under the same licence, CC BY-NC-SA 3.0. Project Zomboid is a game by The Indie Stone. PinDrop is fan-made and not affiliated with The Indie Stone.