Linux 搭建饥荒服务器指南
本文最后更新于:2020-06-02 19:35
问:为什么要用Linux Server而不是Windows创建饥荒服务器呢?
答:Linux Server没有图形界面,同样配置下比Windows更节省系统资源。这样就能把更多资源留给饥荒服务器。另外Linux可以用ssh连接,当你熟悉代码后会发现比Windows更高效。
本指南的目的是在Linux上创建带洞穴的饥荒服务器,多层世界的指南将在以后说明。
本指南基于Ubuntu 16.04 64位制作,推荐使用此Linux发行版本或Ubuntu 18.04搭建服务器,以免不必要的麻烦
安装运行SteamCMD所需的依赖项
您需要为您的服务器安装一些软件包以让SteamCMD正常工作:
如果您使用的是Ubuntu 32位,那么就跳过这个步骤;如果您使用的Ubuntu 64位,请逐行执行以下代码以安装相关软件包
1 |
|
下载SteamCMD
请逐行执行以下代码
1 |
|
现在您可以安装SteamCMD
请逐行执行以下代码
1 |
|
启动两个服务器(地面和洞穴)
您需要创建两个bash脚本(master.sh
和caves.sh
)来分别运行两个世界
我们先创建master.sh
,逐行输入以下代码
1 |
|
代码输入完毕,按组合键CTRL
+ X
退出,然后再按Y
保存编辑
然后,我们能再创建caves.sh
,逐行输入以下代码
1 |
|
代码输入完毕,按组合键CTRL
+ X
退出,然后再按Y
保存编辑
运行和停止两个服务器
以创建存档文件Master(地面)和Caves(洞穴)
地面的存档
请逐行执行以下代码
1 |
|
当你在屏幕上看到Your Server Will Not Start
字眼时,按组合键CTRL
+ C
退出
洞穴的存档
请逐行执行以下代码
1 |
|
当你在屏幕上看到Your Server Will Not Start
字眼时,按组合键CTRL
+ C
退出
为服务器创建cluster_token.txt
在你Windows PC上打开饥荒联机版游戏 -> 点击开始游戏
-> 点击账户信息
-> 点击最上面一排的游戏
-> 点击Don't Starve Together Servers
-> 拉到最下面,随便输一个名字,点击添加新服务器
即可获取一串以pds-g
开头的字符串,复制
然后逐行输入一下代码
1 |
|
把刚刚复制的字符串粘贴进去,按组合键CTRL
+ X
退出,然后再按Y
保存编辑
为两个服务器创建leveldataoverride.lua
leveldataoverride.lua代表生成世界的设置,你可以调整季节、怪物或生物群系以及更多
获取leveldataoverride.lua文件配置
- 打开Windows PC饥荒联机版游戏
- 按照您的喜好在第一个存档位置创建您的世界(需添加洞穴)
- 创建成功世界后退出游戏
- 打开您电脑中的该路径
C:\Users\XXX\Documents\Klei\DoNotStarveTogether
XXX
为您电脑的用户名 - 打开该路径下的名字为数字的文件夹
- 打开
Cluster_1
,里面会有Master
和Caves
文件夹,这两个文件夹里分别有一个leveldataoverride.lua
文件
创建Linux上的leveldataoverride.lua
地面的leveldataoverride.lua
请逐行执行以下代码
1 |
|
把刚刚上一步获取的Master
的leveldataoverride.lua
里的内容复制粘贴进来
按组合键CTRL
+ X
退出,然后再按Y
保存编辑
洞穴的leveldataoverride.lua
请逐行执行以下代码
1 |
|
把刚刚获取的Caves
的leveldataoverride.lua
里的内容复制粘贴进来
按组合键CTRL
+ X
退出,然后再按Y
保存编辑
创建并配置cluster.ini
执行代码
1 |
|
将下面代码根据解释自定义后粘贴进去,并按组合键CTRL
+ X
退出,然后再按Y
保存编辑
1 |
|
注:
game_mode 游戏模式,选项为survival
endless
wilderness
,分别对应生存
无尽
荒野
模式
max_players 最大人数
pvp 开启PVP模式,选项为true
false
cluster_intention 游戏风格,选项为cooperative
competitive
social
madness
cluster_password 服务器密码
cluster_name 服务器名
cluster_description 服务器介绍
steam_group_id steam群组的id,如果不添加群组请留空
steam_group_admins 群组的管理也变成服务器的管理员,选项为true
false
steam_group_only 只有群组成员才能加入,选项为true
false
max_snapshots 最大存档天数,游戏默认只保存5天的存档
为两个服务器创建server.ini
地面的server.ini
执行代码
1 |
|
将下面代码粘贴进去,并按组合键CTRL
+ X
退出,然后再按Y
保存编辑
1 |
|
洞穴的server.ini
执行代码
1 |
|
将下面代码粘贴进去,并按组合键CTRL
+ X
退出,然后再按Y
保存编辑
1 |
|
为两个服务器添加mod
还记得上文的为服务器创建leveldataoverride.lua
的方法吧?
为服务器添加mod的方法类似
获取modoverrides.lua文件配置
- 打开Windows PC饥荒联机版游戏
- 按照您的喜好在第一个存档位置创建您的世界(需添加洞穴),这是需添加mod,提前在创意工坊订阅好
- 创建成功世界后退出游戏
- 打开您电脑中的该路径
C:\Users\XXX\Documents\Klei\DoNotStarveTogether
XXX
为您电脑的用户名 - 打开该路径下的名字为数字的文件夹
- 打开
Cluster_1
,里面会有Master
和Caves
文件夹,这两个文件夹里分别有一个modoverrides.lua
文件
创建Linux上的modoverrides.lua
地面的modoverrides.lua
请逐行执行以下代码
1 |
|
把刚刚上一步获取的Master
的modoverrides.lua
里的内容复制粘贴进来
按组合键CTRL
+ X
退出,然后再按Y
保存编辑
洞穴的modoverrides.lua
请逐行执行以下代码
1 |
|
把刚刚获取的Caves
的modoverrides.lua
里的内容复制粘贴进来
按组合键CTRL
+ X
退出,然后再按Y
保存编辑
修改dedicated_server_mods_setup.lua以让服务器下载相应mod
输入代码
1 |
|
在里面另起一行,输入你要添加的mod,格式如下:
1 |
|
每个mod一行,双引号中间的数字为对应mod的ID
获取mod的ID的方法:
方法一
打开之前获取的modoverrides.lua
,里面的格式为
1 |
|
其中workshop后面的数字即为mod的ID
方法二
打mod的创意工坊页面,如https://steamcommunity.com/sharedfiles/filedetails/?id=501385076
链接中id=
后面的就是mod的ID
安装screen
到这一步,您的饥荒服务器配置已经完成70%了
您会发现,运行master.sh或caves.sh后,一旦关闭终端,对应的世界也会关闭
这个时候,就需要screen了
安装screen
1 |
|
screen命令详解请见另一篇文章:Linux Screen命令详解
为两个服务器制作脚本
启动脚本
地面世界的启动脚本
执行代码
1 |
|
将下面代码粘贴进去,并按组合键CTRL
+ X
退出,然后再按Y
保存编辑
1 |
|
再执行代码
1 |
|
洞穴的启动脚本
执行代码
1 |
|
将下面代码粘贴进去,并按组合键CTRL
+ X
退出,然后再按Y
保存编辑
1 |
|
再执行代码
1 |
|
一键启动两个服务器的脚本
执行代码
1 |
|
将下面代码粘贴进去,并按组合键CTRL
+ X
退出,然后再按Y
保存编辑
1 |
|
再执行代码
1 |
|
一键重启两个服务器的脚本
执行代码
1 |
|
将下面代码粘贴进去,并按组合键CTRL
+ X
退出,然后再按Y
保存编辑
1 |
|
再执行代码
1 |
|
一键关闭两个服务器的脚本
执行代码
1 |
|
将下面代码粘贴进去,并按组合键CTRL
+ X
退出,然后再按Y
保存编辑
1 |
|
再执行代码
1 |
|
更新服务器的脚本
执行代码
1 |
|
将下面代码粘贴进去,并按组合键CTRL
+ X
退出,然后再按Y
保存编辑
1 |
|
再执行代码
1 |
|
注:该脚本执行后会先关闭服务器,然后更新服务器,更新完毕后自动重启游戏
测试两个服务器
执行代码
1 |
|
服务器就在后台启动了
查看服务器日志,看看服务器是否启动成功
输入代码
地面:
1 |
|
洞穴:
1 |
|
退出查看日志是按组合键
CTRL
+C
如果看到Sim paused
,说明服务器开启成功,打开游戏看看能不能连接上吧
至此服务器就创建完毕了
其他
添加管理员
如果您用的是自己的cluster_token创建服务器,那么默认您就是游戏管理员
如果您想添加其他的玩家为管理员,那么输入代码
1 |
|
在里面添加对应玩家的ID,一行一个玩家
重启服务器后生效
添加黑名单
同理,输入代码
1 |
|
在里面添加对应玩家的ID,一行一个玩家
重启服务器后生效
玩家ID可在服务器日志中查看,格式为
KU_
开头
服务器创建模板
获取方法:
1 |
|
如未安装git
,请先安装:
1 |
|
在服务器创建的过程中如果遇到问题,欢迎在下方留言