How to Set Up Caves on Your Don't Starve Together Server (Master + Caves Shards)

Enable the Caves shard on your Don't Starve Together dedicated server with the correct cluster.ini, server.ini, and worldgenoverride.lua configuration.

Don't Starve Together's signature feature is the Caves shard — a separate underground world connected to the surface via sinkholes. Most new server admins fail to set this up because it requires two shards (Master = surface, Caves = underground) and a precise mix of cluster.ini, per-shard server.ini, and worldgenoverride.lua files. This page walks through the entire workflow.

How DST Sharding Works

DST runs caves as a second server process (called a shard) that the master server proxies players into when they enter a sinkhole. Both processes:

  • Read the same cluster.ini (cluster-wide settings)
  • Have their own server.ini (shard-specific port + role)
  • Have their own worldgenoverride.lua (different presets — surface vs cave)
  • Communicate over a master_port set in cluster.ini

If any of those four pieces is wrong, players get stuck at "Connecting to shard..." or sinkholes do nothing.

File Structure

This is what a working two-shard cluster looks like:

cluster.ini
cluster_token.txt
adminlist.txt
server.ini
worldgenoverride.lua
modoverrides.lua
server.ini
worldgenoverride.lua
modoverrides.lua

Enable Caves

Stop the server

Stop your DST server from Console in the XGamingServer Panel.

Edit cluster.ini

Open DoNotStarveTogether/Cluster_1/cluster.ini in Files. Make sure the [SHARD] section is set up correctly:

[SHARD]
shard_enabled = true
bind_ip = 127.0.0.1
master_ip = 127.0.0.1
master_port = 11001
cluster_key = supersecretkey
KeyValueWhy
shard_enabledtrueRequired — without this, caves never load
bind_ip127.0.0.1Both shards on the same machine
master_ip127.0.0.1Caves connects to Master at this IP
master_port11001Internal shard-to-shard channel (any free port)
cluster_key(any string)Both shards must use the same key

Configure the Master shard

Open Cluster_1/Master/server.ini. It should contain:

[SHARD]
is_master = true
name = Master

[NETWORK]
server_port = 10999

[STEAM]
authentication_port = 8766
master_server_port = 27018

The Master shard is the surface world. server_port is what players connect to from the in-game browser.

Create the Caves shard folder

If a Cluster_1/Caves/ folder doesn't exist, create it. Inside it, create server.ini:

[SHARD]
is_master = false
name = Caves

[NETWORK]
server_port = 11000

[STEAM]
authentication_port = 8768
master_server_port = 27019

Critical: every port in this file must be different from the Master shard's server.ini. Use the table below.

Add Caves world generation

Inside Cluster_1/Caves/, create worldgenoverride.lua:

return {
  override_enabled = true,
  preset = "DST_CAVE",
}

Available cave presets: DST_CAVE (standard), DST_CAVE_PLUS (more resources), COMPLETE_DARKNESS (extreme).

Save and start

Save all files and start the server from Console. Watch the console output for Caves shard ready — that confirms the second process started.

Port Reference

To prevent collisions, use this layout for any DST cluster:

SettingMasterCaves
[NETWORK] server_port1099911000
[STEAM] authentication_port87668768
[STEAM] master_server_port2701827019

master_port in cluster.ini (e.g. 11001) is separate — it's the internal channel between Master and Caves processes.

Verifying Caves Work

After the server starts:

  1. Connect from the in-game browser
  2. Find a sinkhole in the world (round dark hole, usually near rocky biomes)
  3. Right-click the sinkhole — your character should rappel down with a transition screen
  4. You spawn in the caves with the lighting system active

If you fall in and immediately come back out: the Caves shard isn't running. Check the server console for cave shard errors.

Common Issues

ProblemCauseFix
Sinkholes do nothingshard_enabled = false in cluster.iniSet true, restart
"Connecting to shard..." hangs foreverPort collision between Master and Caves server.iniUse the port table above
Caves loads but Master doesn'tcluster_key mismatch between cluster.ini and server.ini files, or is_master set wrongBoth shards need matching cluster_key; only Master gets is_master = true
Caves regenerates every restartThe Caves shard has no save folder yet — first boot creates it. Don't delete save/ after first generation
Mods only work on surfaceMods must be enabled in both Master/modoverrides.lua AND Caves/modoverrides.luaCopy modoverrides to Caves folder

Disabling Caves

If you want a surface-only server:

  1. In cluster.ini, set shard_enabled = false
  2. Restart

The Caves shard process won't start, and sinkholes become decorative.

How is this guide?

40% Off — Limited TimeGet your Dont Starve Together server todayInstant setup, DDoS protection, and 24/7 support included.
Get a Server

On this page