引入
在上一篇博文之后,我们已经知道了如何快速地把《饥荒联机版》快速安装到服务器上,现在,我们开始配置饥荒服务器。
为了方便,下文中提到的“饥荒”、“dst”均指《饥荒联机版》
获取token
注:token可以理解成一个密码,只有拥有正确token的服务器才会被饥荒官方所认可,出现在服务器列表里。
打开你的《dst》,正常登录后,点击下方的账户图标。
注意:请点击红框中的按钮!如果你打不开网页,请开启你的代理!
填写你的想要设置的名称,并点击下方的添加服务器,我以12345为例。
记下红框中的token后,点击配置服务器,并更具实际情况进行配置这一步不用下载服务器配置文件!!!(修改游戏配置文件真的很令人头大,我们让它自动生成。)
好了,现在你得到了一个token,把它保存在你的记事本里!
配置游戏文件
接下来我们需要配置游戏文件,设置好你需要的游戏内容,例如游戏中的怪物数量、天气情况、MOD等等。
神乎其神的是,实际上我们可以“偷懒”,一切让电脑自动生成!
STEP1:订阅好你的MOD,打开dst,把一切游戏内需要的MOD、服务器配置、密码全部设置好,并且生成一个游戏存档(点击创建世界,进入选择人物菜单,不放心可以选择一个任务并进入游戏)
STEP2:关闭游戏,打开:我的电脑\文档\Klei\DoNotStarveTogether\你的Steam id(一串数字),把Cluster_1(1为对应的存档序号,我这里只有一个存档,就以1为例了)复制到其它地方,比如桌面。
STEP3:修改你复制后的Cluster_1。打开它,找到“cluster_token.txt”,把你的token复制进去,保存。分别压缩Master、Caves两个文件夹,你可以压缩成tar或tgz,我这里以zip格式为例。
上传文件到指定位置
如果你使用xshell连接服务器,你可以使用rz命令上传文件,你也可以用其它方法(FTP、FTPs等)上传。这里以rz为例。
首先安装lrzsz
yum -y install lrzsz
接着切换至之前创建的dst用户,按照下面的目录树,上传Master.zip以及Caves.zip到指定文件夹并进行解压
/home/dst/.klei/DoNotStarveTogether\MyDediServer
|
| adminlist.txt(/adminlist.txt)
| blocklist.txt(/blocklist.txt)
| cluster.ini(/cluster.ini)
| cluster_token.txt(/cluster_token.txt)
| whitelist.txt(/whitelist.txt)
|
|---Master
| | modoverrides.lua(/Master/modoverrides.lua)
| | server.ini(/Master/server.ini)
| | worldgenoverride.lua(/Master/worldgenoverride.lua)
| | 其他文件
| |
| |---其他文件夹
|
|---Caves
| modoverrides.lua(/Caves/modoverrides.lua)
| server.ini(/Caves/server.ini)
| worldgenoverride.lua(/Caves/worldgenoverride.lua)
| 其他文件
|
|---其他文件夹
/home/dst/dst/mods
|
| dedicated_server_mods_setup.lua(/dedicated_server_mods_setup.lua)
sudo su dst
cd /home/dst/.klei/DoNotStarveTogether/MyDediServer/
rz #选择你的cluster_token.txt
rm -rf Master
mkdir Master
cd Master
rz #选择你的Master.zip
unzip Master.zip #同理,上传Caves.zip并解压
如果你还是个Linux新手,不会使用vim,碰到不理解的命令,请自行搜索命令用途!
配置额外文件*(可选)
在上面的目录树里,有部分文件我们没有修改、设置到。
管理员
管理员拥有控制台指令权限,比如可以实现回档、创建新世界、开挂(滑稽)等等。你只需要把玩家的id放到adminlist.txt里,一行一个。
举个栗子:KU_xxxxx
KU_xxxxxxxx
KU_xxxxxxxx
KU_xxxxxxxx
KU_BAv10492
黑名单
我不想让熊孩子跑进我的服务器,我想屏蔽他!从日志中找到他的 SteamID64,添加到 blocklist.txt 中,一行一个
白名单
连接服务器的人太多,导致管理员都进不来,怎么办呢?编辑 whitelist.txt 和cluster.ini。whitelist.txt和blocklist.txt很像,但是里面的内容是以 KU_ 开头的用户idcluster.ini中的whitelist_slots字段限制了服务器的最大玩家数。 现在假设最大玩家数为6,whitelist_slotst里有2个玩家,所以实际上普通玩家的最大数量是4
MOD
在上面的目录树里, dedicated_server_mods_setup.lua
是用来确定要下载哪些mod,而
是配置mod是否启用和mod设置的。modoverrides.lua
可以在本地的world或者cave文件夹下找到,至于 modoverrides.lua
dedicated_server_mods_setup.lua
,我们需要手动把要下载的mod的id写进去,也可以在创意功放创建一个合集,把所有要用的mod放在一个合集里。这样就只用写一个合集的id,不用写每个mod的id了。
启动服务器
su - dst #确定切换到dst用户,如果已经切换,无需输入
script /dev/null
cd ~/dst/bin
screen world ./dst_overworld.sh #看看输出是否正确,完事后按一下Ctrl+A和Ctrl+D
screen caves ./dst_caves.sh #同理,Ctrl+A和Ctrl+D
开始愉快地玩耍吧!
首先很感谢博主的分享 在这里问一些我的问题 如果能回复再好不过了
screen world ./dst_overworld.sh #看看输出是否正确,完事后按一下Ctrl+A和Ctrl+D
screen caves ./dst_caves.sh #同理,Ctrl+A和Ctrl+D
这两行代码没办法运行 我最后是用上一篇文章中sh. 的方式启动的服务器
但是因为是分开启动的(地面 洞穴) 我启动了地上后 等它运行 再输入启动洞穴的代码 感觉好像没启动成功
但是服务器 确实是运行起来了 已经可以在steam里找到了 如果博主有时间回复的话 我可以再复现一下问题与你分享下(虽然是问题)最后 再次感谢博主的教程
是这样,这是screen命令,这里打错了应该是,先screen -S world创建一个叫world的窗口,然后执行./dst_overworld.sh 再脱离,然后再同理开洞穴。可以搜索一下screen命令呢!