550 字
3 分钟
UnusualChineseChess-1.2.0 Release
Waiting for api.github.com...
[2026-01-10 19:25] 1.2.0 Click here to Release
[Added]
- 添加“取消对将”的玩法。
- 添加“死战方休”的玩法。
- 统一并强化玩法配置管理:全面使用 GameRulesConfig 作为规则单一数据源,减少了模块间耦合。
- 运行时差分同步:主机修改玩法设置时仅发送发生改动的字段(diff),并在客户端合并应用。
- 在 UI 端对设置变更做 200ms 去抖合并,减少网络抖动。
- 增加规则变更监听(支持变更来源),通知执行带超时(500ms)与错误日志,提升稳定性与可调试性。
[Changed]
- 移除了大量对 GameEngine 的冗余包装 getter,调用方改为直接访问 GameRulesConfig 的 getBoolean/getInt/toJson 接口。
- RuleSettingsPanel 的绑定逻辑改为直接读写 GameRulesConfig,并在本地 UI 变更时标记变更来源为 UI。
- GameEngine.shutdown() 集成了规则通知器的关闭(集中化资源清理)。
- 精简版本与更新信息的调用:将对 UpdateInfo 的全限定调用替换为直接导入后使用,简化了网络握手与 UI 显示逻辑的代码可读性。
[Fixed]
- 补充“对将”这一“将”的移动方式。
- 修正“帥”和“兵”在左右连通中的表现。
- 修复局域网对局中“撤销”按钮,现在其可以在联机中正常使用了。
- 修复堆叠棋子的移动验证逻辑,现在选择不同堆栈层的棋子会正确使用对应棋子的移动规则。
- 修复“允许背负上方棋子”选项,现在未勾选时选择下方棋子移动不会带走上方棋子。
- 修复残局导入导出功能,现在可以正确保存和恢复堆叠棋子的状态。
- 修复点击对方堆叠棋子时的交互,现在会显示堆叠信息对话框。
- 修复/缓解了规则通知过程中异常被吞掉或阻塞的问题(现在会记录关键错误并对超时 listener 进行取消)。
- 修复联机设置同步与撤销相关的问题,主机端现在会发送设置快照/差分并避免回环。
UnusualChineseChess-1.2.0 Release
https://samera2022.github.io/posts/Projects/UnusualChineseChess/unusualchinesechess-120-release/