Skip to content
联机世界与服务器管理

快速开启旧联机版服务器

以下流程依据根目录 sc2.2network 的当前服务端实现整理。若你使用其他发行标签,以其 README 和实际生成文件为准。

1. 准备匹配构建

确保客户端与服务端属于同一兼容系列。自行构建时,在源码根目录运行:

powershell
dotnet build SCNETWORK.slnx -c SERVER

运行构建产物需要 .NET 10 Runtime。不要把源码压缩包误当成可直接运行的服务端发行包。

2. 首次启动

在服务端程序目录启动入口程序。需要自动选择第一个世界时,可使用:

text
world=1

终端模式可选参数:

text
-b, --basic          基础终端
-e, --enhanced       增强终端
-v, --validation     开启验证模式
-V, --no-validation  关闭验证模式

第一次启动后确认生成 ServerSetting.json,世界路径可用,并检查端口 28887 未被其他程序占用。

3. 最小连接测试

  1. 暂不加载第三方插件。
  2. 服务端与一台匹配客户端先在同一局域网中测试。
  3. 允许服务端程序和 UDP 28887 通过系统防火墙。
  4. 加入世界后测试移动、放置、破坏、聊天、退出与重连。
  5. 在终端执行 save,再用 exit 正常退出。

4. 确认数据落盘

当前实现将世界项目保存为 MessagePack 格式的 Project.dat,并以 Project.dat.bak 做原子备份;旧 Project.json 会在支持的流程中迁移。重启后检查玩家位置、物品和方块改动是否仍在。

5. 最后添加插件

外部 DLL 放在服务端的 Plugins 目录。每次只增加一个插件,并完成“启动—加入—操作—保存—重启”闭环。可从源码案例导读认识旧联机版自带示例。

定位问题

先用匹配客户端、空白世界、无插件的最小环境复现。问题消失后再逐项恢复世界、认证和插件,比同时修改多处设置更容易找到原因。

玩家共建文档 · 原版、插件版、联机版与插件联机版请注意区分