This guide covers the commands and permissions you’ll use most when running a TShock server. If you haven’t installed TShock yet, start with our installation guide.
All commands are typed in the in-game chat. You must be logged into an account with the right permissions to use admin commands.
Player Management
| Command | What It Does |
|---|---|
/who | List all connected players |
/kick <player> [reason] | Remove a player (they can rejoin) |
/ban add <player> [reason] | Permanently ban a player |
/ban del <player> | Unban a player |
/ban list | View all bans |
/mute <player> | Mute a player in chat |
/unmute <player> | Unmute a player |
User Accounts
| Command | What It Does |
|---|---|
/user add <name> <password> <group> | Create an account in a specific group |
/user group <name> <group> | Move a player to a different group |
/user password <name> <newpass> | Reset someone’s password |
/register <password> | Player self-registers (if allowed) |
/login <name> <password> | Log into an account |
Teleportation and Warps
| Command | What It Does |
|---|---|
/tp <player> | Teleport to a player |
/tphere <player> | Pull a player to you |
/spawn | Teleport to world spawn |
/home | Teleport to your spawn point |
/warp add <name> | Create a warp at your position |
/warp <name> | Teleport to a warp |
/warp del <name> | Delete a warp |
/warp list | List all warps |
Warps are useful for setting up quick travel to hubs, boss arenas, farms, or NPC towns. Create them at locations your players visit often.
World Management
| Command | What It Does |
|---|---|
/time set <day|night> | Change time of day |
/save | Force a world save |
/bloodmoon | Toggle a blood moon |
/eclipse | Toggle a solar eclipse |
/spawnboss <boss> | Spawn a boss (eye, eow, skeletron, wof, etc.) |
/butcher | Kill all enemies |
/invade <type> | Start an invasion (goblin, pirate, frost, martian) |
/broadcast <message> | Send a server-wide announcement |
Region Protection
Regions let you protect areas from modification. Only players or groups you allow can build inside a protected region.
- Stand at one corner of the area you want to protect
- Type
/region set 1 - Walk to the opposite corner
- Type
/region set 2 - Create the region:
/region define <name>
Now manage access:
| Command | What It Does |
|---|---|
/region allow <player> <region> | Let a player build in the region |
/region remove <player> <region> | Revoke a player’s access |
/region allowg <group> <region> | Let an entire group build in the region |
/region delete <name> | Remove a region |
/region list | List all regions |
Setting Up Permission Groups
TShock uses a group-based permission system. Each group has a set of permissions, and players are assigned to groups. Groups can inherit permissions from a parent group, so you build a hierarchy instead of repeating permissions at every level.
Default Groups
TShock creates three groups automatically:
| Group | Who It’s For | Key Permissions |
|---|---|---|
guest | Unregistered players | Basic building, chat, registration |
default | Registered players | Inherits guest + warps, password changes |
superadmin | Full access | All permissions (*) |
The owner account you created during setup is in the superadmin group.
Creating a Group Hierarchy
For most servers, a three-tier setup works well: default (registered players), moderator (trusted players), and admin (server managers).
Create a moderator group:
/group add moderator default tshock.admin.kick,tshock.admin.mute,tshock.tp.self,tshock.tp.others,tshock.admin.warpCreate an admin group that inherits moderator permissions:
/group add admin moderator tshock.admin.ban,tshock.admin.region,tshock.world.editspawn,tshock.world.time,tshock.npc.spawnboss,tshock.item.spawnThe format is /group add <name> <parent> <permissions>. Permissions are comma-separated with no spaces.
Assign a player to a group:
/user group playername moderatorUseful Permission Nodes
| Permission | What It Allows |
|---|---|
tshock.admin.kick | Kick players |
tshock.admin.ban | Ban and unban players |
tshock.admin.mute | Mute players |
tshock.admin.warp | Create and delete warps |
tshock.admin.region | Create and manage regions |
tshock.tp.self | Teleport to players and coordinates |
tshock.tp.others | Teleport other players |
tshock.warp | Use warps (give this to default) |
tshock.world.editspawn | Modify blocks in the spawn area |
tshock.world.time | Change time |
tshock.npc.spawnboss | Spawn bosses |
tshock.item.spawn | Spawn items for yourself |
tshock.item.give | Give items to other players |
To deny an inherited permission, prefix it with !. For example, if admins inherit tshock.item.spawn but you don’t want moderators to have it, that’s already handled by only adding it to the admin group. But if you need to deny something a parent grants, use !tshock.item.spawn.
Locking Down Your Server
For public servers or servers where you don’t trust every player, these settings in tshock/config.json are worth enabling. Edit the file through your File Manager.
Require login to play: Set RequireLogin to true. Players must /register and /login before they can do anything. Combined with disabling guest building permissions, this locks the server to registered users.
Server-Side Characters: Edit tshock/sscconfig.json and set Enabled to true. This stores character inventories, health, and mana on the server instead of each player’s PC. Players can’t bring in cheated items or duplicated stacks. You can configure starting inventory and stats in the same file. Restart the server after changing this.
Server password: Set ServerPassword to a password string. Players must enter it when connecting. Simple but effective for private groups.
Quick Reference
The most common admin tasks in one place:
| Task | Commands |
|---|---|
| Ban a griefer | /ban add PlayerName "reason" |
| Kick with warning | /kick PlayerName "final warning" |
| Promote a player | /user group PlayerName moderator |
| Create a warp hub | Stand at location, /warp add hub |
| Protect a build | /region set 1 at corner, /region set 2 at opposite corner, /region define buildname |
| Allow a friend to edit a region | /region allow FriendName buildname |
| Force save the world | /save |
| Reload config changes | /reload |
For the full command list, type /help in-game or /help <command> for details on a specific command.
Frequently Asked Questions
Create an admin group with the permissions you want, then assign the player to it. Use /group add admin [permissions] to create the group, then /user group playername admin to assign. Don't give everyone the owner group - create specific groups with only the permissions they need.
Use TShock's region system. Stand at one corner and type /region set 1, walk to the opposite corner and type /region set 2, then type /region define areaname to create it. Only players you specifically allow with /region allow can build inside.
For public servers, yes. SSC stores character data on the server instead of each player's PC, which prevents item duplication and cheated inventories. Enable it in tshock/sscconfig.json and restart. For private servers with trusted friends, it's optional.





Terraria