【DST Dedicated Server】简单开服流程(Writen by MrOrange)
拥有一台服务器
- 首先,当然是有一台已经装好Debian的服务器(1Mbps带宽大概对应2~4人,一个存档2核就够,棱镜+勋章至少得3G内存),不建议Ubuntu,一些依赖似乎无法安装。
- 安装之后可能用到的包:
1 | sudo apt update |
配置基础环境(steamcmd, dst服务器):
- 一行行复制运行,注意是否报错
1 | sudo dpkg --add-architecture i386 # If running a 64bit OS |
- 最后一句尝试启动服务器,会生成一些简单的配置,如无报错则基本环境已经配置好。
克隆MrOrange的服务器管理脚本,给予执行权限:
1 | cd ~ |
生成并上传cluster_token.txt
- 本地DST控制台运行
TheNet:GenerateClusterToken()
生成令牌文件cluster_token.txt
,位置在C:/Users/<yourusername>/Documents/Klei/DoNotStarveTogether
(大概,也可能在某个子文件夹),然后上传至服务器/home/steam/.klei/DoNotStarveTogether/
目录。该文件相当于身份认证,即只有买了这游戏的人才能创服务器(当然也可以白嫖其它人的)。
常规开服步骤
创建新世界
- 在本地DST游戏中创建新世界,配置想要的模组,世界类型等等。
上传存档文件夹
- 找到新世界的存档文件夹(游戏里存档设置页有“打开世界文件夹”选项),通常叫
Cluster_xx
,把Cluster_xx
文件夹上传到服务器的存档目录/home/steam/.klei/DoNotStarveTogether/
。
修改相应配置(主要是cluster.ini)
- 打开服务器新世界存档文件夹
Cluster_xx
里的cluster.ini
文件,修改相应的配置,主要是修改人数。 - [可选]直连端口在
Cluster_xx/Master/server.ini
里可以查看和修改。同时开不同的存档需要修改Cluster_xx/Master/server.ini
和Cluster_xx/Caves/server.ini
里的server_port
,以及cluster.ini
里的master_port
,以避免端口冲突。
启动和维护
启动dst服务器(这里假设存档文件夹为Cluster_12
):
1 | ./dst-dedicated-server-admin-scripts/dst_start.sh -C 12 |
完全关闭dst服务器:
1 | ./dst-dedicated-server-admin-scripts/dst_shutdown.sh -C 12 |
生成备份文件:
1 | ./dst-dedicated-server-admin-scripts/dst_backup_cluster.sh -C 12 |
单独更新dst服务器和mods:
1 | ./dst-dedicated-server-admin-scripts/dst_update_modlist.sh 12 |
(更新中)发送服务器指令(如保存世界、踢出某人):
1 | # 保存世界 |
- 常用指令(大概):
c_save()
,c_shutdown()
,c_announce("message")
,c_regenerateworld()
,c_rollback()
,c_listallplayers()
,c_kill("player_id")
. - 打印当前世界信息(天数、季节、时段)指令:
TheNet:Announce("Current day: "..TheWorld.state.cycles.." Season: "..TheWorld.state.season..", Phase: "..TheWorld.state.phase)
查看跟踪日志:
- 查看跟踪当前服务器日志:
tail -f ~/.klei/DoNotStarveTogether/Cluster_12/Master/server_log.txt
- 查看跟踪当前服务器聊天日志:
tail -f ~/.klei/DoNotStarveTogether/Cluster_12/Master/server_chat_log.txt
参考链接:
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.
Comment