Skip to content

Project Zomboid Admin Commands: Full List & Access Levels

Grant admin with setaccesslevel, then run every Project Zomboid server command — player moderation, spawning, weather, safehouses and XP, with Build 42 accuracy.

Updated August 19, 2026
Project Zomboid

Project Zomboid admin commands let you moderate players, spawn items and vehicles, teleport, control the weather, drop hordes, and reconfigure the server without restarting it. This guide covers how admin access works, where each command can be typed, and the full command set for Build 42 — the stable branch since 29 July 2026, currently 42.20.3 — plus the two commands that only exist on the older legacy41 branch.

1. Access Levels

Project Zomboid has five named access levels plus none. You set them with /setaccesslevel. If you are working out which of your staff belongs on which level, our game server moderation guide covers the trade-offs:

Level Set with Notes
admin /setaccesslevel "user" "admin" Full access to every command and the in-game admin panel
moderator /setaccesslevel "user" "moderator" Moderation-focused staff role
overseer /setaccesslevel "user" "overseer" Staff role below admin
gm /setaccesslevel "user" "gm" Game-master role, event and spawn oriented
observer /setaccesslevel "user" "observer" Watch-only staff role
none /setaccesslevel "user" "none" Strips the access level and returns the account to a normal player

Build 42 gates individual actions behind capabilities rather than a fixed per-role command list — the 42.16.0 changelog references named capabilities such as Capability.EditMapSymbols and Capability.ChangeAccessLevel. Which capabilities each role holds is edited in the in-game admin panel, not in a config file, and no full role-to-command matrix is published. The reliable rule is: admin can run everything below; anything else depends on how your server's capabilities are configured.

The one place SERVERNAME.ini distinguishes levels by name is radio transmissions — DisableRadioAdmin, DisableRadioGM, DisableRadioOverseer, DisableRadioModerator, plus DisableRadioStaff for anyone holding an access level at all.

2. How to Set Admin with /setaccesslevel

A dedicated server creates a single default admin account the first time it boots and prompts you for its password on the console. That account is your way in — everyone else is promoted from it with /setaccesslevel.

You can skip the interactive prompt with launch arguments:

bash start-server.sh -adminusername BobTheAdmin75 -adminpassword ReallySecurePassword
start-server.sh — non-interactive admin setup
  • -adminusername <name> uses a different username for the default admin account. It does not remove an existing default admin.
  • -adminpassword <pass> sets the default admin password automatically, bypassing the prompt — but only if no default admin user exists yet.
  • -coop runs a co-op server instead of a dedicated one and disables the default admin account entirely.

To promote a second person once you are in, use /setaccesslevel "PlayerName" "admin" — or "moderator", "overseer", "gm", "observer", or "none" to demote.

/grantadmin and /removeadmin no longer exist

Both commands were removed in Build 35. Guides that still tell you to type /grantadmin "Username" are years out of date and the command will simply fail. Use /setaccesslevel "username" "admin" to promote and /setaccesslevel "username" "none" to demote.

Use the panel Console tab for the first login

On your Project Zomboid game server you do not need SSH to reach the server console. Open the Console tab in your panel and type commands there without a leading slash — that is the fastest route for setaccesslevel, adduser and banid, all of which you may need before you can get in-game.

3. Using the In-Game Admin Panel

The admin panel is a UI, not a command, and there is no key to press for it. Once your account holds a role that carries the admin tool, a round ADMIN button appears in the strip of icons down the left edge of the screen, directly under the round CLIENT button. Click it to open the panel and click it again to close it. It is multiplayer-only — the button is only built when your game is connected to a server.

There is no F1 admin panel

In the game's own key binding list F1 is Toggle Survival Guide, and that list contains no entry for the admin panel at all. Guides that tell you to press F1 — or any other key — are wrong. The ADMIN button is the way in.

What the panel does that chat commands cannot

Panel button Why you would use it instead of chat
See Roles Open a role, tick or untick its capabilities, Save. This is the only place capabilities are edited
See Users Right-click a player row for Set Role, teleport, kick, ban, inventory inspection and user logs. You can only set a role at or below your own
Admin Power Toggle your own cheats: invisible, god mode, noclip, fast move, instant timed actions, unlimited carry, endurance and ammo, know all recipes, build, farming, fishing, health, mechanics, moveable and animal cheats, see all, hear all, zombies don't attack, brush tool, LootZed and the loot log
Sandbox Options Edit the sandbox settings of the running world and hit Apply. /changeoption only reaches SERVERNAME.ini options — it does not touch sandbox values
Item List Search the item list and spawn from it, so you do not need to know the module.item ID
Zone Editor, Safezone, Non-PVP Zone, See Safehouses Draw and manage zones and safehouses on the map
See Tickets Read and answer the tickets players send in
Mini Scoreboard, Show Statistics, PVP Log Tool, See Server Options Live views of who is connected, server statistics, PVP history and the current option values

Every button is gated on its own named capability. A button that is greyed out is not broken — your role does not hold the capability behind it.

The ADMIN button is not there

When your role carries no admin tool the button is hidden, not greyed out. Confirm the promotion actually landed, then disconnect and rejoin so your client picks up the new role.

4. Where Commands Are Typed

Location How Slash prefix?
In-game chat Press T, type the command Yes — /players
Server console The terminal window running the server, or your panel Console tab No — players
RCON Any RCON client, default port 27015 No
systemd FIFO echo "save" > /opt/pzserver/zomboid.control No

RCON is enabled with the RCONPort (default 27015) and RCONPassword keys in SERVERNAME.ini.

An RCON password is not optional

RCONPassword ships blank and the RCON listener binds to all interfaces by default. Set a strong password before you expose the port, or restrict the listener to localhost with the rconlo system property (added in 41.67) and reach it over an SSH tunnel instead. On Build 42 before 42.18.0, running players over RCON could throw a java.nio.BufferOverflowException — update if you hit that.

Some commands need a position, so the console cannot run them alone

/alarm sounds an alarm at the admin's own position and only works if you are standing in a room, so it is in-game only. /createhorde, /lightning and /thunder treat the username argument as optional in-game (it defaults to you) but require it when run from the server console or RCON, because the console has no character to anchor to.

Run /help for the live command list on your build, or /help <command> for one command's usage string. Some things are case-sensitive: Base.Axe works, base.axe does not.

5. Players, Whitelist and Accounts

Command What it does
/players List all connected players
/list No help text shipped. Build 42 only
/help or /help "command" List all commands, or show one command's help text
/servermsg "My Message" Broadcast a message to every connected player
/adduser "username" "password" Create an account on a whitelisted server
/setpassword "username" "newpassword" Change an existing user's password
/removeuserfromwhitelist "username" Remove a user from the whitelist
/addsteamid "steamid" Add a SteamID to the server's allowed-SteamID list
/removesteamid "steamid" Remove a SteamID from that list

/adduser matters only when Open=false in SERVERNAME.ini — with Open=true clients create their own account on first join. See Project Zomboid Server Settings and Config Files for the rest of the whitelist options.

6. Kicks, Bans and Mutes

Command What it does
/kickuser "username" -r "reason" Kick a player, with an optional reason. Also accepted as /kick
/banuser "username" -ip -r "reason" Ban a player. -ip also bans their IP, -r sets a reason
/unbanuser "username" Lift a username ban
/banid <SteamID> Ban a SteamID — works while the player is offline
/unbanid <SteamID> Lift a SteamID ban
/banip <IP> Ban an IP address
/unbanip <IP> Lift an IP ban
/voiceban "username" -true Block a player's voice chat. -false unblocks
/removemapsymbolsforuser "username" Wipe every shared map symbol a user has drawn

The command is registered as kick but the usage string the game ships says kickuser; both forms are accepted, and /help kick will show the exact string your build expects.

banip and unbanip were restored for Steam servers on direct connections in Build 42.19.0 — on older Build 42 releases they may not apply to Steam-authenticated joins.

7. Spawning Items, Keys and Vehicles

Command What it does
/additem "username" "module.item" count Give an item. Omit the username to give it to yourself; count is optional
/removeitem "module.item" count Remove items from yourself. Count 0 removes all of that type
/addkey "username" "keyId" "name" Give a key. Name is optional
/addvehicle "script" "user or x,y,z" Spawn a vehicle on a player or at coordinates
/additem "rj" Base.Axe 5
/removeitem Base.Axe 5
/addkey "rj" "7295" "Gift Key"
/addvehicle "Base.VanAmbulance" "rj"
In-game chat — spawning

Item and vehicle names are internal IDs, not display names

/additem takes a module.item pair such as Base.Axe, and it is case-sensitive — base.axe fails. Vehicle scripts are the same: the Chevalier Dart is Base.SmallCar, the Franklin Valuline is Base.Van, the Masterson Horizon is Base.SmallCar02 and the Dash Elite is Base.ModernCar. Look the ID up on the item's or vehicle's wiki page before typing it.

8. Granting XP

/addxp takes an internal perk name, not the skill's display name:

/addxp "rj" Woodwork=2
In-game chat — granting XP

Fourteen perk names do not match the skill's in-game name at all. These are the ones that catch people out:

Skill (in-game) Perk name for /addxp
Carpentry Woodwork
First Aid Doctor
Electrical Electricity
Foraging PlantScavenging
Running Sprinting
Lightfooted Lightfoot
Sneaking Sneak
Short Blade SmallBlade
Short Blunt SmallBlunt
Long Blunt Blunt
Welding MetalWelding
Blacksmithing Blacksmith
Agriculture Farming
Animal Care Husbandry

The remaining twenty use their display name with spaces removed: Axe, LongBlade, Spear, Maintenance, Aiming, Reloading, Fitness, Strength, Nimble, Cooking, Mechanics, Tailoring, Masonry, Pottery, Glassmaking, Carving, Fishing, Trapping, Butchering and Tracking.

9. Movement, God Mode and Invisibility

Command What it does
/teleport "playername" Teleport yourself to a player
/teleport "player1" "player2" Teleport player1 to player2
/teleportplayer "player1" "player2" Teleport one player to another (Build 42)
/teleportto x,y,z Teleport to map coordinates, e.g. /teleportto 10000,11000,0
/noclip "username" -true Pass through walls and structures. Toggles if no value is given
/godmode "username" -true Make a player invincible. Defaults to you if no username
/godmodeplayer "username" -true Make a specific player invincible (Build 42)
/invisible "username" -true Hide a player from zombies. Defaults to you if no username
/invisibleplayer "username" -true Hide a specific player from zombies (Build 42)

After a teleport, wait for the map chunk to stream in before moving — the character can appear to be stuck in a void for a second or two.

godmod and godmode are both accepted

The command is registered internally as godmod (and godmodplayer), which is a known typo in the game. Both the misspelled and correctly spelled forms work, and the same applies to godmodplayer / godmodeplayer. This is confirmed as still present in 42.17.0.

10. Zombies and Events

Command What it does
/createhorde count "username" Spawn a horde near a player, e.g. /createhorde 150 "rj"
/createhorde2 No help text shipped. A second horde-spawn variant by name
/removezombies No help text shipped. Removes zombies by name
/remove No help text shipped. Build 42 only
/chopper Trigger the helicopter event on a random player
/gunshot Play a gunshot sound near a random player
/alarm Sound a building alarm at your position. You must be inside a room

Six commands ship with no help text at all

/addtosafehouse, /kickfromsafehouse, /createhorde2, /list, /remove and /removezombies return an untranslated placeholder such as UI_ServerOptionDesc_RemoveZombies instead of a description, both in /help and on the wiki. They exist and they run, but their arguments are undocumented by the developers. Test them on a backup world before using them on a live server.

11. Weather

Command What it does
/startrain "intensity" Start rain. Optional intensity is 1-100
/stoprain Stop the rain
/startstorm "duration" Start a storm. Optional duration is in in-game hours
/stopweather Stop all weather
/thunder "username" Thunder at a player's position
/lightning "username" Lightning at a player's position

/thunder and /lightning take an optional username in-game but require one from the console.

12. Server Configuration and Lifecycle

Command What it does
/showoptions Print every current server option and its value
/changeoption optionName "newValue" Change a server option live
/reloadoptions Re-read SERVERNAME.ini from disk and push it to clients
/save Force a world save
/quit Save and shut the server down
/checkModsNeedUpdate Check whether any Workshop mod has been updated. Writes the answer to the log
/reloadlua "filename" Reload a single Lua file on the server
/reloadalllua Reload every Lua script on the server (Build 42)
/stats none/file/console/all period Set or clear server statistics output, e.g. /stats file 10
/log "Type" "Level" Change the log verbosity of one subsystem
/worldgen start Control the world generator: start, recheck, stop, status (Build 42)

/log accepts these types:

General Network Multiplayer Voice Packet NetworkFileDebug Lua Mod Sound
Zombie Combat Objects Fireplace Radio MapLoading Clothing Animation Asset
Script Shader Input Recipe ActionSystem IsoRegion UniTests FileIO
Ownership Death Damage Statistic Vehicle Checksum
Valid /log types

Levels are Trace, Debug, General, Warning and Error.

The /changeoption and /reloadoptions pair is the useful workflow: edit SERVERNAME.ini on disk while the server runs, then /reloadoptions to make the change live without a restart. /changeoption does the same for a single value without touching the file. For what each option means, see Project Zomboid Server Settings and Config Files.

13. Safehouse Commands

Command What it does
/releasesafehouse Release a safehouse you own
/addtosafehouse No help text shipped. Adds a player to a safehouse by name
/kickfromsafehouse No help text shipped. Removes a player from a safehouse by name

These are only relevant when PlayerSafehouse=true or AdminSafehouse=true in SERVERNAME.ini.

14. Build 41 vs Build 42

Build 42 added seventeen commands that Build 41 does not have: addkey, addsteamid, addtosafehouse, banip, unbanip, godmodplayer, invisibleplayer, kickfromsafehouse, list, reloadalllua, remove, removeitem, removemapsymbolsforuser, removesteamid, setpassword, teleportplayer and worldgen. It also added none as a valid /setaccesslevel value.

Two commands documented for Build 41 (41.78.16) are not in the Build 42 list:

Command What it does
/clear Clear the server console window
/replay "playername" -record/-play/-stop filename Record or replay a player's movement, e.g. /replay user1 -record stadion.bin

On the legacy41 branch /replay is a genuinely useful anti-cheat tool. Do not expect it to work on Build 42.

15. FAQ

How do I make myself admin in Project Zomboid?

The dedicated server creates one admin account on first boot and prompts you for its password in the console. Log in with that username and password. To promote anyone else, run /setaccesslevel "username" "admin" from in-game chat, or setaccesslevel "username" "admin" from the server console or your panel Console tab.

Why does /grantadmin not work?

Because it was removed from the game in Build 35, along with /removeadmin. Any guide still recommending it predates that change. Use /setaccesslevel "username" "admin" instead, and /setaccesslevel "username" "none" to demote someone back to a normal player.

Do I type the slash or not?

In-game chat needs the leading slash: /players. The server console, your panel Console tab and RCON do not: players. Everything else about the command is identical between the two.

How do I see every command my server actually supports?

Type /help in chat or help in the console for the full list on your exact build, and /help <command> for one command's usage string. That is authoritative for your version — mods can also register their own commands, which will show up there and nowhere else.

How do I spawn an item or a car?

/additem "username" "module.item" count for items and /addvehicle "script" "user or x,y,z" for vehicles. Both take internal IDs, not display names, and both are case-sensitive: Base.Axe works, base.axe does not. The Chevalier Dart, for instance, is Base.SmallCar.

How do I change a server setting without restarting?

Either run /changeoption optionName "newValue" for a single value, or edit SERVERNAME.ini on disk and then run /reloadoptions to push the whole file to the running server and its clients. Use /showoptions first to see the current values and confirm you have the option name right.

Can I run these commands over RCON?

Yes. Set RCONPassword and RCONPort (default 27015) in SERVERNAME.ini and connect with an RCON client. Commands are typed without the leading slash, and commands that depend on your character's position — /alarm in particular — cannot work from RCON at all.


Made with 💜 by GameServerKings

Need a Project Zomboid server?

Deploy an instantly-provisioned Project Zomboid server on high-clock hardware — DDoS protected, no contracts, cancel anytime.

From $5.40 /month