在阿里云上搭建《饥荒联机版》(Don’t Starve Together,简称DST)的服务器可以分为以下几个步骤。以下是详细指南:
1. 购买并配置阿里云服务器
- 选择实例:
- 推荐配置:至少2核CPU、4GB内存(如阿里云ECS的
ecs.c6.large或更高)。 - 系统:选择Ubuntu 20.04/22.04 LTS(兼容性较好)。
- 推荐配置:至少2核CPU、4GB内存(如阿里云ECS的
- 网络和安全组:
- 开放端口:
UDP 10999(游戏默认端口),以及UDP 12300-12305(Steam联机用)。 - 安全组规则:在阿里云控制台的安全组中添加入方向规则,允许上述端口。
- 开放端口:
- 登录服务器:
ssh root@你的服务器IP
2. 安装依赖环境
更新系统并安装必要工具:
apt update && apt upgrade -y
apt install -y curl tar screen lib32gcc1 libcurl4-gnutls-dev:i386
3. 安装SteamCMD
SteamCMD是Valve提供的命令行工具,用于下载游戏服务器。
mkdir ~/steamcmd && cd ~/steamcmd
curl -sqL "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz" | tar zxvf -
4. 下载饥荒联机版服务器
运行SteamCMD并下载DST服务器:
./steamcmd.sh +force_install_dir ~/dstserver +login anonymous +app_update 343050 validate +quit
343050是DST的服务器AppID。- 文件会下载到
~/dstserver目录。
5. 配置服务器
生成服务器令牌
- 在本地电脑运行《饥荒联机版》,进入游戏后按
~打开控制台,输入:TheNet:GenerateServerToken() - 令牌文件
server_token.txt会生成在本地游戏的Documents/Klei/DoNotStarveTogether目录下。 - 将令牌上传到服务器的
~/.klei/DoNotStarveTogether/Cluster_1/目录:mkdir -p ~/.klei/DoNotStarveTogether/Cluster_1 # 通过scp上传(本地执行): scp server_token.txt root@服务器IP:~/.klei/DoNotStarveTogether/Cluster_1/
修改服务器配置
-
创建世界配置:
cd ~/dstserver/mods cp dedicated_server_mods_setup.lua.example dedicated_server_mods_setup.lua- 编辑
dedicated_server_mods_setup.lua添加MOD(如modid可在Steam创意工坊页面URL找到):ServerModSetup("378160973") -- 举例:Global Positions MOD
- 编辑
-
创建世界设置文件:
mkdir -p ~/.klei/DoNotStarveTogether/Cluster_1/Master nano ~/.klei/DoNotStarveTogether/Cluster_1/cluster.ini-
示例
cluster.ini内容:[GAMEPLAY] game_mode = survival max_players = 6 pause_when_empty = true [NETWORK] cluster_description = 阿里云DST服务器 cluster_name = My DST Server cluster_password = 123456 # 可选,设置密码
-
-
生成地图设置(可选):
- 本地游戏创建世界后,将
Documents/Klei/DoNotStarveTogether/Cluster_1/Master/leveldataoverride.lua上传到服务器的相同目录。
- 本地游戏创建世界后,将
6. 启动服务器
使用screen保持后台运行:
screen -S dst
cd ~/dstserver/bin
./dontstarve_dedicated_server_nullrenderer -console -cluster Cluster_1 -shard Master
- 按
Ctrl+A然后D退出screen会话,进程会保持运行。
7. 连接服务器
- 在游戏内点击浏览服务器,输入服务器IP和端口(如
IP:10999)。 - 如果设置了密码,需输入密码。
8. 管理服务器
- 关闭服务器:在游戏控制台输入
c_shutdown()。 - 更新服务器:重新运行SteamCMD的
app_update命令。 - 查看日志:日志文件在
~/.klei/DoNotStarveTogether/Cluster_1/Master/server_log.txt。
常见问题
- 端口未开放:检查阿里云安全组和服务器防火墙(
ufw allow 10999/udp)。 - MOD不生效:确保
modoverrides.lua配置正确(参考本地游戏的MOD配置)。 - 性能优化:若卡顿,可降低玩家人数或升级阿里云配置。
通过以上步骤,你可以在阿里云上稳定运行饥荒联机版服务器。如果需要自动化脚本或定期备份存档,可以进一步编写定时任务(如crontab)。
云服务器