外观
快速开启旧联机版服务器
以下流程依据根目录 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. 最小连接测试
- 暂不加载第三方插件。
- 服务端与一台匹配客户端先在同一局域网中测试。
- 允许服务端程序和 UDP
28887通过系统防火墙。 - 加入世界后测试移动、放置、破坏、聊天、退出与重连。
- 在终端执行
save,再用exit正常退出。
4. 确认数据落盘
当前实现将世界项目保存为 MessagePack 格式的 Project.dat,并以 Project.dat.bak 做原子备份;旧 Project.json 会在支持的流程中迁移。重启后检查玩家位置、物品和方块改动是否仍在。
5. 最后添加插件
外部 DLL 放在服务端的 Plugins 目录。每次只增加一个插件,并完成“启动—加入—操作—保存—重启”闭环。可从源码案例导读认识旧联机版自带示例。
定位问题
先用匹配客户端、空白世界、无插件的最小环境复现。问题消失后再逐项恢复世界、认证和插件,比同时修改多处设置更容易找到原因。
