先安装steam和饥荒服务器需要用到的依赖,
sudo add-apt-repository multiverse
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install libstdc++6 libgcc1 libcurl4-gnutls-dev:i386 lib32z1
sudo apt-get install lib32stdc++6
创建steamcmd文件夹
mkdir ~/steamcmd
cd ~/steamcmd
下载 steamcmd程序
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
解压steamcmd_linux.tar.gz文件
tar -xvzf steamcmd_linux.tar.gz
启动steamcmd
./steamcmd.sh
steam> force_install_dir ../dontstarvetogether_dedicated_server
steam> login anonymous
steam> app_update 343050 validate
steam> quit
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh
进入游戏创建存档后
mkdir -p ~/.klei/DoNotStarveTogether/Cluster_1
cluster_token.txt密钥
adminlist.txt管理员id
都通过宝塔移入服务器,再编辑这个文件载入mod
cd /dontstarvetogether_dedicated_server/mods
vim dedicated_server_mods_setup.lua
创建脚本
cd ~
vim boot.sh
#!/bin/bash
steamcmd_dir="$HOME/steamcmd"
install_dir="$HOME/dontstarvetogether_dedicated_server"
cluster_name="Cluster_1"
dontstarve_dir="$HOME/.klei/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"
check_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+=(-cluster "$cluster_name")
run_shared+=(-monitor_parent_process $$)
run_shared+=(-shard)
"${run_shared[@]}" Caves | sed 's/^/Caves: /' &
"${run_shared[@]}" Master | sed 's/^/Master: /'
若64位
cd "$install_dir/bin64" || fail
run_shared=(./dontstarve_dedicated_server_nullrenderer_x64)
赋予权限
sudo chmod u+x boot.sh
饥荒端口,UDP协议
~/.klei/DoNotStarveTogether/Cluster_1/cluster.ini 中的 master_port。
~/.klei/DoNotStarveTogether/Cluster_1/Master/server.ini 中的 server_port。
~/.klei/DoNotStarveTogether/Cluster_1/Caves/server.ini 中的 server_port
# steam端口,TCP+UDP协议
~/.klei/DoNotStarveTogether/Cluster_1/Caves/server.ini 中的 master_server_port、authentication_port
启动
nohup ./boot.sh>root.log 2>&1 &
tail -f root.log
关闭
ps -ef | grep don
kill 1306308
部分代码参考此处
评论0
暂时没有评论