10 10 月 2026
本文只讲 Windows 系统开服。用 Linux 的朋友请转:《饥荒联机版开服保姆级教程(Linux版)》→ https://z0w.cn/wiki/dst-server-guide.html
Windows 环境准备见:《Windows 云服务器开服通用前置教程》→ https://z0w.cn/wiki/windows-gameserver-setup.html

《饥荒联机版》(Don't Starve Together,DST)是最经典的长期生存联机游戏之一。这篇教你开一个带洞穴的完整服。


一、开服前必读:三个坑

坑 1:必须先拿到 cluster_token.txt
饥荒服务端要求一个集群令牌,没有它服务端起不来。去 Klei 官方账号页面免费生成:
https://accounts.kleistation.com/account/game/servers

坑 2:洞穴是独立进程
DST 的"地上世界"和"洞穴"是两个独立的服务端进程,要分别启动、分别占用端口。很多新手以为开一个就行。

坑 3:配置文件是 ini 格式,缩进敏感
cluster.ini 里的段落和键值写错位置会导致启动失败。


二、配置与端口规划

项目要求
系统Windows Server 2019 / 2022
CPU2 核
内存单地上:2G | 地上+洞穴:3-4G
硬盘10G

端口表:

端口协议用途必开
10999UDP地上世界(Master)✅
10998UDP洞穴(Caves)开洞穴才需要
10889—内部 shard 通信,不用对外❌
3389TCP远程桌面✅

三、SteamCMD 下载服务端

cd C:\steamcmd
steamcmd.exe +force_install_dir C:\DSTServer +login anonymous +app_update 343050 validate +quit

四、获取集群令牌

  1. 打开 https://accounts.kleistation.com/account/game/servers(用 Klei 账号登录,没有就注册)
  2. 点「Add New Server」,随便填个名字
  3. 生成后下载 cluster_token.txt(或复制里面的内容自己建文件)

五、建立存档目录结构

饥荒的配置目录在文档目录下,不是服务端目录:

C:\Users\你的用户名\Documents\Klei\DoNotStarveTogether\Cluster_1\
│
├── cluster_token.txt      ← 令牌
├── cluster.ini            ← 集群主配置
├── Master\                ← 地上世界
│   ├── server.ini
│   └── server_chat_log.txt
└── Caves\                 ← 洞穴
    ├── server.ini
    └── server_chat_log.txt

把 cluster_token.txt 放进 Cluster_1 文件夹。


六、编辑 cluster.ini

[GAMEPLAY]
game_mode = survival
max_players = 6
pvp = false
pause_when_empty = true

[NETWORK]
cluster_name = 我的饥荒服
cluster_description = 和朋友一起生存
cluster_password = 你的密码
cluster_intention = cooperative
tick_rate = 30
offline_cluster = false

[MISC]
console_enabled = true

[SHARD]
shard_enabled = true
bind_ip = 127.0.0.1
master_ip = 127.0.0.1
master_port = 10889
cluster_key = dstClusterKey

关键项说明:

项说明
max_players人数上限
cluster_password进服密码,留空则无密码
cluster_intentionsocial / cooperative / competitive / madness
tick_rate默认 30,最高 60(更流畅但更吃资源)
shard_enabledtrue = 启用洞穴
master_port内部通信端口,不需要对外映射

七、编辑 Master/server.ini(地上)

[SHARD]
is_master = true
name = Master

[NETWORK]
server_port = 10999

[STEAM]
master_server_port = 27016
authentication_port = 8766

编辑 Caves/server.ini(洞穴)

[SHARD]
is_master = false
name = Caves

[NETWORK]
server_port = 10998

[STEAM]
master_server_port = 27017
authentication_port = 8767
Steam 端口建议开:UDP 27016-27018 与 8766-8768。

八、启动脚本

新建 start_dst.bat:

@echo off
cd /d C:\DSTServer\bin
start "DST Master" dontstarve_dedicated_server_nullrenderer.exe -console -cluster Cluster_1 -shard Master
timeout /t 15
start "DST Caves" dontstarve_dedicated_server_nullrenderer.exe -console -cluster Cluster_1 -shard Caves

如果只开地上,去掉最后两行即可。


九、放行端口

管理员 PowerShell:

netsh advfirewall firewall add rule name="DST Master" dir=in action=allow protocol=UDP localport=10999
netsh advfirewall firewall add rule name="DST Caves" dir=in action=allow protocol=UDP localport=10998
netsh advfirewall firewall add rule name="DST Steam" dir=in action=allow protocol=UDP localport=27016-27018
netsh advfirewall firewall add rule name="DST Auth" dir=in action=allow protocol=UDP localport=8766-8768

NAT 型服务器还要在服务商控制台映射 10999 和 10998。详见:《NAT 端口映射完全指南》→ https://z0w.cn/wiki/nat-port-forwarding-guide.html


十、常驻与自启

两个进程都用 NSSM 挂成服务:

nssm install DSTMaster "C:\DSTServer\bin\dontstarve_dedicated_server_nullrenderer.exe"
nssm set DSTMaster AppParameters "-console -cluster Cluster_1 -shard Master"
nssm set DSTMaster AppDirectory C:\DSTServer\bin
nssm start DSTMaster

nssm install DSTCaves "C:\DSTServer\bin\dontstarve_dedicated_server_nullrenderer.exe"
nssm set DSTCaves AppParameters "-console -cluster Cluster_1 -shard Caves"
nssm set DSTCaves AppDirectory C:\DSTServer\bin
nssm start DSTCaves

十一、客户端进服

游戏主菜单 → 浏览游戏 → 搜你的 cluster_name,或者通过「直接连接」输入 外网IP:外网端口。


十二、控制台命令

服务端窗口里输入(前面带 c_ 前缀):

c_shutdown()           -- 保存并关闭
c_save()               -- 立即存档
c_announce("消息")      -- 广播
c_listallplayers()     -- 查看玩家

十三、常见问题

Q:服务端启动后立刻退出?
多半是 cluster_token.txt 没放对位置,或者令牌过期。重新生成一次。

Q:地上能进,洞穴进不去?
洞穴进程没启动,或 10998 没映射。洞穴是独立进程,必须单独启动。

Q:搜不到服务器?
Steam 查询端口(27016 等)没放行。offline_cluster 是不是设成 true 了。

Q:更新后存档出问题?
更新前备份 DoNotStarveTogether 整个目录。备份方法见:《存档备份与自动维护教程》→ https://z0w.cn/wiki/game-server-backup-guide.html

Q:怎么更新?

taskkill /F /IM dontstarve_dedicated_server_nullrenderer.exe
cd C:\steamcmd
steamcmd.exe +force_install_dir C:\DSTServer +login anonymous +app_update 343050 +quit

十四、总结

项目值
AppID343050
地上端口UDP 10999
洞穴端口UDP 10998
内部端口10889(不用对外)
配置目录文档\Klei\DoNotStarveTogether\Cluster_1\
必需cluster_token.txt
进程数开洞穴=2 个

📌 洞穴配置有问题可以评论区问。
我们家的云服务器支持多进程长期挂服,NAT 型价格更省,控制台自助映射端口 → 财富云计算 https://z0w.cn
延伸阅读
  1. 网站环境怎么选:LNMP 手动 / 宝塔面板 / Docker / 云开发
  2. 问卷表单系统搭建:SurveyKing / Formbricks,数据自己收
  3. 图床搭建:Lsky Pro / Lychee,自托管图片托管方案
  4. 邮件列表搭建:listmonk 自托管 Newsletter,把读者握在自己手里
  5. 文档站点搭建:MkDocs / VuePress / Docsify,产品文档与技术手册方案
  6. RSS 阅读器搭建:FreshRSS 自托管,把信息流拿回自己手里
  7. 短链接服务搭建:Shlink 自托管,链接数据自己掌握
  8. 网站状态监控页搭建:Uptime Kuma,服务器挂了第一时间知道
更多阅读
  1. 上一篇:僵尸毁灭工程开服保姆级教程(Linux版):screen守护的末日长期服
  2. 下一篇:饥荒联机版开服保姆级教程(Linux版):screen双开地上与洞穴
发表评论 2

取消回复