《护核纪元》(Core Keeper,国内玩家通称《地心护核者》)官方专用服务器(Dedicated Server)支持离线独立常驻。游戏提供两类完全不同的网络连接模式:基于 Steam P2P 中继的 Game ID 模式 与基于公网 IP/局域网直连的 Direct Connect 模式。本文介绍两种模式的适用场景、配置参数与维护规范。
一、双连接模式架构对比
| 连接模式 | 启动参数 | 网络环境要求 | 延迟与穿透特性 | 适用场景 |
|---|---|---|---|---|
| Game ID 模式(默认) | 不需要指定 IP 直连 | 无需公网 IP,无需路由器映射 | 流量经 Steam 中继服务器转发,跨地区可能存在波动 | 宿舍、无公网 IPv4 环境、快速开黑 |
| Direct Connect 模式 | 通过 -port 启用直连并放行端口 | 需要公网 IP / 端口映射,或虚拟局域网(如 LanGame OS LINK) | 直接连接服务端;延迟取决于链路、距离与负载 | 长期云主机、固定小队服、高要求挖矿打怪 |
二、SteamCMD 安装专服
专用服务器由 SteamCMD 拉取(AppID 为 1963720):
steamcmd +login anonymous +app_update 1963720 validate +quit
下载完成后,Windows 平台主程序为 CoreKeeperServer.exe,Linux 平台为 CoreKeeperServer。
三、网络端口与 Direct Connect 配置
1. 直连端口示例
- 用启动参数
-port 27015明确指定游戏端口; - 查询端口随游戏端口使用下一端口,本例为
UDP 27016。不要把示例端口当作所有安装的固定默认值。
2. 核心配置文件:ServerConfig.json
默认位于用户数据目录 LocalLow/Pugstorm/Core Keeper/DedicatedServer/,不是安装目录;若使用 -datapath,以该目录为准。请在首次生成的完整文件中修改对应字段:
{
"gameId": "",
"world": 0,
"worldName": "LanGameCoreWorld",
"worldMode": 0,
"maxNumberPlayers": 8
}
字段说明:
worldMode:0为标准,1为困难;世界难度与角色永久死亡不是同一设置。gameId:Game ID 模式的加入标识,以服务端实际输出为准。-port:直连由启动参数开启,不使用network.directConnectJSON 对象;切换前对照当前服务端随附的 README。
四、启动脚本与服务运行
下面是直连示例;使用 Game ID 模式时移除 -port、-ip 与 -password,按随附启动脚本运行。创建 launch.bat:
@echo off
CoreKeeperServer.exe -batchmode -logfile "server.log" -port 27015 -ip 0.0.0.0 -password "your_secure_password"
启动后:
- 若未开启 Direct Connect,控制台和日志将打印类似
Game ID: XXXXX-XXXXX-XXXXX-XXXXX-XXXXX,将其分享给朋友,朋友在游戏主菜单输入该 ID 即可加入; - 若开启 Direct Connect,玩家直接通过
IP:27015加入。
五、用 LGSM 管理日常维护
护核纪元开服时,连接模式和世界数据目录要一起确认。LGSM 可管理实例的原生配置、启动参数与日志,减少换用连接方式时漏改参数的情况。
- 按实例设置选择连接方式,并从服务端输出核对实际加入信息;不要把进程启动当作朋友已经可以连接。
- 每个小队使用独立世界和数据目录,迁入旧世界时先保留原件。
- 备份完整世界目录,恢复后进服检查地图与建筑,而不只检查文件是否存在。
六、长期运维高频故障处置
1. Game ID 模式下提示“无法连接至中继服务器”
- 原因:可能涉及 Steam 连接、DNS、客户端版本或本机防火墙,需要结合日志区分。
- 解决:先核对版本与服务端连接日志;若改用直连,明确设置端口并从玩家端验证可达。LINK 房间也需要进行同样的端口检查。
2. 存档路径定位
世界数据默认存放在:
- Windows:
%USERPROFILE%\AppData\LocalLow\Pugstorm\Core Keeper\DedicatedServer\worlds\ - Linux:
~/.config/unity3d/Pugstorm/Core Keeper/DedicatedServer/worlds/停服后备份完整世界目录及 ServerConfig.json,保留同一世界的关联文件;不要只复制0.world。