当世界需要在主机客户端离线时依然保持在线,Project Zomboid 专用服务器才真正有意义。当前 Build 42 Stable 的服务器程序 Steam App ID 是 380870,并支持 SteamCMD 匿名登录。最常见的失败并不是什么神秘服务器问题,而是版本文件错误、服务器身份不一致、UDP 端口未放行、Mod 过期,或升级前没有备份存档和配置。
快速结论
用 SteamCMD 安装专用服务器,当前 Stable 直接使用 app_update 380870 validate。
当前 Build 42 互联网联机需要处理 UDP 16261 与 16262;仅局域网游玩不需要路由器端口转发。
修改版本分支、服务器名称、缓存路径或 Workshop 列表前,先备份 Server 配置、Multiplayer 存档和数据库数据。
重点速览
表格可左右滑动,查看完整内容。
| 阶段 | Windows 示例 | 重点 |
|---|---|---|
安装 | steamcmd +login anonymous +force_install_dir D:\PZServer +app_update 380870 validate +quit | 使用服务器 App 380870,不是游戏客户端 App |
首次运行 | StartServer64.bat | 让 Build 42 生成配置与存档文件组 |
配置 | Zomboid\Server\servertest.ini | 服务器名称必须和文件身份保持一致 |
网络 | UDP 16261 + 16262 | WAN 联机时处理防火墙和路由转发 |
更新 | 停止 → SteamCMD 更新 → 启动 | 不要在服务器正在写档时更新 |
先证明纯原版服务器能稳定运行
下载 App 380870,首次启动,设置强管理员密码,加入世界,执行保存,干净关闭,再重启确认世界仍然存在。一定要在安装 Workshop Mod 之前先完成这一步,否则后续排错变量会迅速增加。
搞清楚哪些文件决定“同一个世界”
服务器名称会选择 INI/Lua 配置文件族和 Multiplayer 存档身份。世界正式投入使用后,不要随意改服务器名或缓存根目录。身份不匹配时,看起来像地图被清空,其实旧文件可能还在。
只开放真正需要的端口
当前 Build 42 玩家连接常用 UDP 16261 与 16262。服务器只在局域网内使用时,不需要做路由器 WAN 转发;需要互联网连接时,再同步处理系统防火墙。
更新与改 Mod 前先备份
先干净停止服务器,再复制 Server 配置、Multiplayer 存档、数据库与 Mod 记录,然后重新跑 SteamCMD 更新。如果补丁或 Workshop 更新出问题,有经过验证的备份会比凭记忆修世界快得多。
故障排查与常见错误
表格可左右滑动,查看完整内容。
| 问题 | 处理办法 |
|---|---|
服务器能启动,但别人进不来 | 检查系统防火墙、路由转发、Public/密码设置,以及客户端是否完全同版本。 |
改启动参数后像是新世界 | 检查 server name / cachedir,让启动参数重新指回原来的配置与存档身份。 |
Mod 下载了但仍加入失败 | 同时检查 Mods=、WorkshopItems=、依赖与加载顺序,然后完整重启。 |
更新后世界异常 | 先停止继续试错,恢复更新前备份,再逐项排查。 |
常见问题
专用服务器 Steam App ID 是多少?
380870。
Build 42 应该先开放哪些端口?
当前 Build 42 指南使用 UDP 16261 与 16262 处理玩家流量。
不用 SteamCMD 能搭服务器吗?
可以,Steam 的 Dedicated Server 工具也是路线;但对无头服务器来说,SteamCMD 更方便重复安装和更新。
