饥荒联机版 服务端 开服教程 on linux(以 debian 为例)
因为很多教程都是基于Windows,故写了这一篇教程(服务器以debian示例)
推荐阅读以下教程/文档:
多人版饥荒独立服务器 | Don't Starve 中文維基 | Fandom
SteamCMD - Valve Developer Community
安装 steamcmd(参考上面文档)
apt -y install software-properties-common
dpkg --add-architecture i386
add-apt-repository -y -n -U http://deb.debian.org/debian -c non-free -c non-free-firmware
!!
apt update
apt install steamcmd
安装
后续所有操作都需要在此用户下进行
# sudo useradd -m steam
# su steam
下载服务端
steamcmd
> login anonymous ## 匿名登录
> app_update 343050 validate ## 下载饥荒服务端
> quit
服务端默认下载位置
/home/steam/.local/share/Steam/steamapps/common/Don't Starve Together Dedicated Server
存档目录
~/.klei/DoNotStarveTogether/Cluster_1
cd到/Don't Starve Together Dedicated Server/bin/里面,然后执行./dontstarve_dedicated_server_nullrenderer 启动游戏(需要使用screen)
游戏修改/安装模组
先创建一个目录来放存档(为了方便)
自定义世界(如果不自定义就不要这步)
启动饥荒联机版游戏,创建新的房间(随便创建一个),然后自定义配置好世界参数和启用的模组后,访问存档目录,拷贝出来 Caves 和 Master 文件夹。
这2个文件夹里面都只需要保留leveldataoverride.lua modoverrides.lua server.ini 这3个文件即可。
访问科雷官网
从科雷官网获取配置
PS: 如果上一步想要自定义世界,那么只需要将其中的 cluster_token.txt 拷贝出来,放在存档根目录下。
模组(第一步没自定义就不要管了)
访问 /Master/modoverrides.lua 文件,将其中的所有 workshop-0000000 这样的提取出来,拼成
ServerModSetup("XXXXX")
ServerModSetup("XXXXX")
放在名为 dedicated_server_mods_setup.lua 文件中。这个文件需要同时复制到存档的根目录,以及 /home/steam/.local/share/Steam/steamapps/common/Don't Starve Together Dedicated Server/mods/ 这个文件夹内。
最终目录格式:
.
|-- Caves
| |-- leveldataoverride.lua
| |-- modoverrides.lua
| |-- server.ini
|-- Master
| |-- leveldataoverride.lua
| |-- modoverrides.lua
| |-- server.ini
|-- adminlist.txt(可选)
|-- blocklist.txt(可选)
|-- whitelist.txt(可选)
|-- cluster.ini
|-- cluster_token.txt
`-- dedicated_server_mods_setup.lua (可选,装模组才需要)
管理员列表等参照饥荒wiki修改。
全部创建好后启动游戏,等待模组下载完毕即可。
游戏端口
主世界的默认端口为10999,洞穴默认端口为10998。可以在 \Caves\server.ini 以及 \server.ini 修改。需要同时开放tcp和udp协议。
依赖
-
- lib32gcc1 # If running a 64bit OS
-
- lib32stdc++6 # If running a 64bit OS
-
- libgcc1 # If running a 32bit OS
-
- libcurl4-gnutls-dev:i386(当提示包不存在时,应执行:dpkg --add-architecture i386,刷新后安装即可)
`
- libcurl4-gnutls-dev:i386(当提示包不存在时,应执行:dpkg --add-architecture i386,刷新后安装即可)
配置模板
来源wiki
[MISC]
max_snapshots = 6 # 最大快照数,决定了可回滚的天数
console_enabled = true # 是否开启控制台
[SHARD]
shard_enabled = true # 服务器共享,要开启洞穴服务器的必须启用
bind_ip = 127.0.0.1 # 服务器监听的地址,当所有实例都运行在同一台机器时,可填写 127.0.0.1,会被 server .ini 覆盖
master_ip = 127.0.0.1 # master 服务器的 IP,针对非 master 服务器,若与 master 服务器运行在同一台机器时,可填写 127.0.0.1,会被 server.ini 覆盖
master_port = 10888 # 监听 master 服务器的 UDP 端口,所有连接至 master 服务器的非 master 服务器必须相同
cluster_key = dst # 连接密码,每台服务器必须相同,会被 server.ini 覆盖
[STEAM]
steam_group_only = false # 只允许某 Steam 组的成员加入
steam_group_id = 0 # 指定某个 Steam 组,填写组 ID
steam_group_admins = false # 开启后,Steam 组的管理员拥有服务器的管理权限
[NETWORK]
offline_server = false # 离线服务器,只有局域网用户能加入,并且所有依赖于 Steam 的任何功能都无效,比如说饰品掉落
tick_rate = 15 # 每秒通信次数,越高游戏体验越好,但是会加大服务器负担
whitelist_slots = 0 # 为白名单用户保留的游戏位
cluster_password = # 游戏密码,不设置表示无密码
cluster_name = ttionya test # 游戏房间名称
cluster_description = description # 游戏房间描述
lan_only_cluster = false # 局域网游戏
cluster_intention = madness # 游戏偏好,可选 cooperative, competitive, social, or madness,随便设置,没卵用
[GAMEPLAY]
max_players = 16 # 最大游戏人数
pvp = true # 能不能攻击其他玩家,能不能给其他玩家喂屎
game_mode = survival # 游戏模式,可选 survival, endless or wilderness,与玩家死亡后的负面影响有关
pause_when_empty = false # 没人服务器暂停,刷天数必备
vote_kick_enabled = false # 投票踢人
标题:饥荒联机版 服务端 开服教程 on linux(以 debian 为例)
作者:enlysure
地址:http://blog.enlysure.com/articles/2025/06/11/1749637808759.html