ubuntu上搭建steam饥荒专用联机服务器

在南京,花了65块网费和小伙伴们玩了局域网的饥荒(可以吹一年了),甚是好玩。不过俺回杭州了,想用互联网继续玩耍,迫于每次玩都需主机在线的问题,特研究如何让我吃灰的,剩余不到两个月的主机发挥最后的余热。

硬件环境

我的ecs是1核1G内存1M带宽的。

官网对于建立一个稳定的独立服务器必须又以下硬件要求:带宽8KB/玩家/秒,内存约65MB/玩家,cpu没有明确的要求。

环境准备

dpkg --add-architecture i386 # 添加i386的构建器
apt-get update # 更新 apt-get
apt-get install -y lib32gcc1 lib32stdc++6 libcurl4-gnutls-dev:i386 screen # 安装32位依赖库

安装 steamCMD 和 DST

下载 steamCMD

cd ~mkdir steamcmd # 在 /root 下创建 steamcmd/ 文件夹cd steamcmd # 进入 sreamcmd/ 文件夹wget http://media.steampowered.com/installer/steamcmd_linux.tar.gztar -xvzf steamcmd_linux.tar.gzrm steamcmd_linux.tar.gz

运行 steamcmd

./steamcmd.sh

运行 steamcmd 之后,命令提示符会变成 Steam>,这时进入了 steamcmd 的命令交互界面。现在使用 steamCMD 安装 DST

login anonymous # 以匿名身份登录force_install_dir ../dstserver # 在下建立文件夹安装 DST 服务器app_update 343050 validate # 安装 DST,成功后会出现 Success! App '343050' fully installed.quit # 完成后退出
cd ~/dstserver/bin./dontstarve_dedicated_server_nullrenderer # 这个命令会出现错误,但会帮助我们生成配置文件

服务器配置

cd ~/.klei/DoNotStarveTogether/Cluster_1/ # 进入生成配置文件的 Cluster_1/ 文件夹touch cluster_token.txt cluster.ini # 创建几个需要的配置文件

必须拥有steam饥荒联机帐号才能架设线上独立服务器,所以我们需要通过自己的饥荒联机版客户端生成 Authentication Token。

打开饥荒,点进入游戏主菜单后,按~键(esc 下面那个键)打开控制台,输入 TheNet:GenerateServerToken(),这会在你的电脑上生成内容为 Authentication Token 的文件 cluster_token.txt,具体位置是在文档/klei/DoNotStarveTogether/steamid/下有个cluster_token.txt。你可以把cluster_token.txt 中的 token 复制到服务器上的 cluster_token.txt 中即可(直接rz -y到服务器上也可以)。

继续配置cluster.ini,

[GAMEPLAY]game_mode = survival # 游戏模式max_players = 6 # 最大玩家数pvp = true # 是否开启 PVPpause_when_empty = true # 没有人的时候暂停游戏[NETWORK]lan_only_cluster = falsecluster_intention = socialcluster_description = cluster_name = my server # 服务器名称offline_cluster = falsecluster_password = password # 密码[MISC]console_enabled = true[SHARD]shard_enabled = falsebind_ip = 127.0.0.1master_ip = 127.0.0.1master_port = 10888cluster_key = defaultPass

注:#及后面的中文需要删除,否则启动会有问题。如果是阿里云的云服务器,注意在安全组里开启10888端口的访问权限,这问题让我处理了近两小时。。。

启动脚本

cd ~touch startdst.sh

再写入该脚本(vim修改)

#!/bin/shcd ~/dstserver/binscreen -S Don't Starve Together Server ./dontstarve_dedicated_server_nullrenderer

然后给脚本运行权限

chmod +x startdst.sh

服务器运行

~/startdst.sh

在登录游戏后,搜索主机,输入对应的主机名称,就可以搜索到我们创建的服务器了。

在xshell界面上,Ctrl + C 可以关闭服务器,Ctrl + A 然后 Ctrl + D 可以后台运行,screen -r 可以恢复(screen不能恢复的,可以用screen -r -d来恢复)。

参考:https://xueli.li/2017/09/22/build-dst-server-on-ubuntu/

相关文章

文章浏览阅读2.3k次,点赞4次,收藏22次。最近安装了CARLA预...
文章浏览阅读6.3k次,点赞5次,收藏15次。在清华镜像中下载U...
文章浏览阅读5k次。linux环境, python3.7.问题描述: 安装...
文章浏览阅读4.2k次,点赞4次,收藏17次。要安装这个 standa...
文章浏览阅读894次,点赞51次,收藏31次。在安卓使用vscode主...