Skip to content

Vintage Story Server Commands: Full List and Privileges

Grant admin with /op, then run every Vintage Story server command — roles and privileges, world and player control, land claims, moderation and client dot-commands.

Updated August 07, 2026
Vintage Story

Vintage Story gates commands behind a role-and-privilege system rather than a simple admin flag, so most "command not working" problems are really permission problems. This guide covers that model, how to grant yourself admin on a fresh server, and the server and client command sets.

1. Where Commands Are Typed

The prefix tells you which command set you are in.

Prefix Set Runs on Example
/ Server commands The server — affects the world and other players /gamemode creative
. Client commands Your own game client only .viewdistance 800

Both are typed into the in-game chat window (default key T). Server commands also run from the server console — the terminal the dedicated server runs in — and from StartupCommands in serverconfig.json.

The console is a caller, not a player

Console commands run as "Console Admin" and skip privilege checks, but no player is attached. Anything the game marks RequiresPlayer — most of /weather, all of /waypoint, /whenwillitstopraining, and anything using the s[] self-selector — fails there. Run those from in-game chat as an admin.

/help lists every server command your role can run, and /help <command> gives its syntax. .chb opens the in-game command handbook, which is generated from the running build — the official wiki's command list is still tagged for version 1.15, so .chb wins any disagreement.

2. Roles and Privileges

Vintage Story has no numbered admin levels. It has roles, each a named bundle of privileges, defined in the Roles array of serverconfig.json. DefaultRoleCode sets what new players get, and it ships as suplayer.

Role code Name Priv. level Default mode Claim allowance (m³)
suvisitor Survival Visitor -1 Survival 0
crvisitor Creative Visitor -1 Creative 0
limitedsuplayer Limited Survival Player -1 Survival 0
limitedcrplayer Limited Creative Player -1 Creative 0
suplayer Survival Player (default) 0 Survival 262,144
crplayer Creative Player 100 Creative 1,310,720
sumod Survival Moderator 200 Survival 1,310,720
crmod Creative Moderator 500 Creative 1,310,720
admin Admin 99999 Survival 2,147,483,647

Privilege level is not a command rank — it is the level at which a player may build in protected areas. The -1 roles cannot touch protected ground at all; admin at 99999 overrides everything, and is the only default role with AutoGrant: true, so any privilege registered at runtime by the engine or a mod is granted to it automatically.

These are the privileges the engine defines:

Privilege Allows
build / useblock Place or break blocks / interact with them
buildblockseverywhere / useblockseverywhere Same, ignoring area permissions (still needs creative mode)
attackplayers / attackcreatures Damage players / non-player creatures
freemove / gamemode / pickingrange Fly and change speed / set own game mode / set own picking range
chat / selfkill Use chat / use /kill
kick / ban / whitelist Kick, ban and unban, whitelist and unwhitelist
announce / setwelcome Server-wide announcements / set the welcome message
readlists View client, group, ban and area lists
give Create items and blocks from a code
areamodify / setspawn Claim land / set the default spawn
tp / time Teleport / read and modify world time
controlserver Restart or shut down the server, reload mods
commandplayer Run a command targeting another player
grantrevoke Set player roles, grant and revoke privileges
root Everything
controlplayergroups / manageplayergroups / manageotherplayergroups Join and op own groups / create and disband them / modify other players' groups

grantrevoke cannot promote anyone above its holder

A player with grantrevoke may only assign a role at their own privilege level or lower, and only hand out privileges they already hold. That is what stops a moderator quietly making themselves admin.

Mods extend this list — the vanilla survival mod itself registers denybreakreinforced at runtime. /list privileges and /list role show the live set on your own server.

3. Granting Yourself Admin

Nobody becomes admin automatically

There is no "first player to join is the owner" rule. On your own new server you get suplayer, which cannot manage privileges, so the first grant must come from the console or serverconfig.json — never from in-game chat.

/op <playername> is an alias for /player <playername> role admin. On a dedicated server, run it from the console:

/whitelist add YourPlayerName
/op YourPlayerName
Server console — first-run bootstrap

Dedicated servers enforce the whitelist by default (WhitelistMode 0 means on for dedicated, off for singleplayer-open-to-LAN), so on a new box you usually need the whitelist line before you can connect at all. With no interactive console, put the commands in serverconfig.json instead — they run on next boot, separated by line breaks:

"StartupCommands": "/whitelist add YourPlayerName \n /op YourPlayerName",
serverconfig.json — op yourself on next start

On the GameServerKings panel

The Console tab in your panel is a live server console, so /op YourPlayerName there is the fastest route — no file edit, no restart.

There is no /deop

Demote with /player <playername> role suplayer. Revoking single privileges from admin will not stick either, because AutoGrant re-grants them.

4. Player and Entity Selectors

Most player-targeting commands accept a selector instead of a name, which turns one-at-a-time moderation into a single command.

Selector Targets
playername One player by name (alias for a[name=playername])
s[] The calling player
o[] All online players
a[] Everyone who has ever logged in

Bracketed selectors take filters: role, name, group, namematches (glob wildcard) and range (max distance from the caller). So o[namematch=b*,range=10,role=admin] selects online admins within 10 blocks whose name starts with b.

/entity uses its own filters — s[] self, l[] the entity you are looking at, p[] all players, e[] all entities — narrowed by name, type, class, alive, range and minx/maxx-style volume bounds, e.g. e[type=gazelle,range=3,alive=true].

5. Managing Players and Roles

/player acts on one player; /role edits the role definition and so affects everyone holding it.

Command What it does
/player <name> role [rolename] Show or set the player's role
/player <name> privilege [grant|revoke] [priv] List, grant or revoke individual privileges
/player <name> stats / gamemode <0-3> / whitelist [on] Privilege summary / show or set game mode / whitelist state
/player <name> clearinv / wipedata Clear inventory / wipe all player data
/player <name> movespeed <v> / allowcharselonce Set move speed / allow one more class re-pick
/player <name> landclaimallowance|landclaimmaxareas <0-9999> Extra claim volume or count on top of the role's
/player <name> entity Show position, satiety and health
/player <name> entity health|maxhealth|satiety|temp|intox <v> Set that stat directly
/player <name> entity maxoxygen <ms> Breath timer in milliseconds (default 20000)
/role <rolename> privilege grant|revoke <priv> Add or remove a privilege from the role
/role <rolename> spawnpoint <x> [y] <z> Role-specific spawn point
/role <rolename> landclaimallowance <m³> / landclaimmaxareas <n> Max claimable volume (default 131072 = 4 chunks) / max non-adjacent claims (default 3)
/role <rolename> landclaimminsize <x y z> Smallest claimable cuboid (default 6x6x6)
/role crplayer privilege grant buildblockseverywhere
/role crplayer landclaimallowance 2621440
/role crplayer landclaimmaxareas 12
/autosavenow
A builder role that can fly but not moderate

6. Moderation, Bans and Whitelist

Command Privilege What it does
/kick <name> [reason] kick Kick a player
/ban <name> [reason] / /unban <name> ban Ban or lift a ban
/whitelist add <name> whitelist Add a player to the whitelist
/list clients|banned|role|privileges readlists Connected clients, bans, roles, privileges
/announce <message> announce Server-wide message in all chat groups
/pm <name> <message> chat Private message (creates a temporary group)

Enforcement is a server setting, not a per-player one: /serverconfig whitelistmode default|off|on (or 0|1|2). The old OnlyWhitelisted key no longer controls enforcement and can be ignored.

7. Game Mode, Teleporting and Items

Command What it does
/gamemode <0-3> (alias /gm) 0 guest, 1 survival, 2 creative, 3 spectator
/gamemode <playername> <0-3> Set another player's mode (needs commandplayer)
/tp <x> <y> <z> / =x =y =z / ~x ~y ~z Teleport to pretty, absolute (Ctrl+F3) or relative coordinates
/tp <playername> [coords] Teleport to a player, or send that player elsewhere
/tpwp <name> Teleport to a waypoint whose name starts with <name>
/giveblock <blockcode>[{attrs}] [qty] [toplayer] Give a block; attributes are JSON in braces, no space
/giveitem <itemcode> [qty] [toplayer] [attrs] Give an item
/clearinv / /kill Empty your inventory / kill your character
/emote <wave|cheer|shrug|cry|nod|facepalm|bow|laugh|rage> Play an emote
/charsel Reopen the character selection menu
/waypoint add|addp|addat|addati|modify|remove|list|deathwp Manage your map waypoints

Mode names shorten to any unambiguous length, so /gm cr works, and recipients of /giveitem need a free inventory slot or the stack is lost. /waypoint needs only the chat privilege, so ordinary players get it; deathwp toggles an automatic waypoint where you die, and colours may be any .NET colour name or hex code.

8. Land Claims, Groups and Reinforcement

Claims are the main anti-griefing tool, built from one or more adjacent cuboids.

Command What it does
/land list / /land info Your claims with their index numbers / who owns the spot you are on
/land free <index> / /land adminfree Delete your claim / delete another player's at your position
/land claim new / start / end Begin a claim, then mark the corners of a cuboid
/land claim grow|shrink <dir> <-99..99> Resize the selected cuboid
/land claim fullheight / add Extend it world bottom to top / add it to the claim
/land claim grant|revoke <player> [use|all] Grant or revoke access; use interacts only, all adds build rights
/land claim grantgroup|revokegroup <group> [use|all] Same for a player group
/land claim allowuseeveryone <true|false> Open or close use access to everyone
/land claim save [desc] / cancel / load <0-999> Save, discard, or reopen a claim for editing
/group create|disband|rename|invite|acceptinvite|leave|list|info|kick|op|deop Player groups — private chat channels you can also grant claims to
/bre and /gbre grant|revoke|grantgroup|revokegroup Access to your own, or your group's, reinforced blocks

/bre and /gbre need only the chat privilege — reinforcement permissions are managed by players, not admins.

9. Time, Weather and Temporal Storms

Time commands can damage a world

The official wiki carries an explicit warning that modifying time with commands frequently has unwanted side effects. Test /time on a throwaway world, or take a /genbackup first.

Command What it does
/time / /time set <hours> Show the time / set the clock, 24-hour decimal (1.5 = 01:30)
/time set <preset> midnight 0, witchinghour 3, sunrise 6.5, morning 8, latemorning 10, day/lunch 12, afternoon 14, sunset 17.5, night 20, latenight 22
/time setmonth <jan…dec> / add <h>:<m> / stop / resume Set the month, advance the calendar, freeze or resume time
/time speed <0-9999> / hoursperday / calendarspeedmul Time speed (default 60), hours per day (24), calendar multiplier (0.5)
/weather / /weather lp Print current weather stats / list loaded patterns
/weather setprecip <-1..1> / setprecipa Override precipitation (-1 clears clouds, 1 heaviest rain) / release the override
/weather stoprain / acp Skip to a time with no rain / toggle auto-changing patterns
/weather t / c Transition to a random pattern, slowly or quickly
/weather set|seti <pattern> / setir <pattern> / setirandom Set a pattern instantly — globally, region-only, or random
/weather setev|setevr <event> / randomevent Weather event globally or per-region / random event
/weather setw <lightbreeze|mediumbreeze|still|storm|strongbreeze> Set the wind pattern
/whenwillitstopraining / /dweather [reset] When the rain stops / show or reset rift activity
/nexttempstorm [now] Days until the next temporal storm, or start one immediately

/weather setprecip is permanent until you undo it — the server stays in that rain state indefinitely and it survives a restart. Clear it with /weather setprecipa.

10. Entities

Command What it does
/entity count <filter> / countg <filter> Count matching entities, flat or grouped by code prefix
/entity spawnat <type> <amount> <position> <radius> Spawn entities; valid types live in the survival mod's entity assets
/entity remove <filter> Remove matching creatures
/entity cmd <filter> kill|move|setgen <n>|setattr|setlact Act on matched entities, e.g. /entity cmd l[] setgen 10
/entity cmd <filter> stopanim|stoptask Stop an animation or an AI task
/entity cmd wipeall Remove every entity except players from loaded chunks
/entity debug <0|1> / spawndebug <0|1> Toggle entity debug or spawn debug mode

Entity ids are revealed by the client command .clientconfig showEntityDebuginfo 1 — that is how you target one specific trader for removal.

11. Server Control and Configuration

Command What it does
/serverconfig maxclients <n> / maxchunkradius <n> Slot cap / highest chunk radius a client may load
/serverconfig password <string> / nopassword Set or clear the join password (no spaces)
/serverconfig whitelistmode <default|off|on> Whitelist enforcement
/serverconfig allowpvp|allowfirespread|allowfallingblocks <bool> PvP, fire spread, block gravity
/serverconfig entityspawning <bool> / spawncapplayerscaling <0..1> Global creature spawning / spawn-cap growth per player (0.75)
/serverconfig tickrate <10-100> / passtimewhenempty <bool> Tick rate / whether time passes with nobody online
/serverconfig defaultspawn <x> [y] <z> / setspawnhere Set the default spawn
/serverconfig antiabuse <Off|Basic|Pedantic> / temporaryipblocklist|loginfloodprotection <0|1> Anti-abuse level / IP block list and login flood protection
/stats / /info ident|seed|createdversion|mapsize Live tick rate and memory / world identity, seed, version, size
/autosavenow / /genbackup [filename] Force a save / full save-game copy, without pausing
/stop / /allowlan <on|off> Shut down / allow LAN connections (runtime only)
/moddb install|remove|list|search|searchcompatible|searchfor ModDB install and search tools (1.18.0-pre.7+)

Most /serverconfig changes are written immediately but need a world restart to take effect: /autosavenow, then /stop, then start the server again.

World settings are a separate namespace — /worldconfig <name> reads a value, /worldconfig <name> <value> sets one, and keys that do not exist yet must be created with /worldconfigcreate <bool|int|float|double|string> <name> <value>. Keys are case-sensitive. The full list is in Vintage Story Server Settings and World Config.

12. World Generation, Chunks and Debug Tools

Command What it does
/chunk cit / printmap Chunk generation info / export a PNG of loaded chunks
/chunk unload <0|1> / forceload <x1> <z1> <x2> <z2> Toggle auto-unloading / keep an area loaded
/wgen pregen <radius> Pregenerate chunks around the player
/wgen regen|regenr|regenc|regenrc <radius> Regenerate around player or world spawn, optionally random-seeded
/wgen del <radius> / delrock <radius> Remove chunks / remove rock around the player
/wgen tree <code> [size] / pos <coords|structures|climate|…> Spawn a tree, e.g. /wgen tree walnut / worldgen data here
/wgen testmap|genmap|region <climate|forest|wind|gprov|landform|ore> Render worldgen maps as PNG
/fixmapping applyall Apply block and item remapping after a version upgrade
/bir getid|getcode|remap Block id remapper — repairs blocks broken by removed or updated mods
/debug rooms list|hi|unhi Room registration tools (replaced /roomregdebug in 1.19)
/debug rift clear|fade|spawn|spawnhere Rift management
/debug logticks <ms> / tickhandlers / chunk stats|here|resend|relight Slow-tick logging, tick handler list, chunk diagnostics
/macro addcmd|setcmd|priv|desc|show|save|delete|list Build a server-side macro running several commands under one name
/we / /npc / /npcs WorldEdit toolbar / NPC control and activity tools

/debug has many more subcommands for mod and engine development — code exports, held-item attributes, network benchmarking — which /help debug enumerates. /macro priv is the useful one for delegation: set it to controlserver to keep a macro admin-only, or build to expose it to ordinary players.

/wgen regen and /wgen delrock are destructive

Regenerating chunks discards everything players built in them, and delrock clears a large box around you and can stall the server for minutes. Take a /genbackup first.

13. Client Commands

These start with a dot, change only your own game, and need no privileges.

Command What it does
.chb / .help [command] Command handbook / list or explain client commands
.clientconfig / .clientconfigcreate <name> <type> <value> Read, set or create a client config key
.viewdistance <n> / .zfar <n> View distance with no upper limit / far clipping plane (default 1000)
.freemove / .noclip / .movespeed <n> / .lockfly <1|2|3> Flight, noclip, speed, axis lock
.gui [bool] / .cam / .recordingmode / .timelapse <days> <months> Hide GUIs, camera modes, brighter recording, timelapse capture
.chatsize <w> <h> / .clearchat / .pastemode <single|multi> Chat window controls
.cp posi|aposi|apos|chat Copy position or chat history to the clipboard
.clients / .online [ping] / .serverinfo / .reconnect Online players, server info, reconnect
.map purgedb|redraw|worldmapsize <h> <w> World map database and size
.moon / .time / .weather / .charsel Moon phase, local time, weather, character selection
.debug wireframe <entity|chunk|region|blockentity|ambsounds> Wireframe overlays
.debug find <blockname> / fov <n> / fog <n> / shake <n> Locate a block; field of view, fog, screen shake
.reload shapes|textures|lang / .reloadhandbook Hot-reload assets for mod development
.we / .bsedit / .tfedit [fp|tp|gui|ground] WorldEdit, block selection and transform editors

14. FAQ

How do I become admin on a Vintage Story server?

Run /op YourPlayerName from the server console, or the Console tab of your hosted Vintage Story server. There is no automatic owner — everyone joining a new server gets suplayer, which cannot manage privileges, so the first grant has to come from the console or from StartupCommands in serverconfig.json.

What is the difference between / and . commands?

/ commands are server commands: they change the world, other players or server settings, and are subject to privilege checks. . commands affect only your own game — view distance, camera, GUI, debug overlays — and need no permissions.

Why does my command say I lack permission when I am an admin?

First check that /player YourName role really returns admin. If it does, you are probably running a RequiresPlayer command from the server console, which has no player attached — run it from in-game chat instead.

How do I remove someone's admin rights?

There is no /deop. Set the role explicitly with /player <name> role suplayer. Revoking individual privileges from admin will not stick, because that role has AutoGrant: true and re-acquires engine and mod privileges automatically.

Can I let players build without giving them creative mode?

Yes. Grant build and useblock, and land claims still protect other people's plots. buildblockseverywhere is the privilege that overrides claims, and it only takes effect in creative mode anyway. For a trusted builder, /player <name> role crplayer is usually right.

How do I let players claim more land?

Raise it per role with /role <rolename> landclaimallowance <cubic metres> and /role <rolename> landclaimmaxareas <n>. For one person, /player <name> landclaimallowance <n> adds extra on top of whatever the role grants.

Why can't anyone connect to my new dedicated server?

Dedicated servers enforce the whitelist by default. Add yourself with /whitelist add YourPlayerName from the console, or turn enforcement off with /serverconfig whitelistmode off and restart the world.


Made with 💜 by GameServerKings

Need a Vintage Story server?

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

From $4.90 /month