[重写]饥荒服务器搭建 配置篇

引入

上一篇博文之后,我们已经知道了如何快速地把《饥荒联机版》快速安装到服务器上,现在,我们开始配置饥荒服务器。

为了方便,下文中提到的“饥荒”、“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_ 开头的用户id
cluster.ini中的whitelist_slots字段限制了服务器的最大玩家数。 现在假设最大玩家数为6,whitelist_slotst里有2个玩家,所以实际上普通玩家的最大数量是4

MOD

在上面的目录树里, dedicated_server_mods_setup.lua 是用来确定要下载哪些mod,而modoverrides.lua是配置mod是否启用和mod设置的。

modoverrides.lua 可以在本地的world或者cave文件夹下找到,至于 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

开始愉快地玩耍吧!

评论

  1. ninomae
    4年前
    2020-7-28 17:26:32

    首先很感谢博主的分享 在这里问一些我的问题 如果能回复再好不过了
    screen world ./dst_overworld.sh #看看输出是否正确,完事后按一下Ctrl+A和Ctrl+D
    screen caves ./dst_caves.sh #同理,Ctrl+A和Ctrl+D
    这两行代码没办法运行 我最后是用上一篇文章中sh. 的方式启动的服务器
    但是因为是分开启动的(地面 洞穴) 我启动了地上后 等它运行 再输入启动洞穴的代码 感觉好像没启动成功
    但是服务器 确实是运行起来了 已经可以在steam里找到了 如果博主有时间回复的话 我可以再复现一下问题与你分享下(虽然是问题)最后 再次感谢博主的教程

    • Vince
      博主
      ninomae
      4年前
      2020-8-12 0:13:52

      是这样,这是screen命令,这里打错了应该是,先screen -S world创建一个叫world的窗口,然后执行./dst_overworld.sh 再脱离,然后再同理开洞穴。可以搜索一下screen命令呢!

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇
隐藏
变装