Linux(centos7)下搭建Steam饥荒服务器

服务器 0
下载steamcmd
#更新yum源 新机器可能花费较长时间yum update -y#下载相关依赖及工具yum install -y wget libxcb glibc.i686 libcurl.i686#创建steam文件夹mkdir /opt/steamcd /opt/steam#下载解压steamcmdwget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gztar -zxvf steamcmd_linux.tar.gz

解压后效果(game是后面创建的存放游戏的)

下载饥荒服务器

force_install_dir /opt/steam/game/dst是下载路径可以自定义路径

login anonymous 以匿名方式登录

app_update 343050 validate 下载/更新饥荒服务器

#在解压后的路径下执行下面命令下载饥荒服务器./steamcmd.sh +force_install_dir /opt/steam/game/dst +login anonymous +app_update 343050 validate +quit

可以查看饥荒目录

链接libcurl-gnutls.so.4库,不然可能会报错

ln -s /usr/lib/libcurl.so.4 /opt/steam/game/dst/bin/lib32/libcurl-gnutls.so.4
配置服务器相关配置及模组

打开饥荒游戏非饥荒服务器,打开账号

点击游戏后,点击游戏服务器

为自己的服务器起一个名字之后点击添加

可以直接复制token使用,可以点击配置服务器

这里我们选择配置服务器,然后简单设置一下服务器,然后下载设置

下载后是一个压缩文件,这里面是一些饥荒服务器配置文件,一会可以做一些修改,我们先解压之后上传到服务器

我们就在刚刚安装的饥荒服务器的位置新建一个文件夹用来存档,然后把刚刚上传的文件拷贝到新建的文件夹

mkdir /opt/steam/game/dst/DoNotStarveTogethercd /opt/steam/game/dst/DoNotStarveTogether

先来查看服务器配置文件cluster.ini

 按照需求更改配置文件,我配置下面的

[GAMEPLAY]game_mode = survival               # 游戏模式,可选 survival, endless, wildernessmax_players = 12                   # 最大游戏人数,1-64人 大于64也是64pvp = flase                        # 是否可以对战,这里选择否pause_when_empty = true            # 没有人服务器自动暂停[NETWORK]cluster_description = dst_test     # 游戏房间描述cluster_name = my_dst_server       # 游戏房间名称cluster_password = 123456          # 游戏密码,不设置就是没有密码tick_rate = 60                     # 每秒通信次数,越高游戏体验越好,但是会加大服务器负担# 感觉网络不好的可以设置大一点[MISC]console_enabled = true             # 是否开启控制台max_snapshots = 30                 # 最大快照数,决定了可回滚的天数,看自己的需求[SHARD]shard_enabled = true               # 开启洞穴的话必须填truebind_ip = 127.0.0.1                # 服务器监听的地址,master_ip = 127.0.0.1              # 主世界服务器的 IPmaster_port = 10889                # 监听 master 服务器的 UDP 端口cluster_key = supersecretkey       # 游戏通讯密码,每台服务器必须相同

cluster_token.txt就是之前的token

其他的默认就可以了

饥荒的启动命令是dontstarve_dedicated_server_nullrenderer

这里我们写一个启动脚本

#! /bin/bashsteamcmd_dir="/opt/steam/"install_dir="/opt/steam/game/dst"cluster_name="MyDediServer" # 这个是存档目录的名称,就是/opt/steam/game/dst/DoNotStarveTogether下面的存档目录名称,可更改为不同存档名称,开启不同存档服务dontstarve_dir="/opt/steam/game/dst/DoNotStarveTogether"function fail(){        echo Error: "$@" >&2        exit 1}function check_for_file(){    if [ ! -e "$1" ]; then            fail "Missing file: $1"    fi}cd "$steamcmd_dir" || fail "Missing $steamcmd_dir directory!"check_for_file "steamcmd.sh"#启动游戏前检查下是否有更新,可能有点费时不想要可以直接注释./steamcmd.sh +force_install_dir /opt/steam/game/dst +login anonymous +app_update 343050 validate +quitcheck_for_file "$dontstarve_dir/$cluster_name/cluster.ini"check_for_file "$dontstarve_dir/$cluster_name/cluster_token.txt"check_for_file "$dontstarve_dir/$cluster_name/Master/server.ini"check_for_file "$dontstarve_dir/$cluster_name/Caves/server.ini"check_for_file "$install_dir/bin"cd "$install_dir/bin" || fail run_shared=(./dontstarve_dedicated_server_nullrenderer)run_shared+=(-console)run_shared+=(--persistent_storage_root /opt/steam/game/dst)run_shared+=(--conf_dir DoNotStarveTogether)run_shared+=(-cluster "$cluster_name")run_shared+=(-monitor_parent_process $$)"${run_shared[@]}" -shard Caves  | sed 's/^/Caves:  /' &"${run_shared[@]}" -shard Master | sed 's/^/Master: /'

用vim创建一个启动脚本,把上面的脚本放进去然后chmod 755 给个权限

vim start_dst.shchmod 755 start_dst.sh

./start_dst.sh 启动饥荒服务器

出现上面的界面即启动成功,在饥荒里面搜索我们的服务器my_dst_server

这里启动的是纯净档没有模组的,需要添加模组继续往下看

我们先本地开启一个饥荒,然后创建游戏,然后这时候可以自己设置世界,设置mod

创建成功之后不需要进去,点击数据可以看到我们刚刚创建的存档

点开进入我们刚刚新建的档

随便进入一个文件夹把modoverrides.lua文件上传到服务器上面

第一步上传到我们存档的Caves和Master文件夹里面这样地上地下都有mod了 

第二步我们需要订阅上面的模组

先打开上面的文件查看workshop的部分

编辑/opt/steam/game/dst/mods下的dedicated_server_mods_setup.lua文件按照下面的格式添加我们的mod

cat >> dedicated_server_mods_setup.lua << EOFServerModSetup("1216718131")ServerModSetup("2078243581")ServerModSetup("2287303119")EOF

这时候我们重新启动饥荒服务器可以看见已经有模组了


纯净档 好多毛的世界 欢迎来玩

也许您对下面的内容还感兴趣: