玩法系统回归 · 已保存结果

117 项通过 · 0 项失败 · 共 117 项

原 v103 游戏逻辑与配置;完成于 2026-10-09T11:22:21.392Z。

普通模式包含自然时间验证;各模式胜负使用明确的边界准备。通过数量不代表所有特殊道具、平台服务与原版双端对照已验收。

模式检查项通过失败
普通13130
猎梦者880
伥鬼与天使770
剧情43430
七怪夜谈29290
孙小美不能死12120
森林有鬼550

每项证据

✓ 普通匹配、开局与上床 原入口
{
  "name": "普通匹配、开局与上床",
  "kind": "原入口",
  "status": "pass",
  "evidence": {
    "mode": 0,
    "map": 0,
    "plot": 3,
    "pol": 0,
    "time": 0.285,
    "rooms": 12,
    "players": 5,
    "controller": "Uw",
    "monster": {
      "level": 1,
      "hp": 300,
      "maxHP": 300,
      "ratio": 1,
      "state": 5,
      "exp": 0,
      "threshold": 30,
      "damage": 2
    },
    "player": {
      "HP": 1,
      "dead": false,
      "room": 0,
      "asleep": true
    },
    "result": false,
    "monsterEnded": false,
    "settled": false
  },
  "sourceRun": "gameplay-full-legal-normal.json"
}
✓ 离线时间→原时间缓存与开放时段条件 平台边界
{
  "name": "离线时间→原时间缓存与开放时段条件",
  "kind": "平台边界",
  "status": "pass",
  "evidence": {
    "source": "本机时钟;保留原时段判断",
    "deltaMs": 0
  },
  "sourceRun": "gameplay-full-legal-normal.json"
}
✓ 原倒计时入场与 AI 寻路 自然时间
{
  "name": "原倒计时入场与 AI 寻路",
  "kind": "自然时间",
  "status": "pass",
  "evidence": {
    "mode": 0,
    "map": 0,
    "plot": 3,
    "pol": 0,
    "time": 32.3,
    "rooms": 12,
    "players": 5,
    "controller": "Uw",
    "monster": {
      "level": 1,
      "hp": 296,
      "maxHP": 300,
      "ratio": 0.9866666666666667,
      "state": 0,
      "exp": 0,
      "threshold": 30,
      "damage": 2
    },
    "player": {
      "HP": 1,
      "dead": false,
      "room": 0,
      "asleep": true
    },
    "result": false,
    "monsterEnded": false,
    "settled": false
  },
  "sourceRun": "gameplay-full-legal-normal.json"
}
✓ 攻击门的伤害与存活 边界探针
{
  "name": "攻击门的伤害与存活",
  "kind": "边界探针",
  "status": "pass",
  "evidence": {
    "before": 50,
    "after": 48,
    "damage": 2
  },
  "sourceRun": "gameplay-full-legal-normal.json"
}
✓ 维修五次恢复与20秒冷却 边界探针
{
  "name": "维修五次恢复与20秒冷却",
  "kind": "边界探针",
  "status": "pass",
  "evidence": {
    "before": 10,
    "after": 35,
    "max": 50,
    "pnt": 1,
    "cooldown": 20
  },
  "sourceRun": "gameplay-full-legal-normal.json"
}
✓ 维修台每秒恢复与满血边界 建筑边界
{
  "name": "维修台每秒恢复与满血边界",
  "kind": "建筑边界",
  "status": "pass",
  "evidence": {
    "before": 25,
    "after": 26,
    "maxHP": 50,
    "rqc": 1,
    "pnt": 1
  },
  "sourceRun": "gameplay-full-legal-normal.json"
}
✓ 怪物经验严格阈值与成长 边界探针
{
  "name": "怪物经验严格阈值与成长",
  "kind": "边界探针",
  "status": "pass",
  "evidence": {
    "before": 1,
    "after": 2,
    "threshold": 30,
    "increment": 5,
    "maxHP": 800,
    "damage": 8
  },
  "sourceRun": "gameplay-full-legal-normal.json"
}
✓ 怪物低血撤退、到达回血、重新寻敌 边界探针
{
  "name": "怪物低血撤退、到达回血、重新寻敌",
  "kind": "边界探针",
  "status": "pass",
  "evidence": {
    "before": 796,
    "arrival": 220,
    "recovered": 800,
    "pathLength": 21,
    "state": 0
  },
  "sourceRun": "gameplay-full-legal-normal.json"
}
✓ 怪物击杀触发胜利和清理 终局边界
{
  "name": "怪物击杀触发胜利和清理",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "result": true,
    "stopped": true,
    "events": [
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 46.946
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          2655,
          2205,
          true
        ],
        "time": 46.946
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          2655,
          2205
        ],
        "time": 46.946
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 46.946
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          2565,
          585,
          true
        ],
        "time": 46.946
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          2565,
          585
        ],
        "time": 46.946
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 46.946
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          1485,
          945,
          true
        ],
        "time": 46.946
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          1485,
          945
        ],
        "time": 46.946
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 46.946
      },
      {
        "event": "gatling_move",
        "args": [
          "[object]"
        ],
        "time": 46.946
      },
      {
        "event": "toycrane_move",
        "args": [
          "[object]"
        ],
        "time": 46.946
      }
    ]
  },
  "sourceRun": "gameplay-full-legal-normal.json"
}
✓ 普通门破→本地淘汰→失败 终局边界
{
  "name": "普通门破→本地淘汰→失败",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 0,
      "map": 0,
      "plot": 3,
      "pol": 0,
      "time": 32.284,
      "rooms": 0,
      "players": 0,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": 300,
        "maxHP": 300,
        "ratio": 1,
        "exp": 3,
        "threshold": 30,
        "damage": 2
      },
      "player": null,
      "result": false,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 32.284
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          2385,
          1575,
          true
        ],
        "time": 32.284
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          2385,
          1575
        ],
        "time": 32.284
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 32.284
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          2565,
          2295,
          true
        ],
        "time": 32.284
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          2565,
          2295
        ],
        "time": 32.284
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 32.284
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          855,
          3285,
          true
        ],
        "time": 32.284
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          855,
          3285
        ],
        "time": 32.284
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 32.284
      },
      {
        "event": "gatling_move",
        "args": [
          "[object]"
        ],
        "time": 32.284
      },
      {
        "event": "toycrane_move",
        "args": [
          "[object]"
        ],
        "time": 32.284
      }
    ]
  },
  "sourceRun": "gameplay-full-legal-normal.json"
}
✓ 失败结算金币→返回首页→同实例再次开局 结算重开
{
  "name": "失败结算金币→返回首页→同实例再次开局",
  "kind": "结算重开",
  "status": "pass",
  "evidence": {
    "before": 206,
    "amount": 10,
    "after": 216,
    "restarted": {
      "mode": 0,
      "map": 0,
      "plot": -1,
      "pol": 0,
      "time": 0.317,
      "rooms": 12,
      "players": 5,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": 300,
        "maxHP": 300,
        "ratio": 1,
        "state": 5,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": {
        "HP": 1,
        "dead": false,
        "room": -1,
        "asleep": false
      },
      "result": false,
      "monsterEnded": false,
      "settled": false
    }
  },
  "sourceRun": "gameplay-full-legal-normal.json"
}
✓ 猎梦者 匹配与开局 模式入口
{
  "name": "猎梦者  匹配与开局",
  "kind": "模式入口",
  "status": "pass",
  "evidence": {
    "mode": 1,
    "map": 2,
    "plot": 3,
    "pol": 0,
    "time": 0.261,
    "rooms": 14,
    "players": 6,
    "controller": "lw",
    "monster": {
      "level": 1,
      "hp": 150,
      "maxHP": 150,
      "ratio": 1,
      "state": 5,
      "exp": 0,
      "threshold": 45,
      "damage": 1
    },
    "player": null,
    "result": false,
    "monsterEnded": false,
    "settled": false
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 伥鬼与天使 匹配与开局 模式入口
{
  "name": "伥鬼与天使  匹配与开局",
  "kind": "模式入口",
  "status": "pass",
  "evidence": {
    "mode": 2,
    "map": 1,
    "plot": 3,
    "pol": 0,
    "time": 0.266,
    "rooms": 12,
    "players": 5,
    "controller": "Uw",
    "monster": {
      "level": 1,
      "hp": 300,
      "maxHP": 300,
      "ratio": 1,
      "state": 5,
      "exp": 0,
      "threshold": 27,
      "damage": 2
    },
    "player": {
      "HP": 1,
      "dead": false,
      "room": -1,
      "asleep": false
    },
    "result": false,
    "monsterEnded": false,
    "settled": false
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 2 匹配与开局 模式入口
{
  "name": "剧情 地图 2 匹配与开局",
  "kind": "模式入口",
  "status": "pass",
  "evidence": {
    "mode": 3,
    "map": 2,
    "plot": 2,
    "pol": 0,
    "time": 0.267,
    "rooms": 14,
    "players": 5,
    "controller": "Uw",
    "monster": {
      "level": 1,
      "hp": 300,
      "maxHP": 300,
      "ratio": 1,
      "state": 5,
      "exp": 0,
      "threshold": 27,
      "damage": 2
    },
    "player": {
      "HP": 1,
      "dead": false,
      "room": -1,
      "asleep": false
    },
    "result": false,
    "monsterEnded": false,
    "settled": false
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 3 匹配与开局 模式入口
{
  "name": "剧情 地图 3 匹配与开局",
  "kind": "模式入口",
  "status": "pass",
  "evidence": {
    "mode": 3,
    "map": 3,
    "plot": 3,
    "pol": 0,
    "time": 0.266,
    "rooms": 16,
    "players": 5,
    "controller": "Uw",
    "monster": {
      "level": 1,
      "hp": 300,
      "maxHP": 300,
      "ratio": 1,
      "state": 5,
      "exp": 0,
      "threshold": 30,
      "damage": 2
    },
    "player": {
      "HP": 1,
      "dead": false,
      "room": -1,
      "asleep": false
    },
    "result": false,
    "monsterEnded": false,
    "settled": false
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 4 匹配与开局 模式入口
{
  "name": "剧情 地图 4 匹配与开局",
  "kind": "模式入口",
  "status": "pass",
  "evidence": {
    "mode": 3,
    "map": 4,
    "plot": 4,
    "pol": 0,
    "time": 0.268,
    "rooms": 12,
    "players": 5,
    "controller": "Uw",
    "monster": {
      "level": 1,
      "hp": 450,
      "maxHP": 450,
      "ratio": 1,
      "state": 5,
      "exp": 0,
      "threshold": 30,
      "damage": 2
    },
    "player": {
      "HP": 1,
      "dead": false,
      "room": -1,
      "asleep": false
    },
    "result": false,
    "monsterEnded": false,
    "settled": false
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 5 匹配与开局 模式入口
{
  "name": "剧情 地图 5 匹配与开局",
  "kind": "模式入口",
  "status": "pass",
  "evidence": {
    "mode": 3,
    "map": 5,
    "plot": 5,
    "pol": 0,
    "time": 0.284,
    "rooms": 12,
    "players": 5,
    "controller": "Uw",
    "monster": {
      "level": 1,
      "hp": 300,
      "maxHP": 300,
      "ratio": 1,
      "state": 5,
      "exp": 0,
      "threshold": 27,
      "damage": 2
    },
    "player": {
      "HP": 1,
      "dead": false,
      "room": -1,
      "asleep": false
    },
    "result": false,
    "monsterEnded": false,
    "settled": false
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 6 匹配与开局 模式入口
{
  "name": "剧情 地图 6 匹配与开局",
  "kind": "模式入口",
  "status": "pass",
  "evidence": {
    "mode": 3,
    "map": 6,
    "plot": 6,
    "pol": 0,
    "time": 0.268,
    "rooms": 13,
    "players": 5,
    "controller": "Uw",
    "monster": {
      "level": 1,
      "hp": 300,
      "maxHP": 300,
      "ratio": 1,
      "state": 5,
      "exp": 0,
      "threshold": 30,
      "damage": 2
    },
    "player": {
      "HP": 1,
      "dead": false,
      "room": -1,
      "asleep": false
    },
    "result": false,
    "monsterEnded": false,
    "settled": false
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 7 匹配与开局 模式入口
{
  "name": "剧情 地图 7 匹配与开局",
  "kind": "模式入口",
  "status": "pass",
  "evidence": {
    "mode": 3,
    "map": 7,
    "plot": 7,
    "pol": 0,
    "time": 0.267,
    "rooms": 2,
    "players": 1,
    "controller": "Uw",
    "monster": {
      "level": 1,
      "hp": 450,
      "maxHP": 450,
      "ratio": 1,
      "state": 5,
      "exp": 0,
      "threshold": 33,
      "damage": 2
    },
    "player": {
      "HP": 1,
      "dead": false,
      "room": -1,
      "asleep": false
    },
    "result": false,
    "monsterEnded": false,
    "settled": false
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 8 匹配与开局 模式入口
{
  "name": "剧情 地图 8 匹配与开局",
  "kind": "模式入口",
  "status": "pass",
  "evidence": {
    "mode": 3,
    "map": 8,
    "plot": 8,
    "pol": 0,
    "time": 0.266,
    "rooms": 12,
    "players": 5,
    "controller": "Uw",
    "monster": {
      "level": 1,
      "hp": 300,
      "maxHP": 300,
      "ratio": 1,
      "state": 5,
      "exp": 0,
      "threshold": 30,
      "damage": 2
    },
    "player": {
      "HP": 1,
      "dead": false,
      "room": -1,
      "asleep": false
    },
    "result": false,
    "monsterEnded": false,
    "settled": false
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 9 匹配与开局 模式入口
{
  "name": "剧情 地图 9 匹配与开局",
  "kind": "模式入口",
  "status": "pass",
  "evidence": {
    "mode": 3,
    "map": 9,
    "plot": 9,
    "pol": 0,
    "time": 0.283,
    "rooms": 15,
    "players": 5,
    "controller": "Uw",
    "monster": {
      "level": 1,
      "hp": 300,
      "maxHP": 300,
      "ratio": 1,
      "state": 5,
      "exp": 0,
      "threshold": 30,
      "damage": 2
    },
    "player": {
      "HP": 1,
      "dead": false,
      "room": -1,
      "asleep": false
    },
    "result": false,
    "monsterEnded": false,
    "settled": false
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 10 匹配与开局 模式入口
{
  "name": "剧情 地图 10 匹配与开局",
  "kind": "模式入口",
  "status": "pass",
  "evidence": {
    "mode": 3,
    "map": 10,
    "plot": 10,
    "pol": 0,
    "time": 0.261,
    "rooms": 18,
    "players": 5,
    "controller": "Uw",
    "monster": {
      "level": 1,
      "hp": 450,
      "maxHP": 450,
      "ratio": 1,
      "state": 5,
      "exp": 0,
      "threshold": 30,
      "damage": 2
    },
    "player": {
      "HP": 1,
      "dead": false,
      "room": -1,
      "asleep": false
    },
    "result": false,
    "monsterEnded": false,
    "settled": false
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 11 匹配与开局 模式入口
{
  "name": "剧情 地图 11 匹配与开局",
  "kind": "模式入口",
  "status": "pass",
  "evidence": {
    "mode": 3,
    "map": 11,
    "plot": 11,
    "pol": 0,
    "time": 0.282,
    "rooms": 6,
    "players": 5,
    "controller": "Jw",
    "monster": {
      "level": 1,
      "hp": 450,
      "maxHP": 450,
      "ratio": 1,
      "state": 5,
      "exp": 0,
      "threshold": 30,
      "damage": 1.6
    },
    "player": {
      "HP": 1,
      "dead": false,
      "room": -1,
      "asleep": false
    },
    "result": false,
    "monsterEnded": false,
    "settled": false
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 12 匹配与开局 模式入口
{
  "name": "剧情 地图 12 匹配与开局",
  "kind": "模式入口",
  "status": "pass",
  "evidence": {
    "mode": 3,
    "map": 12,
    "plot": 12,
    "pol": 0,
    "time": 0.269,
    "rooms": 4,
    "players": 3,
    "controller": "Uw",
    "monster": {
      "level": 1,
      "hp": 600,
      "maxHP": 600,
      "ratio": 1,
      "state": 5,
      "exp": 0,
      "threshold": 30,
      "damage": 1.6
    },
    "player": {
      "HP": 1,
      "dead": false,
      "room": -1,
      "asleep": false
    },
    "result": false,
    "monsterEnded": false,
    "settled": false
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 七怪夜谈 怪物 0 匹配与开局 模式入口
{
  "name": "七怪夜谈 怪物 0 匹配与开局",
  "kind": "模式入口",
  "status": "pass",
  "evidence": {
    "mode": 4,
    "map": 13,
    "plot": 3,
    "pol": 0,
    "time": 0.268,
    "rooms": 11,
    "players": 5,
    "controller": "zw",
    "monster": {
      "level": 1,
      "hp": 300,
      "maxHP": 300,
      "ratio": 1,
      "state": 5,
      "exp": 0,
      "threshold": 30,
      "damage": 2
    },
    "player": {
      "HP": 1,
      "dead": false,
      "room": -1,
      "asleep": false
    },
    "result": false,
    "monsterEnded": false,
    "settled": false
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 七怪夜谈 怪物 1 匹配与开局 模式入口
{
  "name": "七怪夜谈 怪物 1 匹配与开局",
  "kind": "模式入口",
  "status": "pass",
  "evidence": {
    "mode": 4,
    "map": 14,
    "plot": 3,
    "pol": 1,
    "time": 0.282,
    "rooms": 11,
    "players": 5,
    "controller": "zw",
    "monster": {
      "level": 1,
      "hp": 300,
      "maxHP": 300,
      "ratio": 1,
      "state": 5,
      "exp": 0,
      "threshold": 27,
      "damage": 2
    },
    "player": {
      "HP": 1,
      "dead": false,
      "room": -1,
      "asleep": false
    },
    "result": false,
    "monsterEnded": false,
    "settled": false
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 七怪夜谈 怪物 2 匹配与开局 模式入口
{
  "name": "七怪夜谈 怪物 2 匹配与开局",
  "kind": "模式入口",
  "status": "pass",
  "evidence": {
    "mode": 4,
    "map": 15,
    "plot": 3,
    "pol": 2,
    "time": 0.267,
    "rooms": 12,
    "players": 5,
    "controller": "zw",
    "monster": {
      "level": 1,
      "hp": 300,
      "maxHP": 300,
      "ratio": 1,
      "state": 5,
      "exp": 0,
      "threshold": 30,
      "damage": 2
    },
    "player": {
      "HP": 1,
      "dead": false,
      "room": -1,
      "asleep": false
    },
    "result": false,
    "monsterEnded": false,
    "settled": false
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 七怪夜谈 怪物 3 匹配与开局 模式入口
{
  "name": "七怪夜谈 怪物 3 匹配与开局",
  "kind": "模式入口",
  "status": "pass",
  "evidence": {
    "mode": 4,
    "map": 16,
    "plot": 3,
    "pol": 3,
    "time": 0.283,
    "rooms": 11,
    "players": 5,
    "controller": "zw",
    "monster": {
      "level": 1,
      "hp": 300,
      "maxHP": 300,
      "ratio": 1,
      "state": 5,
      "exp": 0,
      "threshold": 27,
      "damage": 2
    },
    "player": {
      "HP": 1,
      "dead": false,
      "room": -1,
      "asleep": false
    },
    "result": false,
    "monsterEnded": false,
    "settled": false
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 七怪夜谈 怪物 4 匹配与开局 模式入口
{
  "name": "七怪夜谈 怪物 4 匹配与开局",
  "kind": "模式入口",
  "status": "pass",
  "evidence": {
    "mode": 4,
    "map": 17,
    "plot": 3,
    "pol": 4,
    "time": 0.266,
    "rooms": 11,
    "players": 5,
    "controller": "zw",
    "monster": {
      "level": 1,
      "hp": 300,
      "maxHP": 300,
      "ratio": 1,
      "state": 5,
      "exp": 0,
      "threshold": 30,
      "damage": 2
    },
    "player": {
      "HP": 1,
      "dead": false,
      "room": -1,
      "asleep": false
    },
    "result": false,
    "monsterEnded": false,
    "settled": false
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 七怪夜谈 怪物 5 匹配与开局 模式入口
{
  "name": "七怪夜谈 怪物 5 匹配与开局",
  "kind": "模式入口",
  "status": "pass",
  "evidence": {
    "mode": 4,
    "map": 18,
    "plot": 3,
    "pol": 5,
    "time": 0.265,
    "rooms": 11,
    "players": 5,
    "controller": "zw",
    "monster": {
      "level": 1,
      "hp": 300,
      "maxHP": 300,
      "ratio": 1,
      "state": 5,
      "exp": 0,
      "threshold": 27,
      "damage": 2
    },
    "player": {
      "HP": 1,
      "dead": false,
      "room": -1,
      "asleep": false
    },
    "result": false,
    "monsterEnded": false,
    "settled": false
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 七怪夜谈 怪物 6 匹配与开局 模式入口
{
  "name": "七怪夜谈 怪物 6 匹配与开局",
  "kind": "模式入口",
  "status": "pass",
  "evidence": {
    "mode": 4,
    "map": 19,
    "plot": 3,
    "pol": 6,
    "time": 0.268,
    "rooms": 11,
    "players": 5,
    "controller": "zw",
    "monster": {
      "level": 1,
      "hp": 300,
      "maxHP": 300,
      "ratio": 1,
      "state": 5,
      "exp": 0,
      "threshold": 30,
      "damage": 2
    },
    "player": {
      "HP": 1,
      "dead": false,
      "room": -1,
      "asleep": false
    },
    "result": false,
    "monsterEnded": false,
    "settled": false
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 孙小美不能死 匹配与开局 模式入口
{
  "name": "孙小美不能死  匹配与开局",
  "kind": "模式入口",
  "status": "pass",
  "evidence": {
    "mode": 5,
    "map": 24,
    "plot": 3,
    "pol": 0,
    "time": 0.266,
    "rooms": 6,
    "players": 5,
    "controller": "GM",
    "monster": {
      "level": 1,
      "hp": 300,
      "maxHP": 300,
      "ratio": 1,
      "state": 5,
      "exp": 0,
      "threshold": 30,
      "damage": 2
    },
    "player": {
      "HP": 1,
      "dead": false,
      "room": -1,
      "asleep": false
    },
    "result": false,
    "monsterEnded": false,
    "settled": false
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 森林有鬼 匹配与开局 模式入口
{
  "name": "森林有鬼  匹配与开局",
  "kind": "模式入口",
  "status": "pass",
  "evidence": {
    "mode": 6,
    "map": 25,
    "plot": 3,
    "pol": 0,
    "time": 0.282,
    "rooms": 17,
    "players": 5,
    "controller": "fg",
    "monster": {
      "level": 1,
      "hp": 800,
      "maxHP": 800,
      "ratio": 1,
      "state": 5,
      "exp": 0,
      "threshold": 25,
      "damage": 2
    },
    "player": {
      "HP": 1,
      "dead": false,
      "room": -1,
      "asleep": false
    },
    "result": false,
    "monsterEnded": false,
    "settled": false
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 猎梦者 胜利触发链 终局边界
{
  "name": "猎梦者 胜利触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 1,
      "map": 2,
      "plot": 3,
      "pol": 0,
      "time": 4.085,
      "rooms": 0,
      "players": 0,
      "controller": "lw",
      "monster": {
        "level": 1,
        "hp": 150,
        "maxHP": 150,
        "ratio": 1,
        "exp": 0,
        "threshold": 42,
        "damage": 1
      },
      "player": null,
      "result": true,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [
          true
        ],
        "time": 4.085
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 猎梦者 失败/转化触发链 终局边界
{
  "name": "猎梦者 失败/转化触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 1,
      "map": 2,
      "plot": 3,
      "pol": 0,
      "time": 4.049,
      "rooms": 0,
      "players": 0,
      "controller": "lw",
      "monster": {
        "level": 1,
        "hp": -14850,
        "maxHP": 150,
        "ratio": -99,
        "exp": 0,
        "threshold": 45,
        "damage": 1
      },
      "player": null,
      "result": false,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [],
        "time": 4.049
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 伥鬼与天使 胜利触发链 终局边界
{
  "name": "伥鬼与天使 胜利触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 2,
      "map": 1,
      "plot": 3,
      "pol": 0,
      "time": 4.032,
      "rooms": 0,
      "players": 0,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": -29700,
        "maxHP": 300,
        "ratio": -99,
        "exp": 0,
        "threshold": 27,
        "damage": 2
      },
      "player": null,
      "result": true,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [
          true
        ],
        "time": 4.032
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 伥鬼与天使 失败/转化触发链 终局边界
{
  "name": "伥鬼与天使 失败/转化触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 2,
      "map": 1,
      "plot": 3,
      "pol": 0,
      "time": 0.266,
      "rooms": 12,
      "players": 5,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": 300,
        "maxHP": 300,
        "ratio": 1,
        "state": 0,
        "exp": 0,
        "threshold": 27,
        "damage": 2
      },
      "player": {
        "HP": -499,
        "dead": true,
        "room": 0,
        "asleep": true
      },
      "result": false,
      "monsterEnded": false,
      "settled": false
    },
    "events": [
      {
        "event": "MGMRoomBlack",
        "args": [
          0
        ],
        "time": 0.266
      },
      {
        "event": "wellayiBlockPlayerDie",
        "args": [],
        "time": 0.266
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          2565,
          585,
          true
        ],
        "time": 0.266
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          2565,
          585
        ],
        "time": 0.266
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 0.266
      },
      {
        "event": "UIGMTips",
        "args": [
          "玩家:我已被淘汰!"
        ],
        "time": 0.266
      },
      {
        "event": "UIGMHideSkill",
        "args": [],
        "time": 0.266
      },
      {
        "event": "HideMenu",
        "args": [],
        "time": 0.266
      },
      {
        "event": "UIGMHideSkill",
        "args": [],
        "time": 0.266
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.266
      }
    ],
    "note": "死亡后保留阵营选择,不假定普通模式失败"
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 2 胜利触发链 终局边界
{
  "name": "剧情 地图 2 胜利触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 3,
      "map": 2,
      "plot": 2,
      "pol": 0,
      "time": 4.07,
      "rooms": 0,
      "players": 0,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": -29700,
        "maxHP": 300,
        "ratio": -99,
        "exp": 0,
        "threshold": 27,
        "damage": 2
      },
      "player": null,
      "result": true,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [
          true
        ],
        "time": 4.07
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 2 失败/转化触发链 终局边界
{
  "name": "剧情 地图 2 失败/转化触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 3,
      "map": 2,
      "plot": 2,
      "pol": 0,
      "time": 0.269,
      "rooms": 0,
      "players": 0,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": 300,
        "maxHP": 300,
        "ratio": 1,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": null,
      "result": false,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [],
        "time": 0.269
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 3 胜利触发链 终局边界
{
  "name": "剧情 地图 3 胜利触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 3,
      "map": 3,
      "plot": 3,
      "pol": 0,
      "time": 4.102,
      "rooms": 0,
      "players": 0,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": -29700,
        "maxHP": 300,
        "ratio": -99,
        "exp": 0,
        "threshold": 27,
        "damage": 2
      },
      "player": null,
      "result": true,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [
          true
        ],
        "time": 4.102
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 3 失败/转化触发链 终局边界
{
  "name": "剧情 地图 3 失败/转化触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 3,
      "map": 3,
      "plot": 3,
      "pol": 0,
      "time": 0.267,
      "rooms": 0,
      "players": 0,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": 300,
        "maxHP": 300,
        "ratio": 1,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": null,
      "result": false,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [],
        "time": 0.267
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 4 胜利触发链 终局边界
{
  "name": "剧情 地图 4 胜利触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 3,
      "map": 4,
      "plot": 4,
      "pol": 0,
      "time": 4.052,
      "rooms": 0,
      "players": 0,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": -44550,
        "maxHP": 450,
        "ratio": -99,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": null,
      "result": true,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [
          true
        ],
        "time": 4.052
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 4 失败/转化触发链 终局边界
{
  "name": "剧情 地图 4 失败/转化触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 3,
      "map": 4,
      "plot": 4,
      "pol": 0,
      "time": 0.277,
      "rooms": 0,
      "players": 0,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": 450,
        "maxHP": 450,
        "ratio": 1,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": null,
      "result": false,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [],
        "time": 0.277
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 5 胜利触发链 终局边界
{
  "name": "剧情 地图 5 胜利触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 3,
      "map": 5,
      "plot": 5,
      "pol": 0,
      "time": 4.051,
      "rooms": 0,
      "players": 0,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": -29700,
        "maxHP": 300,
        "ratio": -99,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": null,
      "result": true,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [
          true
        ],
        "time": 4.051
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 5 失败/转化触发链 终局边界
{
  "name": "剧情 地图 5 失败/转化触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 3,
      "map": 5,
      "plot": 5,
      "pol": 0,
      "time": 0.268,
      "rooms": 0,
      "players": 0,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": 300,
        "maxHP": 300,
        "ratio": 1,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": null,
      "result": false,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [],
        "time": 0.268
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 6 胜利触发链 终局边界
{
  "name": "剧情 地图 6 胜利触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 3,
      "map": 6,
      "plot": 6,
      "pol": 0,
      "time": 4.037,
      "rooms": 0,
      "players": 0,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": -29700,
        "maxHP": 300,
        "ratio": -99,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": null,
      "result": true,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [
          true
        ],
        "time": 4.037
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 6 失败/转化触发链 终局边界
{
  "name": "剧情 地图 6 失败/转化触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 3,
      "map": 6,
      "plot": 6,
      "pol": 0,
      "time": 0.264,
      "rooms": 0,
      "players": 0,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": 300,
        "maxHP": 300,
        "ratio": 1,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": null,
      "result": false,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [],
        "time": 0.264
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 7 胜利触发链 终局边界
{
  "name": "剧情 地图 7 胜利触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 3,
      "map": 7,
      "plot": 7,
      "pol": 0,
      "time": 4.048,
      "rooms": 0,
      "players": 0,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": 450,
        "maxHP": 450,
        "ratio": 1,
        "exp": 0,
        "threshold": 33,
        "damage": 2
      },
      "player": null,
      "result": true,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [
          true
        ],
        "time": 4.048
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 7 失败/转化触发链 终局边界
{
  "name": "剧情 地图 7 失败/转化触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 3,
      "map": 7,
      "plot": 7,
      "pol": 0,
      "time": 0.266,
      "rooms": 0,
      "players": 0,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": 450,
        "maxHP": 450,
        "ratio": 1,
        "exp": 0,
        "threshold": 29.7,
        "damage": 2
      },
      "player": null,
      "result": false,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [],
        "time": 0.266
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 8 胜利触发链 终局边界
{
  "name": "剧情 地图 8 胜利触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 3,
      "map": 8,
      "plot": 8,
      "pol": 0,
      "time": 4.034,
      "rooms": 0,
      "players": 0,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": -29700,
        "maxHP": 300,
        "ratio": -99,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": null,
      "result": true,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [
          true
        ],
        "time": 4.034
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 8 失败/转化触发链 终局边界
{
  "name": "剧情 地图 8 失败/转化触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 3,
      "map": 8,
      "plot": 8,
      "pol": 0,
      "time": 0.265,
      "rooms": 0,
      "players": 0,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": 300,
        "maxHP": 300,
        "ratio": 1,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": null,
      "result": false,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [],
        "time": 0.265
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 9 胜利触发链 终局边界
{
  "name": "剧情 地图 9 胜利触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 3,
      "map": 9,
      "plot": 9,
      "pol": 0,
      "time": 4.037,
      "rooms": 0,
      "players": 0,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": -29700,
        "maxHP": 300,
        "ratio": -99,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": null,
      "result": true,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [
          true
        ],
        "time": 4.037
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 9 失败/转化触发链 终局边界
{
  "name": "剧情 地图 9 失败/转化触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 3,
      "map": 9,
      "plot": 9,
      "pol": 0,
      "time": 0.267,
      "rooms": 0,
      "players": 0,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": 300,
        "maxHP": 300,
        "ratio": 1,
        "exp": 0,
        "threshold": 27,
        "damage": 2
      },
      "player": null,
      "result": false,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [],
        "time": 0.267
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 10 胜利触发链 终局边界
{
  "name": "剧情 地图 10 胜利触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 3,
      "map": 10,
      "plot": 10,
      "pol": 0,
      "time": 4.034,
      "rooms": 0,
      "players": 0,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": -44550,
        "maxHP": 450,
        "ratio": -99,
        "exp": 0,
        "threshold": 27,
        "damage": 2
      },
      "player": null,
      "result": true,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [
          true
        ],
        "time": 4.034
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 10 失败/转化触发链 终局边界
{
  "name": "剧情 地图 10 失败/转化触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 3,
      "map": 10,
      "plot": 10,
      "pol": 0,
      "time": 0.267,
      "rooms": 0,
      "players": 0,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": 450,
        "maxHP": 450,
        "ratio": 1,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": null,
      "result": false,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [],
        "time": 0.267
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 11 胜利触发链 终局边界
{
  "name": "剧情 地图 11 胜利触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 3,
      "map": 11,
      "plot": 11,
      "pol": 0,
      "time": 4.036,
      "rooms": 0,
      "players": 0,
      "controller": "Jw",
      "monster": {
        "level": 1,
        "hp": -44550,
        "maxHP": 450,
        "ratio": -99,
        "exp": 0,
        "threshold": 30,
        "damage": 1.6
      },
      "player": null,
      "result": true,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [
          true
        ],
        "time": 4.036
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 11 失败/转化触发链 终局边界
{
  "name": "剧情 地图 11 失败/转化触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 3,
      "map": 11,
      "plot": 11,
      "pol": 0,
      "time": 0.267,
      "rooms": 0,
      "players": 0,
      "controller": "Jw",
      "monster": {
        "level": 1,
        "hp": 450,
        "maxHP": 450,
        "ratio": 1,
        "exp": 0,
        "threshold": 30,
        "damage": 1.6
      },
      "player": null,
      "result": false,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [],
        "time": 0.267
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 12 胜利触发链 终局边界
{
  "name": "剧情 地图 12 胜利触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 3,
      "map": 12,
      "plot": 12,
      "pol": 0,
      "time": 4.033,
      "rooms": 0,
      "players": 0,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": -59400,
        "maxHP": 600,
        "ratio": -99,
        "exp": 0,
        "threshold": 27,
        "damage": 1.6
      },
      "player": null,
      "result": true,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [
          true
        ],
        "time": 4.033
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 剧情 地图 12 失败/转化触发链 终局边界
{
  "name": "剧情 地图 12 失败/转化触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 3,
      "map": 12,
      "plot": 12,
      "pol": 0,
      "time": 0.265,
      "rooms": 0,
      "players": 0,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": 600,
        "maxHP": 600,
        "ratio": 1,
        "exp": 0,
        "threshold": 30,
        "damage": 1.6
      },
      "player": null,
      "result": false,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [],
        "time": 0.265
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 七怪夜谈 怪物 0 胜利触发链 终局边界
{
  "name": "七怪夜谈 怪物 0 胜利触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 4,
      "map": 13,
      "plot": 3,
      "pol": 0,
      "time": 4.049,
      "rooms": 0,
      "players": 0,
      "controller": "zw",
      "monster": {
        "level": 1,
        "hp": -29700,
        "maxHP": 300,
        "ratio": -99,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": null,
      "result": true,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [
          true
        ],
        "time": 4.049
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 七怪夜谈 怪物 0 失败/转化触发链 终局边界
{
  "name": "七怪夜谈 怪物 0 失败/转化触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 4,
      "map": 13,
      "plot": 3,
      "pol": 0,
      "time": 0.267,
      "rooms": 0,
      "players": 0,
      "controller": "zw",
      "monster": {
        "level": 1,
        "hp": 300,
        "maxHP": 300,
        "ratio": 1,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": null,
      "result": false,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [],
        "time": 0.267
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 七怪夜谈 怪物 1 胜利触发链 终局边界
{
  "name": "七怪夜谈 怪物 1 胜利触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 4,
      "map": 14,
      "plot": 3,
      "pol": 1,
      "time": 4.053,
      "rooms": 0,
      "players": 0,
      "controller": "zw",
      "monster": {
        "level": 1,
        "hp": -29700,
        "maxHP": 300,
        "ratio": -99,
        "exp": 0,
        "threshold": 27,
        "damage": 2
      },
      "player": null,
      "result": true,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [
          true
        ],
        "time": 4.053
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 七怪夜谈 怪物 1 失败/转化触发链 终局边界
{
  "name": "七怪夜谈 怪物 1 失败/转化触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 4,
      "map": 14,
      "plot": 3,
      "pol": 1,
      "time": 0.267,
      "rooms": 0,
      "players": 0,
      "controller": "zw",
      "monster": {
        "level": 1,
        "hp": 300,
        "maxHP": 300,
        "ratio": 1,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": null,
      "result": false,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [],
        "time": 0.267
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 七怪夜谈 怪物 2 胜利触发链 终局边界
{
  "name": "七怪夜谈 怪物 2 胜利触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 4,
      "map": 15,
      "plot": 3,
      "pol": 2,
      "time": 4.032,
      "rooms": 0,
      "players": 0,
      "controller": "zw",
      "monster": {
        "level": 1,
        "hp": -29700,
        "maxHP": 300,
        "ratio": -99,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": null,
      "result": true,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [
          true
        ],
        "time": 4.032
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 七怪夜谈 怪物 2 失败/转化触发链 终局边界
{
  "name": "七怪夜谈 怪物 2 失败/转化触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 4,
      "map": 15,
      "plot": 3,
      "pol": 2,
      "time": 0.266,
      "rooms": 0,
      "players": 0,
      "controller": "zw",
      "monster": {
        "level": 1,
        "hp": 300,
        "maxHP": 300,
        "ratio": 1,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": null,
      "result": false,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [],
        "time": 0.266
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 七怪夜谈 怪物 3 胜利触发链 终局边界
{
  "name": "七怪夜谈 怪物 3 胜利触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 4,
      "map": 16,
      "plot": 3,
      "pol": 3,
      "time": 4.053,
      "rooms": 0,
      "players": 0,
      "controller": "zw",
      "monster": {
        "level": 1,
        "hp": -29700,
        "maxHP": 300,
        "ratio": -99,
        "exp": 0,
        "threshold": 27,
        "damage": 2
      },
      "player": null,
      "result": true,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [
          true
        ],
        "time": 4.053
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 七怪夜谈 怪物 3 失败/转化触发链 终局边界
{
  "name": "七怪夜谈 怪物 3 失败/转化触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 4,
      "map": 16,
      "plot": 3,
      "pol": 3,
      "time": 0.283,
      "rooms": 0,
      "players": 0,
      "controller": "zw",
      "monster": {
        "level": 1,
        "hp": 300,
        "maxHP": 300,
        "ratio": 1,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": null,
      "result": false,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [],
        "time": 0.283
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 七怪夜谈 怪物 4 胜利触发链 终局边界
{
  "name": "七怪夜谈 怪物 4 胜利触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 4,
      "map": 17,
      "plot": 3,
      "pol": 4,
      "time": 4.033,
      "rooms": 0,
      "players": 0,
      "controller": "zw",
      "monster": {
        "level": 1,
        "hp": -29700,
        "maxHP": 300,
        "ratio": -99,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": null,
      "result": true,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [
          true
        ],
        "time": 4.033
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 七怪夜谈 怪物 4 失败/转化触发链 终局边界
{
  "name": "七怪夜谈 怪物 4 失败/转化触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 4,
      "map": 17,
      "plot": 3,
      "pol": 4,
      "time": 0.267,
      "rooms": 0,
      "players": 0,
      "controller": "zw",
      "monster": {
        "level": 1,
        "hp": 300,
        "maxHP": 300,
        "ratio": 1,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": null,
      "result": false,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [],
        "time": 0.267
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 七怪夜谈 怪物 5 胜利触发链 终局边界
{
  "name": "七怪夜谈 怪物 5 胜利触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 4,
      "map": 18,
      "plot": 3,
      "pol": 5,
      "time": 4.036,
      "rooms": 0,
      "players": 0,
      "controller": "zw",
      "monster": {
        "level": 1,
        "hp": -29700,
        "maxHP": 300,
        "ratio": -99,
        "exp": 0,
        "threshold": 27,
        "damage": 2
      },
      "player": null,
      "result": true,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [
          true
        ],
        "time": 4.036
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 七怪夜谈 怪物 5 失败/转化触发链 终局边界
{
  "name": "七怪夜谈 怪物 5 失败/转化触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 4,
      "map": 18,
      "plot": 3,
      "pol": 5,
      "time": 0.268,
      "rooms": 0,
      "players": 0,
      "controller": "zw",
      "monster": {
        "level": 1,
        "hp": 300,
        "maxHP": 300,
        "ratio": 1,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": null,
      "result": false,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [],
        "time": 0.268
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 七怪夜谈 怪物 6 胜利触发链 终局边界
{
  "name": "七怪夜谈 怪物 6 胜利触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 4,
      "map": 19,
      "plot": 3,
      "pol": 6,
      "time": 4.038,
      "rooms": 0,
      "players": 0,
      "controller": "zw",
      "monster": {
        "level": 1,
        "hp": -29700,
        "maxHP": 300,
        "ratio": -99,
        "exp": 0,
        "threshold": 27,
        "damage": 2
      },
      "player": null,
      "result": true,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [
          true
        ],
        "time": 4.038
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 七怪夜谈 怪物 6 失败/转化触发链 终局边界
{
  "name": "七怪夜谈 怪物 6 失败/转化触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 4,
      "map": 19,
      "plot": 3,
      "pol": 6,
      "time": 0.268,
      "rooms": 0,
      "players": 0,
      "controller": "zw",
      "monster": {
        "level": 1,
        "hp": 300,
        "maxHP": 300,
        "ratio": 1,
        "exp": 0,
        "threshold": 27,
        "damage": 2
      },
      "player": null,
      "result": false,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [],
        "time": 0.268
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 孙小美不能死 胜利触发链 终局边界
{
  "name": "孙小美不能死 胜利触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 5,
      "map": 24,
      "plot": 3,
      "pol": 0,
      "time": 10.55,
      "rooms": 0,
      "players": 0,
      "controller": "GM",
      "monster": {
        "level": 1,
        "hp": 300,
        "maxHP": 300,
        "ratio": 1,
        "state": 5,
        "exp": 0,
        "threshold": 27,
        "damage": 2
      },
      "player": null,
      "result": true,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "gmGameOverCanotDie",
        "args": [
          false
        ],
        "time": 10.55
      },
      {
        "event": "gmGameOverCanotDie",
        "args": [
          true
        ],
        "time": 10.55
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 孙小美不能死 失败/转化触发链 终局边界
{
  "name": "孙小美不能死 失败/转化触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 5,
      "map": 24,
      "plot": 3,
      "pol": 0,
      "time": 0.299,
      "rooms": 0,
      "players": 0,
      "controller": "GM",
      "monster": {
        "level": 1,
        "hp": 300,
        "maxHP": 300,
        "ratio": 1,
        "state": 5,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": null,
      "result": false,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [],
        "time": 0.299
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 森林有鬼 胜利触发链 终局边界
{
  "name": "森林有鬼 胜利触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 6,
      "map": 25,
      "plot": 3,
      "pol": 0,
      "time": 4.065,
      "rooms": 0,
      "players": 0,
      "controller": "fg",
      "monster": {
        "level": 1,
        "hp": -79200,
        "maxHP": 800,
        "ratio": -99,
        "exp": 0,
        "threshold": 25,
        "damage": 2
      },
      "player": null,
      "result": true,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [
          true
        ],
        "time": 4.065
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 森林有鬼 失败/转化触发链 终局边界
{
  "name": "森林有鬼 失败/转化触发链",
  "kind": "终局边界",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 6,
      "map": 25,
      "plot": 3,
      "pol": 0,
      "time": 0.305,
      "rooms": 0,
      "players": 0,
      "controller": "fg",
      "monster": {
        "level": 1,
        "hp": 800,
        "maxHP": 800,
        "ratio": 1,
        "exp": 0,
        "threshold": 25,
        "damage": 2
      },
      "player": null,
      "result": false,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "GMGameOver",
        "args": [],
        "time": 0.305
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 伥鬼 原选择转化与阵营胜负 转化边界
{
  "name": "伥鬼 原选择转化与阵营胜负",
  "kind": "转化边界",
  "status": "pass",
  "evidence": {
    "faction": "puppet",
    "fragmentBefore": 2,
    "fragmentAfter": 1,
    "state": {
      "mode": 2,
      "map": 1,
      "plot": 3,
      "pol": 0,
      "time": 4.034,
      "rooms": 12,
      "players": 5,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": -29700,
        "maxHP": 300,
        "ratio": -99,
        "state": 0,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": {
        "HP": -499,
        "dead": true,
        "room": 0,
        "asleep": true
      },
      "result": false,
      "monsterEnded": true,
      "settled": false
    },
    "events": [
      {
        "event": "UIGMHideSkill",
        "args": [],
        "time": 4.034
      },
      {
        "event": "TLCreatePuppet",
        "args": [
          0
        ],
        "time": 4.034
      },
      {
        "event": "OInPutEvent_on",
        "args": [],
        "time": 4.034
      },
      {
        "event": "GMPuppetMode",
        "args": [
          3,
          "我",
          0
        ],
        "time": 4.034
      },
      {
        "event": "MapAddActivity",
        "args": [
          "[object]",
          1,
          23
        ],
        "time": 4.034
      },
      {
        "event": "UIGMTips",
        "args": [
          "我 变成了伥鬼"
        ],
        "time": 4.034
      },
      {
        "event": "OInPutEvent_RS_on",
        "args": [],
        "time": 4.034
      },
      {
        "event": "MGMLookPos",
        "args": [
          2115,
          135
        ],
        "time": 4.034
      },
      {
        "event": "BuildHandleRoomBuff",
        "args": [
          null,
          9
        ],
        "time": 4.034
      },
      {
        "event": "BuildHandleRoomBuff",
        "args": [
          null,
          4
        ],
        "time": 4.034
      },
      {
        "event": "BuildHandleRoomBuff",
        "args": [
          null,
          7
        ],
        "time": 4.034
      },
      {
        "event": "UIGMTips",
        "args": [
          "猎梦者被我击败"
        ],
        "time": 4.034
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 天使 原选择转化与阵营胜负 转化边界
{
  "name": "天使 原选择转化与阵营胜负",
  "kind": "转化边界",
  "status": "pass",
  "evidence": {
    "faction": "angel",
    "fragmentBefore": 2,
    "fragmentAfter": 1,
    "state": {
      "mode": 2,
      "map": 1,
      "plot": 3,
      "pol": 0,
      "time": 4.033,
      "rooms": 0,
      "players": 0,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": -29700,
        "maxHP": 300,
        "ratio": -99,
        "exp": 0,
        "threshold": 27,
        "damage": 2
      },
      "player": null,
      "result": true,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 4.033
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          1305,
          3195,
          true
        ],
        "time": 4.033
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          1305,
          3195
        ],
        "time": 4.033
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 4.033
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          855,
          3465,
          true
        ],
        "time": 4.033
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          855,
          3465
        ],
        "time": 4.033
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 4.033
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          2565,
          2925,
          true
        ],
        "time": 4.033
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          2565,
          2925
        ],
        "time": 4.033
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 4.033
      },
      {
        "event": "gatling_move",
        "args": [
          "[object]"
        ],
        "time": 4.033
      },
      {
        "event": "toycrane_move",
        "args": [
          "[object]"
        ],
        "time": 4.033
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 伥鬼 本地伥鬼被击杀后失败 转化边界
{
  "name": "伥鬼 本地伥鬼被击杀后失败",
  "kind": "转化边界",
  "status": "pass",
  "evidence": {
    "faction": "puppet",
    "fragmentBefore": 2,
    "fragmentAfter": 1,
    "state": {
      "mode": 2,
      "map": 1,
      "plot": 3,
      "pol": 0,
      "time": 4.036,
      "rooms": 0,
      "players": 0,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": 300,
        "maxHP": 300,
        "ratio": 1,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": null,
      "result": false,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 4.036
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          1305,
          3195,
          true
        ],
        "time": 4.036
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          1305,
          3195
        ],
        "time": 4.036
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 4.036
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          855,
          3465,
          true
        ],
        "time": 4.036
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          855,
          3465
        ],
        "time": 4.036
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 4.036
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          2565,
          2925,
          true
        ],
        "time": 4.036
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          2565,
          2925
        ],
        "time": 4.036
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 4.036
      },
      {
        "event": "gatling_move",
        "args": [
          "[object]"
        ],
        "time": 4.036
      },
      {
        "event": "toycrane_move",
        "args": [
          "[object]"
        ],
        "time": 4.036
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 伥鬼 淘汰所有幸存者后胜利 转化边界
{
  "name": "伥鬼 淘汰所有幸存者后胜利",
  "kind": "转化边界",
  "status": "pass",
  "evidence": {
    "faction": "puppet",
    "fragmentBefore": 2,
    "fragmentAfter": 1,
    "state": {
      "mode": 2,
      "map": 1,
      "plot": 3,
      "pol": 0,
      "time": 4.001,
      "rooms": 0,
      "players": 0,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": 300,
        "maxHP": 300,
        "ratio": 1,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": null,
      "result": true,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 4.001
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          1305,
          3195,
          true
        ],
        "time": 4.001
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          1305,
          3195
        ],
        "time": 4.001
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 4.001
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          855,
          3465,
          true
        ],
        "time": 4.001
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          855,
          3465
        ],
        "time": 4.001
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 4.001
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          2565,
          2925,
          true
        ],
        "time": 4.001
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          2565,
          2925
        ],
        "time": 4.001
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 4.001
      },
      {
        "event": "gatling_move",
        "args": [
          "[object]"
        ],
        "time": 4.001
      },
      {
        "event": "toycrane_move",
        "args": [
          "[object]"
        ],
        "time": 4.001
      }
    ]
  },
  "sourceRun": "gameplay-modes-final-entry.json"
}
✓ 普通 原碰撞步行→附近交互上床→自然收入 自然流程
{
  "name": "普通 原碰撞步行→附近交互上床→自然收入",
  "kind": "自然流程",
  "status": "pass",
  "evidence": {
    "start": {
      "x": 2025,
      "y": 1935
    },
    "arrival": {
      "x": 2384.999741233852,
      "y": 1583.4314065189685
    },
    "trace": [
      {
        "row": 21,
        "col": 22,
        "x": 2025,
        "y": 1935
      },
      {
        "row": 21,
        "col": 23,
        "x": 2106.5999999999985,
        "y": 1935
      },
      {
        "row": 21,
        "col": 24,
        "x": 2198.399999999997,
        "y": 1935
      },
      {
        "row": 21,
        "col": 25,
        "x": 2290.1999999999953,
        "y": 1935
      },
      {
        "row": 21,
        "col": 26,
        "x": 2376.8999999999937,
        "y": 1935
      },
      {
        "row": 20,
        "col": 26,
        "x": 2384.214436278864,
        "y": 1853.7284857903942
      },
      {
        "row": 19,
        "col": 26,
        "x": 2384.9448482396033,
        "y": 1761.9313916186952
      },
      {
        "row": 18,
        "col": 26,
        "x": 2384.9970803462543,
        "y": 1670.1314064781373
      },
      {
        "row": 17,
        "col": 26,
        "x": 2384.999741233852,
        "y": 1583.4314065189685
      }
    ],
    "room": 3,
    "zeroLedgerPrepared": false,
    "time": 2.816,
    "before": 4,
    "after": 14,
    "entryFlag": true,
    "gravePrice": [
      "坟墓",
      2,
      0,
      1,
      0,
      ""
    ],
    "state": {
      "mode": 0,
      "map": 0,
      "plot": 3,
      "pol": 0,
      "time": 8.018,
      "rooms": 12,
      "players": 5,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": 300,
        "maxHP": 300,
        "ratio": 1,
        "state": 5,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": {
        "HP": 1,
        "dead": false,
        "room": 3,
        "asleep": true
      },
      "result": false,
      "monsterEnded": false,
      "settled": false
    }
  },
  "sourceRun": "extended-final-entry.json"
}
✓ 森林有鬼 原碰撞步行→附近交互上床→自然收入 自然流程
{
  "name": "森林有鬼 原碰撞步行→附近交互上床→自然收入",
  "kind": "自然流程",
  "status": "pass",
  "evidence": {
    "start": {
      "x": 1845,
      "y": 1845
    },
    "arrival": {
      "x": 2108.8131226075084,
      "y": 1125.001706227081
    },
    "trace": [
      {
        "row": 20,
        "col": 20,
        "x": 1845,
        "y": 1845
      },
      {
        "row": 19,
        "col": 20,
        "x": 1845,
        "y": 1761
      },
      {
        "row": 18,
        "col": 20,
        "x": 1845,
        "y": 1671
      },
      {
        "row": 17,
        "col": 20,
        "x": 1845,
        "y": 1581
      },
      {
        "row": 16,
        "col": 20,
        "x": 1845,
        "y": 1491
      },
      {
        "row": 15,
        "col": 20,
        "x": 1845,
        "y": 1401
      },
      {
        "row": 14,
        "col": 20,
        "x": 1845,
        "y": 1311
      },
      {
        "row": 13,
        "col": 20,
        "x": 1845,
        "y": 1221
      },
      {
        "row": 12,
        "col": 20,
        "x": 1845,
        "y": 1131
      },
      {
        "row": 12,
        "col": 21,
        "x": 1928.8139532599562,
        "y": 1125.4124031160031
      },
      {
        "row": 12,
        "col": 22,
        "x": 2018.813126030004,
        "y": 1125.0265265720968
      },
      {
        "row": 12,
        "col": 23,
        "x": 2108.8131226075084,
        "y": 1125.001706227081
      }
    ],
    "room": 4,
    "zeroLedgerPrepared": false,
    "time": 3.334,
    "before": 3,
    "after": 8,
    "entryFlag": false,
    "gravePrice": [
      "坟墓",
      2,
      0,
      1,
      0,
      ""
    ],
    "state": {
      "mode": 6,
      "map": 25,
      "plot": 3,
      "pol": 0,
      "time": 8.534,
      "rooms": 17,
      "players": 5,
      "controller": "fg",
      "monster": {
        "level": 1,
        "hp": 800,
        "maxHP": 800,
        "ratio": 1,
        "state": 5,
        "exp": 0,
        "threshold": 22.5,
        "damage": 2
      },
      "player": {
        "HP": 1,
        "dead": false,
        "room": 4,
        "asleep": true
      },
      "result": false,
      "monsterEnded": false,
      "settled": false
    }
  },
  "sourceRun": "extended-final-entry.json"
}
✓ 普通原价格表:不足拒绝→炮台购买→升级扣费 经济边界
{
  "name": "普通原价格表:不足拒绝→炮台购买→升级扣费",
  "kind": "经济边界",
  "status": "pass",
  "evidence": {
    "firstPrice": [
      "笤帚炮台",
      8,
      0,
      4,
      4,
      ""
    ],
    "nextPrice": [
      "铲铲炮台",
      16,
      0,
      8,
      4.5,
      ""
    ],
    "level": 2,
    "account": {
      "gold1": 0,
      "gold2": 0,
      "gold1_Count": 0,
      "gold2_Count": 0
    }
  },
  "sourceRun": "extended-final-entry.json"
}
✓ 剧情7 未上床:原30秒任务失败结算 自然时间
{
  "name": "剧情7 未上床:原30秒任务失败结算",
  "kind": "自然时间",
  "status": "pass",
  "evidence": {
    "before": false,
    "after": {
      "mode": 3,
      "map": 7,
      "plot": 7,
      "pol": 0,
      "time": 30.117,
      "rooms": 0,
      "players": 0,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": 450,
        "maxHP": 450,
        "ratio": 1,
        "exp": 0,
        "threshold": 29.7,
        "damage": 2
      },
      "player": null,
      "result": false,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "BuildGoToBed",
        "args": [
          "[object]",
          3,
          false,
          5
        ],
        "time": 13.517
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          1125,
          1395,
          false
        ],
        "time": 13.517
      },
      {
        "event": "MapUpBuild",
        "args": [
          "[object]",
          "door_2"
        ],
        "time": 18.068
      },
      {
        "event": "BuildUpBuild",
        "args": [
          "1125_1395",
          "[object]"
        ],
        "time": 18.068
      },
      {
        "event": "NewBuild",
        "args": [
          16,
          12,
          "at_1",
          false
        ],
        "time": 27.117
      },
      {
        "event": "build",
        "args": [
          "16_12",
          "[object]",
          1,
          false,
          true
        ],
        "time": 27.117
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          1125,
          1485,
          false
        ],
        "time": 27.117
      },
      {
        "event": "UIGMTips",
        "args": [
          "猎梦者进入了宿舍楼"
        ],
        "time": 30.117
      },
      {
        "event": "MainLgTrollUpData",
        "args": [],
        "time": 30.117
      },
      {
        "event": "SkillAddEvent",
        "args": [],
        "time": 30.117
      },
      {
        "event": "GMGameOver",
        "args": [],
        "time": 30.117
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          1125,
          1035,
          true
        ],
        "time": 30.117
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          1125,
          1035
        ],
        "time": 30.117
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 30.117
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          1575,
          1575,
          true
        ],
        "time": 30.117
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          1575,
          1575
        ],
        "time": 30.117
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 30.117
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          1575,
          1215,
          true
        ],
        "time": 30.117
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          1575,
          1215
        ],
        "time": 30.117
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 30.117
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          1125,
          1395,
          true
        ],
        "time": 30.117
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          1125,
          1395
        ],
        "time": 30.117
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 30.117
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          1125,
          1485,
          true
        ],
        "time": 30.117
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          1125,
          1485
        ],
        "time": 30.117
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 30.117
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          1485,
          1035,
          true
        ],
        "time": 30.117
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          1485,
          1035
        ],
        "time": 30.117
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 30.117
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          1575,
          1755,
          true
        ],
        "time": 30.117
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          1575,
          1755
        ],
        "time": 30.117
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 30.117
      },
      {
        "event": "gatling_move",
        "args": [
          "[object]"
        ],
        "time": 30.117
      },
      {
        "event": "toycrane_move",
        "args": [
          "[object]"
        ],
        "time": 30.117
      }
    ]
  },
  "sourceRun": "extended-final-entry.json"
}
✓ 剧情7 原步行上床:超过30秒仍继续战斗 自然流程
{
  "name": "剧情7 原步行上床:超过30秒仍继续战斗",
  "kind": "自然流程",
  "status": "pass",
  "evidence": {
    "start": {
      "x": 1395,
      "y": 2115
    },
    "arrival": {
      "x": 1131.2271334109023,
      "y": 1125.0000075225248
    },
    "trace": [
      {
        "row": 23,
        "col": 15,
        "x": 1395,
        "y": 2115
      },
      {
        "row": 23,
        "col": 16,
        "x": 1476,
        "y": 2115
      },
      {
        "row": 23,
        "col": 17,
        "x": 1566,
        "y": 2115
      },
      {
        "row": 23,
        "col": 18,
        "x": 1656,
        "y": 2115
      },
      {
        "row": 23,
        "col": 19,
        "x": 1746,
        "y": 2115
      },
      {
        "row": 23,
        "col": 20,
        "x": 1836,
        "y": 2115
      },
      {
        "row": 22,
        "col": 20,
        "x": 1844.3583123977642,
        "y": 2031.4168760223579
      },
      {
        "row": 21,
        "col": 20,
        "x": 1844.9572802092732,
        "y": 1941.4188691690897
      },
      {
        "row": 20,
        "col": 20,
        "x": 1844.997156022184,
        "y": 1851.4188780028708
      },
      {
        "row": 19,
        "col": 20,
        "x": 1844.9998106683345,
        "y": 1761.4188780420245
      },
      {
        "row": 18,
        "col": 20,
        "x": 1844.999987395654,
        "y": 1671.418878042195
      },
      {
        "row": 17,
        "col": 20,
        "x": 1844.999999160893,
        "y": 1581.418878042195
      },
      {
        "row": 16,
        "col": 20,
        "x": 1844.9999999441384,
        "y": 1491.418878042195
      },
      {
        "row": 15,
        "col": 20,
        "x": 1844.999999996281,
        "y": 1401.418878042195
      },
      {
        "row": 14,
        "col": 20,
        "x": 1844.9999999997526,
        "y": 1311.418878042195
      },
      {
        "row": 14,
        "col": 19,
        "x": 1761.212828378615,
        "y": 1305.443104307328
      },
      {
        "row": 14,
        "col": 18,
        "x": 1671.2137828251039,
        "y": 1305.0286173266186
      },
      {
        "row": 14,
        "col": 17,
        "x": 1581.2137868061395,
        "y": 1305.0018481963948
      },
      {
        "row": 13,
        "col": 17,
        "x": 1575.4281441133162,
        "y": 1221.201333051015
      },
      {
        "row": 12,
        "col": 17,
        "x": 1575.027603004668,
        "y": 1131.2022243508727
      },
      {
        "row": 12,
        "col": 16,
        "x": 1491.2262354937475,
        "y": 1125.4289407704389
      },
      {
        "row": 12,
        "col": 15,
        "x": 1401.2271296505942,
        "y": 1125.0277582280576
      },
      {
        "row": 12,
        "col": 14,
        "x": 1311.2271333951521,
        "y": 1125.001796314507
      },
      {
        "row": 12,
        "col": 13,
        "x": 1221.227133410834,
        "y": 1125.0001162446565
      },
      {
        "row": 12,
        "col": 12,
        "x": 1131.2271334109023,
        "y": 1125.0000075225248
      }
    ],
    "room": 0,
    "zeroLedgerPrepared": false,
    "time": 12.601,
    "state": {
      "mode": 3,
      "map": 7,
      "plot": 7,
      "pol": 0,
      "time": 43.602,
      "rooms": 2,
      "players": 1,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": 450,
        "maxHP": 450,
        "ratio": 1,
        "state": 2,
        "exp": 14,
        "threshold": 33,
        "damage": 2
      },
      "player": {
        "HP": 1,
        "dead": false,
        "room": 0,
        "asleep": true
      },
      "result": false,
      "monsterEnded": false,
      "settled": false
    }
  },
  "sourceRun": "extended-final-entry.json"
}
✓ 剧情7 两人占床:盟友淘汰触发原胜利 淘汰边界
{
  "name": "剧情7 两人占床:盟友淘汰触发原胜利",
  "kind": "淘汰边界",
  "status": "pass",
  "evidence": {
    "ally": null,
    "state": {
      "mode": 3,
      "map": 7,
      "plot": 7,
      "pol": 0,
      "time": 22.534,
      "rooms": 0,
      "players": 0,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": 450,
        "maxHP": 450,
        "ratio": 1,
        "exp": 0,
        "threshold": 33,
        "damage": 2
      },
      "player": null,
      "result": true,
      "monsterEnded": true,
      "settled": true
    },
    "events": [
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.251
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.287
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.301
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.318
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.335
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.351
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.368
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.385
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.401
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.418
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.435
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.451
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.468
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.485
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.501
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.518
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.534
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.552
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.568
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.584
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.601
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.618
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.634
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.651
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.667
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.685
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.701
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.718
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.734
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.751
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.767
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.785
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.8
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.835
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.851
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.867
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.885
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.901
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.918
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.934
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.951
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.968
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 0.983
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.001
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.022
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.035
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.052
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.068
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.084
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.101
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.118
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.134
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.151
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.167
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.184
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.201
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.217
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.251
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.267
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.285
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.3
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.319
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.333
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.351
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.368
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.384
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.401
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.418
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.434
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.451
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.466
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.483
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.501
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.517
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.534
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.552
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.567
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.584
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.601
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.618
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.634
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.668
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.684
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.7
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.718
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.734
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.751
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.767
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.784
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.801
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.817
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.835
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.85
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.868
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.883
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.9
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.918
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.934
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.951
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.968
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 1.984
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.001
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.017
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.035
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.051
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.067
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.084
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.1
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.134
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.15
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.167
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.167
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.205
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.22
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.236
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.253
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.268
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.286
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.303
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.317
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.335
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.352
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.368
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.384
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.401
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.418
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.435
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.467
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.484
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.501
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.518
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.534
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.55
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.568
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.585
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.601
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.618
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.634
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.651
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.667
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.683
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.7
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.717
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.734
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.751
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.768
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.784
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.801
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.819
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.835
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.852
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.868
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.885
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.901
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.935
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.951
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.968
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 2.983
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.017
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.034
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.052
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.067
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.084
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.101
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.117
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.134
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.15
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.168
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.184
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.2
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.218
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.233
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.25
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.268
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.284
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.302
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.334
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.351
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.367
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.385
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.4
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.418
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.434
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.451
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.468
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.483
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.5
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.517
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.534
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.551
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.568
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.585
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.6
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.617
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.634
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.669
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.684
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.701
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.717
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.734
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.751
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.767
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.784
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.801
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.818
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.835
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.851
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.867
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.885
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.901
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.917
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.934
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.952
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.968
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 3.985
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.018
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.034
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.068
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.084
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.101
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.117
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.134
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.15
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.168
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.184
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.202
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.218
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.233
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.251
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.267
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.284
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.3
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.317
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.334
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.351
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.367
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.384
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.401
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.417
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.434
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.451
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.467
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.484
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.501
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.517
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.551
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.567
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.585
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.6
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.617
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.635
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.651
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.667
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.684
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.7
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.718
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.734
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.751
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.769
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.783
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.8
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.817
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.834
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.851
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.867
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.885
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.9
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.918
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.934
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.95
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.967
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 4.985
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.017
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.034
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.051
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.085
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.1
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.119
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.134
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.151
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.168
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.184
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.202
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.218
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.233
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.251
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.267
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.284
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.3
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.317
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.334
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.35
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.368
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.385
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.4
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.418
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.433
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.451
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.468
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.484
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.501
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.517
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.534
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.568
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.584
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.601
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.617
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.634
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.65
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.668
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.684
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.701
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.718
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.733
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.75
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.767
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.784
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.802
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.817
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.834
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.851
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.867
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.884
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.901
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.918
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.934
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.95
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.967
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 5.984
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.001
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.017
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.034
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.051
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.068
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.084
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.1
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.117
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.134
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.151
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.168
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.184
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.218
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.234
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.251
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.267
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.285
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.301
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.317
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.334
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.35
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.368
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.383
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.4
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.418
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.434
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.451
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.466
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.483
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.5
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.517
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.533
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.55
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.567
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.584
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.601
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.617
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.635
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.65
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.667
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.683
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.701
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.718
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.734
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.767
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.784
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.801
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.818
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.834
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.85
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.868
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.884
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.901
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.917
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.935
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.951
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.968
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 6.984
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.017
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.034
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.051
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.067
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.084
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.101
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.118
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.134
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.151
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.184
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.2
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.217
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.234
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.251
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.268
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.285
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.301
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.319
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.333
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.351
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.368
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.384
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.4
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.417
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.434
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.451
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.468
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.485
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.5
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.534
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.551
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.567
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.585
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.6
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.617
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.634
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.651
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.668
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.684
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.701
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.718
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.734
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.751
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.766
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.784
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.801
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.817
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.833
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.85
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.867
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.885
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.901
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.918
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.951
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.967
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 7.984
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.001
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.017
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.034
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.051
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.068
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.084
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.101
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.118
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.133
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.15
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.167
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.184
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.201
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.217
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.234
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.25
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.267
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.285
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.301
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.318
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.334
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.351
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.367
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.401
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.417
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.434
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.451
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.467
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.484
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.501
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.516
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.534
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.551
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.568
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.584
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.601
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.617
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.634
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.651
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.668
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.684
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.701
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.717
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.734
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.751
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.767
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.784
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.8
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.817
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.85
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.867
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.884
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.901
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.918
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.934
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.951
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.967
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 8.984
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 9.001
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 9.016
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 9.033
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 9.051
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 9.067
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 9.085
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 9.101
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 9.117
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 9.133
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 9.15
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 9.167
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 9.201
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 9.227
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.234
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.251
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.268
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.284
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.3
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.317
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.334
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.368
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.385
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.402
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.417
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.435
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.451
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.468
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.483
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.501
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.518
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.535
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.551
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.567
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.585
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.601
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.618
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.634
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.651
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.668
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.684
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.701
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.718
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.734
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.751
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.768
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.784
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.817
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.834
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.851
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.867
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.884
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.901
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.916
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.934
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.952
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.968
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 9.985
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.002
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.017
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.035
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.051
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.068
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.085
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.101
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.118
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.133
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.15
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.167
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.184
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.201
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.218
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.234
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.251
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.284
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.301
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.318
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.335
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.351
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.368
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.384
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.401
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.418
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.434
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.452
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.467
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.484
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.501
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.517
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.535
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.551
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.567
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.584
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.601
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.618
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.635
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.651
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.667
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.685
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.718
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.735
      },
      {
        "event": "OffShowMenu",
        "args": [
          "closeDoor",
          "[object]"
        ],
        "time": 10.751
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 10.768
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 10.784
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 10.8
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 10.817
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 10.834
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 10.851
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 10.868
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 10.884
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 10.901
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 10.917
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 10.934
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 10.951
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 10.968
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 10.985
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.001
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.018
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.035
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.051
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.068
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.084
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.1
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.118
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.133
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.15
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.168
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.184
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.218
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.234
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.25
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.267
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.284
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.3
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.317
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.335
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.35
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.367
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.384
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.401
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.417
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.434
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.451
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.467
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.485
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.501
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.517
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.535
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.551
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.568
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.584
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.6
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.617
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.635
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.651
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.667
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.685
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.701
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.716
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.733
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.75
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 11.767
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 11.785
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 11.801
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 11.817
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 11.835
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 11.868
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 11.884
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 11.901
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 11.918
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 11.934
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 11.951
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 11.968
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 11.984
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.001
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.017
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.034
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.051
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.068
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.084
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.1
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.118
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.135
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.152
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.168
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.185
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.201
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.218
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.234
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.251
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.267
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.284
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.3
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.334
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.334
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.367
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.384
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.401
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.417
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.434
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.451
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.466
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.483
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.5
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.518
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed",
          "[object]"
        ],
        "time": 12.534
      },
      {
        "event": "BuildGoToBed",
        "args": [
          "[object]",
          4,
          true,
          0
        ],
        "time": 12.534
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          1575,
          1215,
          false
        ],
        "time": 12.534
      },
      {
        "event": "OInPutEvent_on",
        "args": [],
        "time": 12.534
      },
      {
        "event": "OffShowMenu",
        "args": [
          "upBed"
        ],
        "time": 12.534
      },
      {
        "event": "OffHideMenu",
        "args": [],
        "time": 12.534
      },
      {
        "event": "PAILKillPlayer",
        "args": [
          "[object]"
        ],
        "time": 12.534
      },
      {
        "event": "BattleUITaskComplete",
        "args": [],
        "time": 12.584
      },
      {
        "event": "gatling_move",
        "args": [
          "[object]"
        ],
        "time": 12.684
      },
      {
        "event": "toycrane_move",
        "args": [
          "[object]"
        ],
        "time": 12.684
      },
      {
        "event": "BuildGoToBed",
        "args": [
          "[object]",
          1,
          false,
          3
        ],
        "time": 22.534
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          1125,
          1395,
          false
        ],
        "time": 22.534
      },
      {
        "event": "UIGMPlayerHit",
        "args": [
          1
        ],
        "time": 22.534
      },
      {
        "event": "BuildSetRoomDie",
        "args": [
          1
        ],
        "time": 22.534
      },
      {
        "event": "MGMRoomBlack",
        "args": [
          1
        ],
        "time": 22.534
      },
      {
        "event": "wellayiBlockPlayerDie",
        "args": [],
        "time": 22.534
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          1575,
          1575,
          true
        ],
        "time": 22.534
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          1575,
          1575
        ],
        "time": 22.534
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 22.534
      },
      {
        "event": "UIGMTips",
        "args": [
          "玩家:酆桂冬已被淘汰!"
        ],
        "time": 22.534
      },
      {
        "event": "GMGameOver",
        "args": [
          true
        ],
        "time": 22.534
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          1125,
          1035,
          true
        ],
        "time": 22.534
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          1125,
          1035
        ],
        "time": 22.534
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 22.534
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          "[object]",
          "[object]",
          true
        ],
        "time": 22.534
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 22.534
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          1575,
          1215,
          true
        ],
        "time": 22.534
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          1575,
          1215
        ],
        "time": 22.534
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 22.534
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          1125,
          1395,
          true
        ],
        "time": 22.534
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          1125,
          1395
        ],
        "time": 22.534
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 22.534
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          1485,
          1035,
          true
        ],
        "time": 22.534
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          1485,
          1035
        ],
        "time": 22.534
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 22.534
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          1305,
          1485,
          true
        ],
        "time": 22.534
      },
      {
        "event": "BuildSetTWinkSkin",
        "args": [
          1305,
          1485
        ],
        "time": 22.534
      },
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 22.534
      },
      {
        "event": "gatling_move",
        "args": [
          "[object]"
        ],
        "time": 22.534
      },
      {
        "event": "toycrane_move",
        "args": [
          "[object]"
        ],
        "time": 22.534
      }
    ]
  },
  "sourceRun": "extended-final-entry.json"
}
✓ 七怪原冷却表与猎梦者冷却差异 配置契约
{
  "name": "七怪原冷却表与猎梦者冷却差异",
  "kind": "配置契约",
  "status": "pass",
  "evidence": {
    "nightmare": [
      60,
      80,
      60,
      60,
      60,
      60,
      120
    ],
    "troll": [
      60,
      90,
      60,
      60,
      60,
      60,
      120
    ]
  },
  "sourceRun": "extended-final-entry.json"
}
✓ 七怪0 虚影触发→原3秒退出与轮次 技能边界
{
  "name": "七怪0 虚影触发→原3秒退出与轮次",
  "kind": "技能边界",
  "status": "pass",
  "evidence": {
    "before": 1,
    "after": 2,
    "goi": [
      7.067,
      0,
      0,
      0,
      0,
      0,
      0
    ],
    "turretSilenceNotAsserted": true
  },
  "sourceRun": "extended-final-entry.json"
}
✓ 七怪2 低血愤怒:原连续回血与退出 技能边界
{
  "name": "七怪2 低血愤怒:原连续回血与退出",
  "kind": "技能边界",
  "status": "pass",
  "evidence": {
    "before": 90,
    "after": 144,
    "max": 300,
    "round": 2
  },
  "sourceRun": "extended-final-entry.json"
}
✓ 七怪3 懒惰:攻击次数与倍率退出 技能边界
{
  "name": "七怪3 懒惰:攻击次数与倍率退出",
  "kind": "技能边界",
  "status": "pass",
  "evidence": {
    "trace": [
      {
        "viu": 3,
        "vyx": 2,
        "xdi": true
      },
      {
        "viu": 4,
        "vyx": 2,
        "xdi": true
      },
      {
        "viu": 5,
        "vyx": 2,
        "xdi": true
      },
      {
        "viu": 6,
        "vyx": 2,
        "xdi": true
      },
      {
        "viu": 1,
        "vyx": 1,
        "xdi": false
      }
    ],
    "zma": 5,
    "round": 2
  },
  "sourceRun": "extended-final-entry.json"
}
✓ 七怪6 爱欲:原六种召唤耗尽不再追加 技能边界
{
  "name": "七怪6 爱欲:原六种召唤耗尽不再追加",
  "kind": "技能边界",
  "status": "pass",
  "evidence": {
    "summons": [
      {
        "event": "TLCreateNewTroll",
        "args": [
          0,
          "大头鬼"
        ],
        "time": 4.047
      },
      {
        "event": "TLCreateNewTroll",
        "args": [
          2,
          "宿管阿姨"
        ],
        "time": 4.047
      },
      {
        "event": "TLCreateNewTroll",
        "args": [
          3,
          "绷带男"
        ],
        "time": 4.047
      },
      {
        "event": "TLCreateNewTroll",
        "args": [
          4,
          "小红"
        ],
        "time": 4.047
      },
      {
        "event": "TLCreateNewTroll",
        "args": [
          5,
          "阿飘"
        ],
        "time": 4.047
      },
      {
        "event": "TLCreateNewTroll",
        "args": [
          6,
          "孙婆婆"
        ],
        "time": 4.047
      }
    ],
    "qwx": 6,
    "round": 8
  },
  "sourceRun": "extended-final-entry.json"
}
✓ 孙小美 原60秒入场+25秒首波生成与计数 自然时间
{
  "name": "孙小美 原60秒入场+25秒首波生成与计数",
  "kind": "自然时间",
  "status": "pass",
  "evidence": {
    "state": {
      "mode": 5,
      "map": 24,
      "plot": 3,
      "pol": 0,
      "time": 85.5,
      "rooms": 6,
      "players": 5,
      "controller": "GM",
      "monster": {
        "level": 1,
        "hp": 300,
        "maxHP": 300,
        "ratio": 1,
        "state": 5,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": {
        "HP": 1,
        "dead": false,
        "room": -1,
        "asleep": false
      },
      "result": false,
      "monsterEnded": false,
      "settled": false
    },
    "wave": 1,
    "serial": 1,
    "seconds": 0,
    "cooldowns": [
      20,
      20,
      20,
      18,
      18,
      18,
      16,
      16,
      16,
      14,
      14,
      14,
      12,
      12,
      12,
      10,
      10,
      10,
      8,
      8,
      8,
      6,
      6,
      6,
      4,
      4,
      4
    ],
    "events": [
      {
        "event": "BuildGoToBed",
        "args": [
          "[object]",
          3,
          false,
          2
        ],
        "time": 19.048
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          1485,
          3015,
          true
        ],
        "time": 19.048
      },
      {
        "event": "BuildGoToBed",
        "args": [
          "[object]",
          5,
          false,
          0
        ],
        "time": 19.048
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          1485,
          3015,
          true
        ],
        "time": 19.048
      },
      {
        "event": "BuildGoToBed",
        "args": [
          "[object]",
          4,
          false,
          0
        ],
        "time": 19.548
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          1485,
          3015,
          true
        ],
        "time": 19.548
      },
      {
        "event": "BuildGoToBed",
        "args": [
          "[object]",
          4,
          false,
          3
        ],
        "time": 20.048
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          1485,
          3015,
          true
        ],
        "time": 20.048
      },
      {
        "event": "BuildGoToBed",
        "args": [
          "[object]",
          1,
          false,
          50
        ],
        "time": 20.549
      },
      {
        "event": "MGMSetBlockDynWalkable",
        "args": [
          1485,
          3015,
          true
        ],
        "time": 20.549
      },
      {
        "event": "changeWords",
        "args": [
          "[object]",
          5000
        ],
        "time": 30.565
      },
      {
        "event": "changeWords",
        "args": [
          "[object]",
          5000
        ],
        "time": 40.565
      },
      {
        "event": "MapUpBuild",
        "args": [
          "[object]",
          "bed_2"
        ],
        "time": 46.099
      },
      {
        "event": "BuildUpBuild",
        "args": [
          "1215_3195",
          "[object]"
        ],
        "time": 46.099
      },
      {
        "event": "MapUpBuild",
        "args": [
          "[object]",
          "bed_2"
        ],
        "time": 46.099
      },
      {
        "event": "BuildUpBuild",
        "args": [
          "1395_3285",
          "[object]"
        ],
        "time": 46.099
      },
      {
        "event": "MapUpBuild",
        "args": [
          "[object]",
          "bed_2"
        ],
        "time": 46.099
      },
      {
        "event": "BuildUpBuild",
        "args": [
          "1665_2925",
          "[object]"
        ],
        "time": 46.099
      },
      {
        "event": "MapUpBuild",
        "args": [
          "[object]",
          "bed_2"
        ],
        "time": 46.099
      },
      {
        "event": "BuildUpBuild",
        "args": [
          "1665_3285",
          "[object]"
        ],
        "time": 46.099
      },
      {
        "event": "changeWords",
        "args": [
          "[object]",
          5000
        ],
        "time": 50.565
      },
      {
        "event": "UIGMTips",
        "args": [
          "猎梦者进入了宿舍楼"
        ],
        "time": 60.266
      },
      {
        "event": "MainLgTrollUpData",
        "args": [],
        "time": 60.266
      },
      {
        "event": "SkillAddEvent",
        "args": [],
        "time": 60.266
      },
      {
        "event": "changeWords",
        "args": [
          "[object]",
          5000
        ],
        "time": 80.549
      },
      {
        "event": "GMPuppetMode",
        "args": [
          1,
          "钱复荷",
          0,
          "[object]",
          "lm",
          1,
          1,
          0
        ],
        "time": 85.482
      },
      {
        "event": "MapAddActivity",
        "args": [
          "[object]",
          37,
          5
        ],
        "time": 85.5
      }
    ]
  },
  "sourceRun": "extended-final-entry.json"
}
✓ 剧情5 盟友建筑原菜单:变卖退款与两次记录 菜单经济边界
{
  "name": "剧情5 盟友建筑原菜单:变卖退款与两次记录",
  "kind": "菜单经济边界",
  "status": "pass",
  "evidence": {
    "fixture": "双方余额100/100;剧情5盟友塔建造/升级为边界准备,检查原菜单变卖;剧情6检查原菜单购买/升级。未验证自然积累与地图解锁",
    "trace": [
      {
        "price": 8,
        "upgrade": 16,
        "targetRoom": 0,
        "localRoom": 6,
        "before": {
          "own": 100,
          "other": 100
        },
        "afterPurchase": {
          "own": 100,
          "other": 92
        },
        "afterUpgrade": {
          "own": 100,
          "other": 76
        },
        "refund": 8,
        "dismantles": 1
      },
      {
        "price": 8,
        "upgrade": 16,
        "targetRoom": 0,
        "localRoom": 6,
        "before": {
          "own": 108,
          "other": 76
        },
        "afterPurchase": {
          "own": 108,
          "other": 68
        },
        "afterUpgrade": {
          "own": 108,
          "other": 52
        },
        "refund": 8,
        "dismantles": 2
      }
    ],
    "state": {
      "mode": 3,
      "map": 5,
      "plot": 5,
      "pol": 0,
      "time": 12.615,
      "rooms": 12,
      "players": 5,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": 300,
        "maxHP": 300,
        "ratio": 1,
        "state": 0,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": {
        "HP": 1,
        "dead": false,
        "room": 6,
        "asleep": true
      },
      "result": false,
      "monsterEnded": false,
      "settled": false
    }
  },
  "sourceRun": "extended-allies-final.json"
}
✓ 剧情6 盟友建筑原菜单:代付建造与升级扣费 菜单经济边界
{
  "name": "剧情6 盟友建筑原菜单:代付建造与升级扣费",
  "kind": "菜单经济边界",
  "status": "pass",
  "evidence": {
    "fixture": "双方余额100/100;剧情5盟友塔建造/升级为边界准备,检查原菜单变卖;剧情6检查原菜单购买/升级。未验证自然积累与地图解锁",
    "trace": [
      {
        "price": 8,
        "upgrade": 16,
        "targetRoom": 12,
        "localRoom": 0,
        "before": {
          "own": 100,
          "other": 100
        },
        "afterPurchase": {
          "own": 100,
          "other": 92
        },
        "afterUpgrade": {
          "own": 100,
          "other": 76
        }
      }
    ],
    "state": {
      "mode": 3,
      "map": 6,
      "plot": 6,
      "pol": 0,
      "time": 8.167,
      "rooms": 13,
      "players": 5,
      "controller": "Uw",
      "monster": {
        "level": 1,
        "hp": 300,
        "maxHP": 300,
        "ratio": 1,
        "state": 5,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": {
        "HP": 1,
        "dead": false,
        "room": 0,
        "asleep": true
      },
      "result": false,
      "monsterEnded": false,
      "settled": false
    }
  },
  "sourceRun": "extended-allies-final.json"
}
✓ 剧情10 原吞鬼瓶:旺盛 原按钮与血量边界
{
  "name": "剧情10 原吞鬼瓶:旺盛",
  "kind": "原按钮与血量边界",
  "status": "pass",
  "evidence": {
    "fixture": "攻击目标与HP边界;旺盛90%或地狱标记;原按钮→原更新检查",
    "variant": "旺盛",
    "bottleBefore": 2,
    "bottleAfter": 1,
    "captured": 0,
    "hp": 0.9,
    "events": [
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 13.118
      },
      {
        "event": "UIGMTips",
        "args": [
          "玩家:滕炳已被淘汰!"
        ],
        "time": 13.118
      },
      {
        "event": "GMPuppetMode",
        "args": [
          2,
          "滕炳",
          5,
          1
        ],
        "time": 13.118
      },
      {
        "event": "SetRetrieveRounds",
        "args": [
          0
        ],
        "time": 13.118
      },
      {
        "event": "BuildHandleRoomBuff",
        "args": [
          5,
          9
        ],
        "time": 13.118
      },
      {
        "event": "MapAddActivity",
        "args": [
          "[object]",
          20,
          39
        ],
        "time": 13.118
      },
      {
        "event": "UIGMTips",
        "args": [
          "滕炳 变成了伥鬼"
        ],
        "time": 13.118
      },
      {
        "event": "UIGMTips",
        "args": [
          "滕炳生命力旺盛,回收失败"
        ],
        "time": 13.118
      }
    ]
  },
  "sourceRun": "extended-retrieve-final.json"
}
✓ 剧情10 原吞鬼瓶:地狱 原按钮与血量边界
{
  "name": "剧情10 原吞鬼瓶:地狱",
  "kind": "原按钮与血量边界",
  "status": "pass",
  "evidence": {
    "fixture": "攻击目标与HP边界;旺盛90%或地狱标记;原按钮→原更新检查",
    "variant": "地狱",
    "bottleBefore": 2,
    "bottleAfter": 1,
    "captured": 0,
    "hp": 0.3,
    "events": [
      {
        "event": "MAPDemolish",
        "args": [
          "[object]",
          "[object]"
        ],
        "time": 15.181
      },
      {
        "event": "UIGMTips",
        "args": [
          "玩家:费小常已被淘汰!"
        ],
        "time": 15.181
      },
      {
        "event": "GMPuppetMode",
        "args": [
          2,
          "费小常",
          0,
          1
        ],
        "time": 15.181
      },
      {
        "event": "SetRetrieveRounds",
        "args": [
          0
        ],
        "time": 15.181
      },
      {
        "event": "BuildHandleRoomBuff",
        "args": [
          3,
          9
        ],
        "time": 15.181
      },
      {
        "event": "MapAddActivity",
        "args": [
          "[object]",
          1,
          20
        ],
        "time": 15.181
      },
      {
        "event": "UIGMTips",
        "args": [
          "费小常 变成了伥鬼"
        ],
        "time": 15.181
      },
      {
        "event": "UIGMTips",
        "args": [
          "费小常已堕入地狱,无法被净化"
        ],
        "time": 15.181
      }
    ]
  },
  "sourceRun": "extended-retrieve-final.json"
}
✓ 剧情10 原吞鬼瓶:成功→释放答谢→结算 原按钮与血量边界
{
  "name": "剧情10 原吞鬼瓶:成功→释放答谢→结算",
  "kind": "原按钮与血量边界",
  "status": "pass",
  "evidence": {
    "fixture": "攻击目标和低血30%用于保证原概率分支;未直接调用回收/结算",
    "name": "朱翠",
    "originalId": 2,
    "bottleBefore": 2,
    "bottleAfter": 1,
    "bonus": 10,
    "amount": 40,
    "walletBefore": 206,
    "walletAfter": 246,
    "revived": true
  },
  "sourceRun": "extended-retrieve-final.json"
}
✓ 剧情11 原锦囊:库存扣除→真实三选一→门组件 原菜单契约
{
  "name": "剧情11 原锦囊:库存扣除→真实三选一→门组件",
  "kind": "原菜单契约",
  "status": "pass",
  "evidence": {
    "before": 3,
    "after": 2,
    "usedBefore": 0,
    "usedAfter": 1,
    "candidates": [
      {
        "hph": "chewgun",
        "efw": "chewgun"
      },
      {
        "hph": "mirror",
        "efw": "mirror"
      },
      {
        "hph": "fortune",
        "efw": "fortune"
      }
    ],
    "chosen": {
      "hph": "chewgun",
      "efw": "chewgun"
    },
    "doorEffect": "chewgun",
    "components": 12
  },
  "sourceRun": "extended-bag-tax-final.json"
}
✓ 剧情12 原赔款建造:费用/库存/一秒节拍/攻击态上限 经济与时间边界
{
  "name": "剧情12 原赔款建造:费用/库存/一秒节拍/攻击态上限",
  "kind": "经济与时间边界",
  "status": "pass",
  "evidence": {
    "fixture": "持有1蓝图、资金价格边界;目标房/攻击态/模拟时钟边界。仅调用原注册建筑管理器更新,未修改公式",
    "price": 50,
    "inventoryBefore": 1,
    "inventoryAfter": 0,
    "originalDamage": 1.6,
    "trace": [
      {
        "delta": 0.8,
        "attack": true,
        "damage": 1.6,
        "expected": 0,
        "got": 0
      },
      {
        "delta": 0.3,
        "attack": true,
        "damage": 1.6,
        "expected": 1,
        "got": 1
      },
      {
        "delta": 1.1,
        "attack": false,
        "damage": 1.6,
        "expected": 0,
        "got": 0
      },
      {
        "delta": 1.1,
        "attack": true,
        "damage": 1000,
        "expected": 128,
        "got": 128
      }
    ]
  },
  "sourceRun": "extended-bag-tax-final.json"
}
✓ 七怪1 黑洞:等级4门触发→原2+8秒迁移退出 技能与动画边界
{
  "name": "七怪1 黑洞:等级4门触发→原2+8秒迁移退出",
  "kind": "技能与动画边界",
  "status": "pass",
  "evidence": {
    "fixture": "等级4、就绪技能与目标门边界;原Tween实际播放",
    "before": {
      "x": 1845,
      "y": 3546,
      "round": 1
    },
    "after": {
      "x": 1674,
      "y": 585,
      "round": 2
    },
    "targetBed": {
      "x": 7,
      "y": 20
    }
  },
  "sourceRun": "extended-nightmare-final.json"
}
✓ 七怪4 贪婪:真实分身生成→40秒退出边界 技能与时间边界
{
  "name": "七怪4 贪婪:真实分身生成→40秒退出边界",
  "kind": "技能与时间边界",
  "status": "pass",
  "evidence": {
    "fixture": "技能就绪;通过原时钟边界推进41秒,未替代40秒规则",
    "spawned": true,
    "round": 2,
    "off": true,
    "removed": true
  },
  "sourceRun": "extended-nightmare-final.json"
}
✓ 七怪5 暴食:被动速度与强化倍率 被动属性边界
{
  "name": "七怪5 暴食:被动速度与强化倍率",
  "kind": "被动属性边界",
  "status": "pass",
  "evidence": {
    "fixture": "强化标记仅用于属性边界;没有声称60%强化随机自然触发",
    "base": 4.5,
    "normal": 9,
    "stronger": 9.9
  },
  "sourceRun": "extended-nightmare-final.json"
}
✓ 孙小美 原后续波次:25拍与末尾9拍封顶 原生成handler边界
{
  "name": "孙小美 原后续波次:25拍与末尾9拍封顶",
  "kind": "原生成handler边界",
  "status": "pass",
  "evidence": {
    "fixture": "原kjn handler逐拍调用;首波真实85秒自然计时已单独验收。本项不是自然多波存活录像",
    "first": [
      {
        "type": "lm",
        "ID": 1,
        "level": 1
      }
    ],
    "final": {
      "wave": 3,
      "serial": 4,
      "index": 26,
      "interval": 9
    }
  },
  "sourceRun": "extended-sun-system-final.json"
}
✓ 孙小美 原圣剑:逐级电力扣款→满充御剑按钮→真实胜利 原升级与动画边界
{
  "name": "孙小美 原圣剑:逐级电力扣款→满充御剑按钮→真实胜利",
  "kind": "原升级与动画边界",
  "status": "pass",
  "evidence": {
    "fixture": "每级电力不足/恰好价格边界;未直接写剑等级或100充能",
    "trace": [
      {
        "level": 2,
        "cost": 4,
        "charge": 10,
        "maskY": 113.5
      },
      {
        "level": 3,
        "cost": 8,
        "charge": 20,
        "maskY": 106
      },
      {
        "level": 4,
        "cost": 16,
        "charge": 30,
        "maskY": 98.5
      },
      {
        "level": 5,
        "cost": 32,
        "charge": 40,
        "maskY": 91
      },
      {
        "level": 6,
        "cost": 65,
        "charge": 50,
        "maskY": 83.5
      },
      {
        "level": 7,
        "cost": 128,
        "charge": 60,
        "maskY": 76
      },
      {
        "level": 8,
        "cost": 256,
        "charge": 70,
        "maskY": 68.5
      },
      {
        "level": 9,
        "cost": 512,
        "charge": 80,
        "maskY": 61
      },
      {
        "level": 10,
        "cost": 1024,
        "charge": 90,
        "maskY": 53.5
      },
      {
        "level": 11,
        "cost": 2048,
        "charge": 100,
        "maskY": 46
      }
    ],
    "state": {
      "mode": 5,
      "map": 24,
      "plot": 3,
      "pol": 0,
      "time": 20.648,
      "rooms": 0,
      "players": 0,
      "controller": "GM",
      "monster": {
        "level": 1,
        "hp": 300,
        "maxHP": 300,
        "ratio": 1,
        "state": 5,
        "exp": 0,
        "threshold": 30,
        "damage": 2
      },
      "player": null,
      "result": true,
      "monsterEnded": true,
      "settled": true
    }
  },
  "sourceRun": "extended-sun-system-final.json"
}
✓ 孙小美 原4000电力捕获:原显示更新→5秒迁移→保护与清理 原资源触发与动画边界
{
  "name": "孙小美 原4000电力捕获:原显示更新→5秒迁移→保护与清理",
  "kind": "原资源触发与动画边界",
  "status": "pass",
  "evidence": {
    "fixture": "电力4000边界;原Im.yua、捕获事件和5秒Tween实际执行;未将捕获当作死亡复活",
    "stateAtCapture": 9,
    "stateAfter": 3,
    "sunHpBefore": 270,
    "sunHpAfter": 270,
    "position": {
      "x": 1935,
      "y": 225
    },
    "timers": [
      "UpBtn",
      "UpGpld",
      "GoldCoinDetection",
      "Sound_UpSound",
      "RoomBuildUp",
      "SkillUIUpEvent",
      "changeBigger",
      "EndTimer"
    ]
  },
  "sourceRun": "extended-sun-system-final.json"
}
✓ 猎梦者 原狂暴按钮:一次消耗与8秒恢复 原按钮与时间边界
{
  "name": "猎梦者 原狂暴按钮:一次消耗与8秒恢复",
  "kind": "原按钮与时间边界",
  "status": "pass",
  "evidence": {
    "fixture": "原按钮已创建;就绪标记与原时钟8.1秒边界",
    "before": 1,
    "after": 1,
    "ready": false
  },
  "sourceRun": "extended-troll-final.json"
}
✓ 猎梦者 原震撼按钮:就绪一次消耗 原按钮契约
{
  "name": "猎梦者 原震撼按钮:就绪一次消耗",
  "kind": "原按钮契约",
  "status": "pass",
  "evidence": {
    "fixture": "技能就绪边界;本项不证明范围内炮台禁火,另列待验",
    "readyAfter": false,
    "buttonSkin": "equipment/img_paralysisSkill0.png"
  },
  "sourceRun": "extended-troll-final.json"
}
✓ 猎梦者 原魔盒按钮:库存扣除与三项不重复技能 原按钮与随机库契约
{
  "name": "猎梦者 原魔盒按钮:库存扣除与三项不重复技能",
  "kind": "原按钮与随机库契约",
  "status": "pass",
  "evidence": {
    "fixture": "隔离库存准备3个魔盒及原按钮计数;原随机抽取,未固定随机数",
    "trace": [
      {
        "before": 3,
        "after": 2,
        "skills": [
          "HammerEquipSkill"
        ]
      },
      {
        "before": 2,
        "after": 1,
        "skills": [
          "HammerEquipSkill",
          "FrogTowerEquipSkill"
        ]
      },
      {
        "before": 1,
        "after": 0,
        "skills": [
          "HammerEquipSkill",
          "FrogTowerEquipSkill",
          "ShadowBladeEquipSkill"
        ]
      }
    ]
  },
  "sourceRun": "extended-troll-final.json"
}
✓ 猎梦者 原装备商店:10币不足/成功/满包 原商店按钮与费用边界
{
  "name": "猎梦者 原装备商店:10币不足/成功/满包",
  "kind": "原商店按钮与费用边界",
  "status": "pass",
  "evidence": {
    "fixture": "隔离金币价格边界/升级阈值/满6格装备;通过实际原商店按钮",
    "price": 10,
    "successExpDelta": 30,
    "fullBag": {
      "cost": 10,
      "expDelta": 0,
      "slots": 6
    },
    "videoSdkInvoked": false
  },
  "sourceRun": "extended-troll-final.json"
}
✓ 猎梦者 原装备商店:15币不足/成功/满包 原商店按钮与费用边界
{
  "name": "猎梦者 原装备商店:15币不足/成功/满包",
  "kind": "原商店按钮与费用边界",
  "status": "pass",
  "evidence": {
    "fixture": "隔离金币价格边界/升级阈值/满6格装备;通过实际原商店按钮",
    "price": 15,
    "successExpDelta": 30,
    "fullBag": {
      "cost": 15,
      "expDelta": 0,
      "slots": 6
    },
    "videoSdkInvoked": false
  },
  "sourceRun": "extended-troll-final.json"
}
✓ 孙小美 原玩家拆遗产:真实图物→1金币→索引移除 原菜单与经济边界
{
  "name": "孙小美 原玩家拆遗产:真实图物→1金币→索引移除",
  "kind": "原菜单与经济边界",
  "status": "pass",
  "evidence": {
    "key": "9_16",
    "skin": "energyhood_1",
    "before": {
      "gold1": 91,
      "gold2": 0
    },
    "after": {
      "gold1": 92,
      "gold2": 0
    }
  },
  "sourceRun": "extended-sun-economy-second.json"
}
✓ 孙小美 原挖遗产:1秒完成按配置发电力 抵达边界与真实动画
{
  "name": "孙小美 原挖遗产:1秒完成按配置发电力",
  "kind": "抵达边界与真实动画",
  "status": "pass",
  "evidence": {
    "fixture": "准备已抵达真实遗产及对应原npo引用,未声称60秒离床导航已通过",
    "cancel": false,
    "key": "8_16",
    "skin": "frogmoney_5",
    "reward": 8,
    "before": 0,
    "after": 8,
    "exists": false
  },
  "sourceRun": "extended-sun-economy-second.json"
}
✓ 孙小美 原挖遗产:低血取消不发电力 抵达边界与真实动画
{
  "name": "孙小美 原挖遗产:低血取消不发电力",
  "kind": "抵达边界与真实动画",
  "status": "pass",
  "evidence": {
    "fixture": "准备已抵达真实遗产及对应原npo引用,未声称60秒离床导航已通过",
    "cancel": true,
    "key": "9_16",
    "skin": "spell_1",
    "reward": 65,
    "before": 0,
    "after": 0,
    "exists": true
  },
  "sourceRun": "extended-sun-cancel-final.json"
}
✓ 孙小美 原真正死亡:致死受击→失败结算 致死伤害边界
{
  "name": "孙小美 原真正死亡:致死受击→失败结算",
  "kind": "致死伤害边界",
  "status": "pass",
  "evidence": {
    "fixture": "原孙小美致死伤害边界;未改本地角色或直接触发结算",
    "state": {
      "mode": 5,
      "map": 24,
      "plot": 3,
      "pol": 0,
      "time": 20.598,
      "rooms": 0,
      "players": 0,
      "controller": "GM",
      "monster": {
        "level": 1,
        "hp": 300,
        "maxHP": 300,
        "ratio": 1,
        "state": 5,
        "exp": 0,
        "threshold": 27,
        "damage": 2
      },
      "player": null,
      "result": false,
      "monsterEnded": true,
      "settled": true
    },
    "automaticReviveInvented": false
  },
  "sourceRun": "extended-sun-economy-second.json"
}
✓ 孙小美 原救援期限:捕获后第300拍→失败 原期限handler边界
{
  "name": "孙小美 原救援期限:捕获后第300拍→失败",
  "kind": "原期限handler边界",
  "status": "pass",
  "evidence": {
    "fixture": "原捕获Tween完成后原ize逐拍调用;不将300拍单测称为30秒自然录像",
    "ticks": 300,
    "state": {
      "mode": 5,
      "map": 24,
      "plot": 3,
      "pol": 0,
      "time": 25.634,
      "rooms": 0,
      "players": 0,
      "controller": "GM",
      "monster": {
        "level": 1,
        "hp": 300,
        "maxHP": 300,
        "ratio": 1,
        "state": 5,
        "exp": 0,
        "threshold": 27,
        "damage": 2
      },
      "player": null,
      "result": false,
      "monsterEnded": true,
      "settled": true
    }
  },
  "sourceRun": "extended-sun-economy-second.json"
}
✓ 森林 原生成器:费用拒绝/三掉落/忙保护/合法拖放 原刷新与拖放边界
{
  "name": "森林 原生成器:费用拒绝/三掉落/忙保护/合法拖放",
  "kind": "原刷新与拖放边界",
  "status": "pass",
  "evidence": {
    "fixture": "局内资源价格边界;原随机掉落,移动的是拖动图标并发送其已绑定dragend,不修改建筑/角色位置",
    "room": 4,
    "cost": [
      5,
      20,
      0
    ],
    "roundBefore": 1,
    "roundAfter": 2,
    "drops": [
      "door_1",
      "door_1",
      "at_3"
    ],
    "placed": {
      "name": "door_1",
      "target": {
        "row": 13,
        "col": 19
      },
      "entity": "door",
      "level": 1
    }
  },
  "sourceRun": "extended-forest-final.json"
}