更新日志
以下为 小游码匠 · xymj-colyseus-server 面向集成方的版本说明,便于您在接入、联调与升级时了解能力边界与注意事项。
更完整的协议与示例见站内各专题文档;服务端仓库内的 CHANGELOG.md 与本文内容保持一致,亦可在 GitHub 直接查看:https://github.com/PengYiZhen/xymj-colyseus-server/blob/main/CHANGELOG.md
版本号遵循 语义化版本,条目风格参考 Keep a Changelog。升级前请确认运行环境满足 安装指南。
[1.1.0] - 2026-05-07
本版定位
当前 推荐集成基线。在此版本上,您可获得与本文档一致的 HTTP 鉴权、匹配开房、多频道聊天、帧同步对局 等约定实现,并可直接使用服务端仓库内静态演示页做联调。
您可依赖的能力
- 匹配与开房(
matchmaker_room):主动匹配(match:find/match:cancel)、Party 房间码(party:create/party:join/party:start),组局成功后由服务端下发match:found,客户端再joinById进入game_room。使用本能力前请部署 Redis,详见 安装指南、匹配与开房。 - 帧同步对局(
game_room):固定帧率、input消息与 Schema 状态同步;支持匹配下发的matchId、seatIndex、reconnectKey等与断线重连相关的约定字段。详见 帧同步与游戏房。 - 多模式聊天(
chat_world_room等):世界 / 工会 / 附近 / 队伍四类频道;进房 options 需携带 JWT,并按频道补充guildId、teamId、坐标与nearbyRadius等。世界频道在多进程部署时依赖 Redis Pub/Sub。详见 多模式聊天。 - HTTP API:基于
routing-controllers的装饰器路由;Swagger(/api-docs)提供可交互接口文档。注册、登录及微信 / 抖音小游戏登录等接口签发的访问令牌,与 Colyseus 进房时的token/accessToken对齐。详见 API 概览、JWT 与房间鉴权。 - 数据与中间件:TypeORM(MySQL/MariaDB)、Redis(会话、匹配队列、聊天广播等);房间侧 JWT 校验使用
@RequireAuth(),与 Redis 中访问令牌状态联动。详见 鉴权与权限。 - 联调资源:服务端
src/public下提供MatchmakingDemo.html、ChatDemo.html、FrameSync.html等,便于您在拿到 JWT 后快速验证消息流。详见 快速入门。
升级与环境提示
- 运行环境要求 Node.js ≥ 20.9.0;使用匹配或世界频道跨实例能力时,请保证 Redis 可用并按 配置说明 配置连接。
- 压测房间
loadtest_room默认不做 JWT 校验,仅用于容量与延迟摸底;上线环境请务必关闭或限制访问(见 人数压力测 与环境变量说明)。
问题与贡献
- 源码与缺陷跟踪:https://github.com/PengYiZhen/xymj-colyseus-server
- 若您从更早的私有分支或模板合并而来,合并后请对照本页与 消息协议 核对 房间名、环境变量与 Redis 依赖 是否与当前版本一致。
[1.0.0]
说明
首个对外整合形态:JWT 鉴权、示例 my_room、基础认证相关 HTTP API 与可扩展的房间注册方式。
若您从 1.0.x 集成线升级到 1.1.0,请重点补齐 Redis、核对新增房间类型(matchmaker_room、game_room、chat_*)及静态资源路径,避免客户端仍使用已废弃的单一示例房间假设。