How to Host a Don’t Starve Together Server
Don’t Starve Together (DST) is the multiplayer expansion of the beloved survival game. Hosting a dedicated server on your Breeze instance lets you run persistent worlds with custom settings, mods, and cave exploration enabled around the clock.
Prerequisites
A Breeze instance with at least 2 CPU cores and 4 GB of RAM is recommended, especially if you plan to run both an overworld and caves shard. You will also need a Klei account and a server token.
Getting a Server Token
Log in to your Klei account at https://accounts.klei.com, navigate to the Games section, and select Don’t Starve Together. Click “Game Servers” and generate a new server token. Save this token for later use.
Installing via SteamCMD
Install SteamCMD and download the DST dedicated server:
sudo apt install -y steamcmd
sudo useradd -m -r -s /bin/bash dst
sudo su - dst
mkdir -p ~/dst_server
steamcmd +force_install_dir ~/dst_server \
+login anonymous \
+app_update 343050 validate \
+quit
Server Configuration
Create the cluster configuration directory structure:
mkdir -p ~/.klei/DoNotStarveTogether/MyCluster/Master
mkdir -p ~/.klei/DoNotStarveTogether/MyCluster/Caves
Create the main cluster configuration at MyCluster/cluster.ini:
[GAMEPLAY]
game_mode = survival
max_players = 8
pvp = false
pause_when_empty = true
[NETWORK]
cluster_name = My DST Server
cluster_description = Hosted on Kazepute Breeze
cluster_password = your-password
cluster_language = en
[MISC]
console_enabled = true
max_snapshots = 6
Place your server token in MyCluster/cluster_token.txt.
Shard Configuration
Each shard needs its own server.ini. For the Master shard:
[NETWORK]
server_port = 10999
[SHARD]
is_master = true
[STEAM]
master_server_port = 27016
authentication_port = 8766
For the Caves shard, set is_master = false and use different port numbers to avoid conflicts.
Running Both Shards
Start each shard in a separate screen or tmux session:
cd ~/dst_server/bin64
screen -S master ./dontstarve_dedicated_server_nullrenderer_x64 \
-cluster MyCluster -shard Master
screen -S caves ./dontstarve_dedicated_server_nullrenderer_x64 \
-cluster MyCluster -shard Caves
Firewall Rules
Open the required UDP ports on your Breeze instance:
sudo ufw allow 10999/udp
sudo ufw allow 10998/udp
sudo ufw allow 27016/udp
sudo ufw allow 8766/udp
sudo ufw reload
Adding Mods
Create a dedicated_server_mods_setup.lua file in the mods/ directory to automatically download Workshop mods on server start. Then configure them in each shard’s modoverrides.lua file.
World Customization
Edit worldgenoverride.lua in each shard directory to control world generation parameters like season length, resource density, and enemy spawn rates. This makes every server uniquely yours.