We are your new 5-Star Hosting Company. At least according to ★ Trustpilot

Following along with a Terraria server? Deploy yours in minutes.

All servers come with a 24-Hour Trial, Free Backups, and 40Gbps DDoS Protection included!

Use code SAVE15 to take 15% OFF Your First Invoice with ChicagoServers! Limited Time!
Terraria guide

TShock config.json Explained: Slots, Passwords, Login and Spawn Settings

By the ChicagoServers team · Updated · 6 min read

TShock keeps most of its behaviour in config.json. On ChicagoServers a TShock server lists a TShock config file on the Configs tab, and the settings below are the ones most server owners end up changing: who can join, how many slots, whether players must log in, and how spawn is protected.

Names and defaults here come from TShock's own configuration documentation, checked on 2026-11-15. TShock changes between releases, so a setting in your build may be missing or renamed. Always check the file your server generated, and take a backup first.

Quick answer
  • ServerPassword (default empty) and MaxSlots (default 8) control who and how many can join. On ChicagoServers, slots and the Join password are managed from the panel, so check there first.
  • RequireLogin (default false) forces every player to register or log in. DefaultRegistrationGroupName and DefaultGuestGroupName decide each player's starting group.
  • SpawnProtection (default true) stops tile placement near spawn. DisableBuild (default false) stops all placing and removing.
  • RestApiEnabled defaults to false. Leave it off unless you have a tool that needs it.
  • Edit on the Configs tab, Save, then Restart.
On this page
  1. How to edit config.json on ChicagoServers
  2. Settings reference
  3. What the ChicagoServers panel manages
  4. Common setups
  5. Frequently asked questions

How to edit config.json on ChicagoServers

  1. Back up

    Open Backups, choose World and settings, and click Back up now.

  2. Open the file

    On the Configs tab, choose TShock config. The file is config.json inside TShock's folder.

  3. Edit carefully

    It is JSON, so keep the quotes, commas and brackets. A single missing comma stops the file loading. Use Text view if you want to see the whole file.

  4. Save and restart

    Click Save, then Restart at the top of the page. Read the Console tab for errors after the restart.

Settings reference

SettingDefaultWhat it does
ServerPasswordemptyPassword players must enter to join.
MaxSlots8Maximum number of clients connected at once.
ReservedSlots20Extra slots beyond MaxSlots that only players with the reserved permission can use.
DisableBuildfalseDisables placing and removing blocks.
SpawnProtectiontruePrevents tile placement within SpawnProtectionRadius of spawn.
RespawnSeconds5Seconds a player waits before respawning.
EnableWhitelistfalseIP-based whitelisting from the whitelist.txt file.
RestApiEnabledfalseTurns the REST API on or off.
InvasionMultiplier1Scales invasion size, calculated as 100 plus the multiplier times the number of active players with more than 200 health.
AutoSavetrueTerraria's built-in world auto-save.
DefaultRegistrationGroupNamedefaultGroup given to newly registered players.
DefaultGuestGroupNameguestGroup given to players who have not registered.
RequireLoginfalseRequires everyone to register or log in before playing.

This is a short list, not the whole file. Server Side Characters, which stores player inventories on the server, is configured separately and is not covered here.

What the ChicagoServers panel manages

The slot count comes from your plan, and the Join password and message of the day are fields on the Startup tab. Values set there are applied at every start, so a matching value changed only in config.json may not stick. Set slots and the join password from the panel, and use config.json for TShock-only behaviour. If you are not sure which setting wins, change it in one place, restart, and check in game.

Common setups

  • Stop strangers building at spawn: leave SpawnProtection on, so no one can place tiles near spawn.
  • Accounts only: set RequireLogin to true so everyone registers. Combine it with a join password for a private community.
  • A show-only build: set DisableBuild to true to stop all block changes while still allowing play. Remember to turn it back off.
  • Slower respawns on a harder server: raise RespawnSeconds.
  • Larger invasions: raise InvasionMultiplier a little at a time. The documented formula scales with the number of healthy players.

Frequently asked questions

Where is the TShock config.json file?

It is in TShock's folder on the server. On ChicagoServers it appears as TShock config on the Configs tab.

How do I set a password on a TShock server?

Use the Join password field on the Startup tab. TShock also has a ServerPassword setting in config.json, which defaults to empty.

What is the default MaxSlots in TShock?

8, according to TShock's configuration documentation. On ChicagoServers the slot count is controlled by your plan.

How do I make players log in on TShock?

Set RequireLogin to true in config.json. Players must then register or log in before they can play.

How do I turn off spawn protection in TShock?

Set SpawnProtection to false. It defaults to true and blocks tile placement near spawn.

We are your new 5-Star Hosting Company. At least according to ★ Trustpilot

Following along with a Terraria server? Deploy yours in minutes.

All servers come with a 24-Hour Trial, Free Backups, and 40Gbps DDoS Protection included!

We offer quality support, a detailed knowledgebase, video tutorials on most topics, and even live support in case you prefer a live human.

Use code SAVE15 to take 15% OFF Your First Invoice with ChicagoServers! Limited Time!