摘要

v23 战斗状态加入了“尸体上暂停的状态计时”(见实验 0404)。之前的检查多是受控夹具。本实验让一局自然发生的对局走完整个 Web 流程,并在多个时间点把存档从磁盘恢复到一个全新的存储对象里,逐项比对。重点观察:致命腐朽(让尸体无法被治疗或复活的法术)留下的尸体,状态计时能否在多次恢复后正确延续。

结果:修正一处测试脚本错误后,10 个检查点全部通过,终局导出和完整严格回放也通过;致命腐朽的尸体在原到期回合之后仍保持阻断。

冻结协议

  • 种子 12021,熔岩地形,人类位为蓝方,对手是公平 AI,v23 状态,回合上限 100,决策上限 2000。
  • 人类位由现有的启发式选秀策略和公开战术策略自动操作;部署用 Web 默认布局,对手用常规的按角色布阵。
  • 不注入生命、状态、军队、选秀结果、行动队列或历史。
  • 恢复检查点:初始选秀、选秀完成、布阵、开战、每个非终局回合边界、每次新出现的致命腐朽尸体、终局导出之后。每次比对战斗与布阵的类型化状态、完整界面快照和可选动作,以及读取前后的存档文件。
  • 这是“全新存储对象”恢复,不是操作系统级的进程重启。
  • 脚本拒绝写入已存在的目录,不碰用户存档。

结果

  • 熟练度 2 的致命腐朽在第 1 回合施加到蓝方一个兵种上,该兵种在第 3 回合(第 53 个事件)死亡。
  • 第 4 回合恢复:仍阻断治疗,已暂停 1 回合,实际到期第 5 回合;第 5 回合恢复:仍阻断,已暂停 2 回合,实际到期第 6 回合——超过了原到期时间第 4 回合。终局时依然暂停 2、到期 6、阻断为真。
  • 对局在第 5 回合正常结束,红方胜,79 个决策,用时 85.282 秒,没有触及回合或决策上限。
  • 10 个恢复检查点全部通过,普通 Web 导出完成,完整的 Arena 严格回放通过。双方都使用公开战术策略 v54,规则 v365。
  • 测试脚本的 6 项防护检查通过(0.56 秒),现有的 Web 存档版本与尸体显示回归 29 项通过(70.33 秒)。

失败与负结果

第一次启动时脚本把地形写成小写 lava,而不是规范的枚举值,建局请求在对局产生之前就被拒绝。失败报告保留在原目录。这是测试脚本错误,不是战斗或存档兼容缺陷。修正为规范枚举后,用同一种子、阵营、策略和地形重跑,没有按结果更换种子。

局限

  • 只有一个自然出现的案例,补充四个受控熟练度测试,不能代表所有等级和几何。
  • 不涉及驱散后复活、仪式净化、低语生命周期。
  • 不是 AI 强度对比、商业客户端测试、换边配对或浏览器完整对局。