[
  {
    "id": "UI01-01",
    "ui": "UI01",
    "title": "启动与资源加载",
    "state": "首次加载",
    "content": "资源准备中 35%",
    "action": "等待",
    "prefab": "ui_boot",
    "html": "states/UI01-01.html",
    "png": "states/UI01-01.png",
    "rule": "游戏标识、进度、加载短句、重试。首次／缓存加载／超时／资源更新失败",
    "special": ""
  },
  {
    "id": "UI01-02",
    "ui": "UI01",
    "title": "启动与资源加载",
    "state": "缓存加载",
    "content": "校验资源 80%",
    "action": "等待",
    "prefab": "ui_boot",
    "html": "states/UI01-02.html",
    "png": "states/UI01-02.png",
    "rule": "游戏标识、进度、加载短句、重试。首次／缓存加载／超时／资源更新失败",
    "special": ""
  },
  {
    "id": "UI01-03",
    "ui": "UI01",
    "title": "启动与资源加载",
    "state": "超时",
    "content": "连接较慢，进度保留",
    "action": "重试",
    "prefab": "ui_boot",
    "html": "states/UI01-03.html",
    "png": "states/UI01-03.png",
    "rule": "游戏标识、进度、加载短句、重试。首次／缓存加载／超时／资源更新失败",
    "special": ""
  },
  {
    "id": "UI01-04",
    "ui": "UI01",
    "title": "启动与资源加载",
    "state": "更新失败",
    "content": "战斗资源下载失败",
    "action": "重新下载",
    "prefab": "ui_boot",
    "html": "states/UI01-04.html",
    "png": "states/UI01-04.png",
    "rule": "游戏标识、进度、加载短句、重试。首次／缓存加载／超时／资源更新失败",
    "special": ""
  },
  {
    "id": "UI02-01",
    "ui": "UI02",
    "title": "登录与恢复",
    "state": "自动登录",
    "content": "正在恢复账号",
    "action": "等待",
    "prefab": "ui_login",
    "html": "states/UI02-01.html",
    "png": "states/UI02-01.png",
    "rule": "自动登录、失败原因、重试。凭证过期／网络失败／账号恢复；不做密码注册表单",
    "special": ""
  },
  {
    "id": "UI02-02",
    "ui": "UI02",
    "title": "登录与恢复",
    "state": "凭证过期",
    "content": "登录状态已过期",
    "action": "重新登录",
    "prefab": "ui_login",
    "html": "states/UI02-02.html",
    "png": "states/UI02-02.png",
    "rule": "自动登录、失败原因、重试。凭证过期／网络失败／账号恢复；不做密码注册表单",
    "special": ""
  },
  {
    "id": "UI02-03",
    "ui": "UI02",
    "title": "登录与恢复",
    "state": "网络失败",
    "content": "连接中断，原进度保留",
    "action": "重试",
    "prefab": "ui_login",
    "html": "states/UI02-03.html",
    "png": "states/UI02-03.png",
    "rule": "自动登录、失败原因、重试。凭证过期／网络失败／账号恢复；不做密码注册表单",
    "special": ""
  },
  {
    "id": "UI02-04",
    "ui": "UI02",
    "title": "登录与恢复",
    "state": "恢复成功",
    "content": "已恢复上次进度",
    "action": "进入主城",
    "prefab": "ui_login",
    "html": "states/UI02-04.html",
    "png": "states/UI02-04.png",
    "rule": "自动登录、失败原因、重试。凭证过期／网络失败／账号恢复；不做密码注册表单",
    "special": ""
  },
  {
    "id": "UI03-01",
    "ui": "UI03",
    "title": "平台必要授权与协议",
    "state": "授权说明",
    "content": "仅在需要时打开平台原生授权",
    "action": "查看并继续",
    "prefab": "ui_privacy",
    "html": "states/UI03-01.html",
    "png": "states/UI03-01.png",
    "rule": "平台原生入口、用途、可查看文本。同意／拒绝／稍后；自制面板不能冒充原生授权",
    "special": "平台原生内容仅示意占位，不要求美术复制系统授权或广告播放器。"
  },
  {
    "id": "UI03-02",
    "ui": "UI03",
    "title": "平台必要授权与协议",
    "state": "已同意",
    "content": "所需授权已完成",
    "action": "继续",
    "prefab": "ui_privacy",
    "html": "states/UI03-02.html",
    "png": "states/UI03-02.png",
    "rule": "平台原生入口、用途、可查看文本。同意／拒绝／稍后；自制面板不能冒充原生授权",
    "special": "平台原生内容仅示意占位，不要求美术复制系统授权或广告播放器。"
  },
  {
    "id": "UI03-03",
    "ui": "UI03",
    "title": "平台必要授权与协议",
    "state": "拒绝",
    "content": "该能力暂不可用，保留可用功能",
    "action": "返回",
    "prefab": "ui_privacy",
    "html": "states/UI03-03.html",
    "png": "states/UI03-03.png",
    "rule": "平台原生入口、用途、可查看文本。同意／拒绝／稍后；自制面板不能冒充原生授权",
    "special": "平台原生内容仅示意占位，不要求美术复制系统授权或广告播放器。"
  },
  {
    "id": "UI03-04",
    "ui": "UI03",
    "title": "平台必要授权与协议",
    "state": "稍后",
    "content": "暂不启用该能力",
    "action": "稍后",
    "prefab": "ui_privacy",
    "html": "states/UI03-04.html",
    "png": "states/UI03-04.png",
    "rule": "平台原生入口、用途、可查看文本。同意／拒绝／稍后；自制面板不能冒充原生授权",
    "special": "平台原生内容仅示意占位，不要求美术复制系统授权或广告播放器。"
  },
  {
    "id": "UI04-01",
    "ui": "UI04",
    "title": "版本与维护",
    "state": "维护",
    "content": "服务器维护中，暂不能开局",
    "action": "重试",
    "prefab": "ui_version",
    "html": "states/UI04-01.html",
    "png": "states/UI04-01.png",
    "rule": "版本提示、稍后／重试／重新进入。服务维护、版本不兼容；不可进入战斗",
    "special": ""
  },
  {
    "id": "UI04-02",
    "ui": "UI04",
    "title": "版本与维护",
    "state": "版本不兼容",
    "content": "需要更新后继续",
    "action": "重新进入",
    "prefab": "ui_version",
    "html": "states/UI04-02.html",
    "png": "states/UI04-02.png",
    "rule": "版本提示、稍后／重试／重新进入。服务维护、版本不兼容；不可进入战斗",
    "special": ""
  },
  {
    "id": "UI04-03",
    "ui": "UI04",
    "title": "版本与维护",
    "state": "稍后",
    "content": "当前版本不可开始战斗",
    "action": "稍后重试",
    "prefab": "ui_version",
    "html": "states/UI04-03.html",
    "png": "states/UI04-03.png",
    "rule": "版本提示、稍后／重试／重新进入。服务维护、版本不兼容；不可进入战斗",
    "special": ""
  },
  {
    "id": "UI05-01",
    "ui": "UI05",
    "title": "主城对战页",
    "state": "新手阶段",
    "content": "第3场挑战 · 累计2胜",
    "action": "开始挑战",
    "prefab": "ui_home",
    "html": "states/UI05-01.html",
    "png": "states/UI05-01.png",
    "rule": "城池、段位、资源、模式切换、开始、3功能入口。新手／AI阶段，正常／请求中／禁用",
    "special": ""
  },
  {
    "id": "UI05-02",
    "ui": "UI05",
    "title": "主城对战页",
    "state": "AI阶段",
    "content": "白银三 · 360分 · 模拟对手",
    "action": "开始对战",
    "prefab": "ui_home",
    "html": "states/UI05-02.html",
    "png": "states/UI05-02.png",
    "rule": "城池、段位、资源、模式切换、开始、3功能入口。新手／AI阶段，正常／请求中／禁用",
    "special": ""
  },
  {
    "id": "UI05-03",
    "ui": "UI05",
    "title": "主城对战页",
    "state": "建局中",
    "content": "正在建立对局",
    "action": "请稍候",
    "prefab": "ui_home",
    "html": "states/UI05-03.html",
    "png": "states/UI05-03.png",
    "rule": "城池、段位、资源、模式切换、开始、3功能入口。新手／AI阶段，正常／请求中／禁用",
    "special": ""
  },
  {
    "id": "UI05-04",
    "ui": "UI05",
    "title": "主城对战页",
    "state": "体力不足",
    "content": "体力3/30 · 本次需要5",
    "action": "补充体力",
    "prefab": "ui_home",
    "html": "states/UI05-04.html",
    "png": "states/UI05-04.png",
    "rule": "城池、段位、资源、模式切换、开始、3功能入口。新手／AI阶段，正常／请求中／禁用",
    "special": ""
  },
  {
    "id": "UI05-05",
    "ui": "UI05",
    "title": "主城对战页",
    "state": "功能锁定",
    "content": "训练 0/1胜 · 武将 8/50胜",
    "action": "查看解锁条件",
    "prefab": "ui_home",
    "html": "states/UI05-05.html",
    "png": "states/UI05-05.png",
    "rule": "城池、段位、资源、模式切换、开始、3功能入口。新手／AI阶段，正常／请求中／禁用",
    "special": ""
  },
  {
    "id": "UI06-01",
    "ui": "UI06",
    "title": "主城塔模式",
    "state": "未解锁",
    "content": "历史最高积分 150/200",
    "action": "查看规则",
    "prefab": "ui_tower_home",
    "html": "states/UI06-01.html",
    "png": "states/UI06-01.png",
    "rule": "塔建筑、最高层、免费与视频次数、开始。未解锁／免费可用／需视频／次数用尽",
    "special": ""
  },
  {
    "id": "UI06-02",
    "ui": "UI06",
    "title": "主城塔模式",
    "state": "免费可用",
    "content": "今日免费入场可用 · 最高12层",
    "action": "进入通天塔",
    "prefab": "ui_tower_home",
    "html": "states/UI06-02.html",
    "png": "states/UI06-02.png",
    "rule": "塔建筑、最高层、免费与视频次数、开始。未解锁／免费可用／需视频／次数用尽",
    "special": ""
  },
  {
    "id": "UI06-03",
    "ui": "UI06",
    "title": "主城塔模式",
    "state": "视频入场",
    "content": "免费次数已用 · 视频次数可用",
    "action": "▷ 进入",
    "prefab": "ui_tower_home",
    "html": "states/UI06-03.html",
    "png": "states/UI06-03.png",
    "rule": "塔建筑、最高层、免费与视频次数、开始。未解锁／免费可用／需视频／次数用尽",
    "special": ""
  },
  {
    "id": "UI06-04",
    "ui": "UI06",
    "title": "主城塔模式",
    "state": "次数用尽",
    "content": "今日入场次数已用完",
    "action": "返回主城",
    "prefab": "ui_tower_home",
    "html": "states/UI06-04.html",
    "png": "states/UI06-04.png",
    "rule": "塔建筑、最高层、免费与视频次数、开始。未解锁／免费可用／需视频／次数用尽",
    "special": ""
  },
  {
    "id": "UI07-01",
    "ui": "UI07",
    "title": "顶部资源详情",
    "state": "金币零余额",
    "content": "金币0 · 用于基础训练",
    "action": "知道了",
    "prefab": "ui_currency",
    "html": "states/UI07-01.html",
    "png": "states/UI07-01.png",
    "rule": "金币、体力、将签用途和来源。0余额／体力恢复倒计时／满体；统一资源组件",
    "special": ""
  },
  {
    "id": "UI07-02",
    "ui": "UI07",
    "title": "顶部资源详情",
    "state": "体力恢复",
    "content": "体力12/30 · 下点04:20",
    "action": "知道了",
    "prefab": "ui_currency",
    "html": "states/UI07-02.html",
    "png": "states/UI07-02.png",
    "rule": "金币、体力、将签用途和来源。0余额／体力恢复倒计时／满体；统一资源组件",
    "special": ""
  },
  {
    "id": "UI07-03",
    "ui": "UI07",
    "title": "顶部资源详情",
    "state": "体力已满",
    "content": "体力30/30 · 自然恢复暂停",
    "action": "知道了",
    "prefab": "ui_currency",
    "html": "states/UI07-03.html",
    "png": "states/UI07-03.png",
    "rule": "金币、体力、将签用途和来源。0余额／体力恢复倒计时／满体；统一资源组件",
    "special": ""
  },
  {
    "id": "UI07-04",
    "ui": "UI07",
    "title": "顶部资源详情",
    "state": "将签",
    "content": "将签3 · 用于招募",
    "action": "前往招募",
    "prefab": "ui_currency",
    "html": "states/UI07-04.html",
    "png": "states/UI07-04.png",
    "rule": "金币、体力、将签用途和来源。0余额／体力恢复倒计时／满体；统一资源组件",
    "special": ""
  },
  {
    "id": "UI08-01",
    "ui": "UI08",
    "title": "体力不足与补充",
    "state": "视频可用",
    "content": "体力3/30 · 实际恢复量以当前额度为准",
    "action": "▷ 补充",
    "prefab": "ui_stamina",
    "html": "states/UI08-01.html",
    "png": "states/UI08-01.png",
    "rule": "本次需5、当前值、恢复时间、视频实际可加量。可看／日额度完／冷却／无填充",
    "special": ""
  },
  {
    "id": "UI08-02",
    "ui": "UI08",
    "title": "体力不足与补充",
    "state": "日额度用尽",
    "content": "今日视频补充已用完 · 下点04:20",
    "action": "等待恢复",
    "prefab": "ui_stamina",
    "html": "states/UI08-02.html",
    "png": "states/UI08-02.png",
    "rule": "本次需5、当前值、恢复时间、视频实际可加量。可看／日额度完／冷却／无填充",
    "special": ""
  },
  {
    "id": "UI08-03",
    "ui": "UI08",
    "title": "体力不足与补充",
    "state": "冷却",
    "content": "补充冷却00:28",
    "action": "稍后",
    "prefab": "ui_stamina",
    "html": "states/UI08-03.html",
    "png": "states/UI08-03.png",
    "rule": "本次需5、当前值、恢复时间、视频实际可加量。可看／日额度完／冷却／无填充",
    "special": ""
  },
  {
    "id": "UI08-04",
    "ui": "UI08",
    "title": "体力不足与补充",
    "state": "无填充",
    "content": "暂时没有可播放视频",
    "action": "稍后重试",
    "prefab": "ui_stamina",
    "html": "states/UI08-04.html",
    "png": "states/UI08-04.png",
    "rule": "本次需5、当前值、恢复时间、视频实际可加量。可看／日额度完／冷却／无填充",
    "special": ""
  },
  {
    "id": "UI09-01",
    "ui": "UI09",
    "title": "功能锁定说明",
    "state": "武将招募锁定",
    "content": "累计胜场8/50 · 解锁武将和招募",
    "action": "知道了",
    "prefab": "ui_feature_locked",
    "html": "states/UI09-01.html",
    "png": "states/UI09-01.png",
    "rule": "功能用途、准确条件和当前进度。50胜、1胜、历史200分三类，不打开整页空壳",
    "special": ""
  },
  {
    "id": "UI09-02",
    "ui": "UI09",
    "title": "功能锁定说明",
    "state": "训练锁定",
    "content": "累计胜场0/1 · 解锁四项训练",
    "action": "知道了",
    "prefab": "ui_feature_locked",
    "html": "states/UI09-02.html",
    "png": "states/UI09-02.png",
    "rule": "功能用途、准确条件和当前进度。50胜、1胜、历史200分三类，不打开整页空壳",
    "special": ""
  },
  {
    "id": "UI09-03",
    "ui": "UI09",
    "title": "功能锁定说明",
    "state": "塔锁定",
    "content": "历史最高150/200分 · 解锁后永久开放",
    "action": "知道了",
    "prefab": "ui_feature_locked",
    "html": "states/UI09-03.html",
    "png": "states/UI09-03.png",
    "rule": "功能用途、准确条件和当前进度。50胜、1胜、历史200分三类，不打开整页空壳",
    "special": ""
  },
  {
    "id": "UI10-01",
    "ui": "UI10",
    "title": "功能解锁提示",
    "state": "解锁武将招募",
    "content": "武将与招募已开启",
    "action": "前往首募",
    "prefab": "ui_feature_unlocked",
    "html": "states/UI10-01.html",
    "png": "states/UI10-01.png",
    "rule": "新功能名、入口指引、继续。塔、武将／招募、训练；不重复弹",
    "special": ""
  },
  {
    "id": "UI10-02",
    "ui": "UI10",
    "title": "功能解锁提示",
    "state": "解锁训练",
    "content": "基础训练已开启",
    "action": "前往训练",
    "prefab": "ui_feature_unlocked",
    "html": "states/UI10-02.html",
    "png": "states/UI10-02.png",
    "rule": "新功能名、入口指引、继续。塔、武将／招募、训练；不重复弹",
    "special": ""
  },
  {
    "id": "UI10-03",
    "ui": "UI10",
    "title": "功能解锁提示",
    "state": "解锁通天塔",
    "content": "通天塔已开启",
    "action": "查看通天塔",
    "prefab": "ui_feature_unlocked",
    "html": "states/UI10-03.html",
    "png": "states/UI10-03.png",
    "rule": "新功能名、入口指引、继续。塔、武将／招募、训练；不重复弹",
    "special": ""
  },
  {
    "id": "UI11-01",
    "ui": "UI11",
    "title": "段位总览",
    "state": "固定小段",
    "content": "青铜一至王者五 · 共50小段",
    "action": "返回",
    "prefab": "ui_rank",
    "html": "states/UI11-01.html",
    "png": "states/UI11-01.png",
    "rule": "当前积分、小段进度、各大段浏览、规则。50固定小段、无双编号、掉段、最高纪录",
    "special": ""
  },
  {
    "id": "UI11-02",
    "ui": "UI11",
    "title": "段位总览",
    "state": "无双段",
    "content": "无双12 · 编号按积分计算",
    "action": "返回",
    "prefab": "ui_rank",
    "html": "states/UI11-02.html",
    "png": "states/UI11-02.png",
    "rule": "当前积分、小段进度、各大段浏览、规则。50固定小段、无双编号、掉段、最高纪录",
    "special": ""
  },
  {
    "id": "UI11-03",
    "ui": "UI11",
    "title": "段位总览",
    "state": "掉段",
    "content": "当前段位降低 · 历史最高保留",
    "action": "返回",
    "prefab": "ui_rank",
    "html": "states/UI11-03.html",
    "png": "states/UI11-03.png",
    "rule": "当前积分、小段进度、各大段浏览、规则。50固定小段、无双编号、掉段、最高纪录",
    "special": ""
  },
  {
    "id": "UI11-04",
    "ui": "UI11",
    "title": "段位总览",
    "state": "历史纪录",
    "content": "当前360分 · 历史最高420分",
    "action": "返回",
    "prefab": "ui_rank",
    "html": "states/UI11-04.html",
    "png": "states/UI11-04.png",
    "rule": "当前积分、小段进度、各大段浏览、规则。50固定小段、无双编号、掉段、最高纪录",
    "special": ""
  },
  {
    "id": "UI12-01",
    "ui": "UI12",
    "title": "匹配与进场",
    "state": "等待建局",
    "content": "正在准备模拟对手",
    "action": "等待",
    "prefab": "ui_matchmaking",
    "html": "states/UI12-01.html",
    "png": "states/UI12-01.png",
    "rule": "对手昵称、段位、短加载、模式说明。等待建局／已建局加载／加载失败；不画真人在线灯",
    "special": ""
  },
  {
    "id": "UI12-02",
    "ui": "UI12",
    "title": "匹配与进场",
    "state": "已建局加载",
    "content": "对手 墨客 · 白银三 · 资源加载中",
    "action": "等待",
    "prefab": "ui_matchmaking",
    "html": "states/UI12-02.html",
    "png": "states/UI12-02.png",
    "rule": "对手昵称、段位、短加载、模式说明。等待建局／已建局加载／加载失败；不画真人在线灯",
    "special": ""
  },
  {
    "id": "UI12-03",
    "ui": "UI12",
    "title": "匹配与进场",
    "state": "加载失败",
    "content": "对局已保留 · 不重复扣体力",
    "action": "重试本局",
    "prefab": "ui_matchmaking",
    "html": "states/UI12-03.html",
    "png": "states/UI12-03.png",
    "rule": "对手昵称、段位、短加载、模式说明。等待建局／已建局加载／加载失败；不画真人在线灯",
    "special": ""
  },
  {
    "id": "UI13-01",
    "ui": "UI13",
    "title": "基础训练页",
    "state": "可以升级",
    "content": "刀 Lv.3 → Lv.4 · 当前/下级攻击 · 金币足够",
    "action": "升级",
    "prefab": "ui_training",
    "html": "states/UI13-01.html",
    "png": "states/UI13-01.png",
    "rule": "刀弓盾骑4项、等级、当前／下级提升、金币与升级。可升／不足／满163级／请求中",
    "special": ""
  },
  {
    "id": "UI13-02",
    "ui": "UI13",
    "title": "基础训练页",
    "state": "金币不足",
    "content": "盾 Lv.3 · 金币不足 · 升级禁用",
    "action": "返回",
    "prefab": "ui_training",
    "html": "states/UI13-02.html",
    "png": "states/UI13-02.png",
    "rule": "刀弓盾骑4项、等级、当前／下级提升、金币与升级。可升／不足／满163级／请求中",
    "special": ""
  },
  {
    "id": "UI13-03",
    "ui": "UI13",
    "title": "基础训练页",
    "state": "满级",
    "content": "骑 Lv.163 · 已满级 · 无下级费用",
    "action": "返回",
    "prefab": "ui_training",
    "html": "states/UI13-03.html",
    "png": "states/UI13-03.png",
    "rule": "刀弓盾骑4项、等级、当前／下级提升、金币与升级。可升／不足／满163级／请求中",
    "special": ""
  },
  {
    "id": "UI13-04",
    "ui": "UI13",
    "title": "基础训练页",
    "state": "请求中",
    "content": "升级处理中，暂不重复操作",
    "action": "等待",
    "prefab": "ui_training",
    "html": "states/UI13-04.html",
    "png": "states/UI13-04.png",
    "rule": "刀弓盾骑4项、等级、当前／下级提升、金币与升级。可升／不足／满163级／请求中",
    "special": ""
  },
  {
    "id": "UI13-05",
    "ui": "UI13",
    "title": "基础训练页",
    "state": "升级成功",
    "content": "刀 Lv.4 · 属性与金币已更新",
    "action": "继续",
    "prefab": "ui_training",
    "html": "states/UI13-05.html",
    "png": "states/UI13-05.png",
    "rule": "刀弓盾骑4项、等级、当前／下级提升、金币与升级。可升／不足／满163级／请求中",
    "special": ""
  },
  {
    "id": "UI14-01",
    "ui": "UI14",
    "title": "武将总览",
    "state": "未获得",
    "content": "黄忠 未获得 · 可查看技能",
    "action": "查看详情",
    "prefab": "ui_heroes",
    "html": "states/UI14-01.html",
    "png": "states/UI14-01.png",
    "rule": "赵云黄忠张飞关羽4卡、星级、拥有与碎片进度。未获得／可升星／已满星／满材料未升星",
    "special": ""
  },
  {
    "id": "UI14-02",
    "ui": "UI14",
    "title": "武将总览",
    "state": "已拥有",
    "content": "赵云 ★ · 专属片6/10",
    "action": "查看详情",
    "prefab": "ui_heroes",
    "html": "states/UI14-02.html",
    "png": "states/UI14-02.png",
    "rule": "赵云黄忠张飞关羽4卡、星级、拥有与碎片进度。未获得／可升星／已满星／满材料未升星",
    "special": ""
  },
  {
    "id": "UI14-03",
    "ui": "UI14",
    "title": "武将总览",
    "state": "可升星",
    "content": "张飞 ★★ · 专属片20/20",
    "action": "升星",
    "prefab": "ui_heroes",
    "html": "states/UI14-03.html",
    "png": "states/UI14-03.png",
    "rule": "赵云黄忠张飞关羽4卡、星级、拥有与碎片进度。未获得／可升星／已满星／满材料未升星",
    "special": ""
  },
  {
    "id": "UI14-04",
    "ui": "UI14",
    "title": "武将总览",
    "state": "已满星",
    "content": "关羽 ★★★★★ · 已满星",
    "action": "查看详情",
    "prefab": "ui_heroes",
    "html": "states/UI14-04.html",
    "png": "states/UI14-04.png",
    "rule": "赵云黄忠张飞关羽4卡、星级、拥有与碎片进度。未获得／可升星／已满星／满材料未升星",
    "special": ""
  },
  {
    "id": "UI14-05",
    "ui": "UI14",
    "title": "武将总览",
    "state": "满材料未升星",
    "content": "黄忠 升满所需材料已足够 · 已移出池",
    "action": "查看详情",
    "prefab": "ui_heroes",
    "html": "states/UI14-05.html",
    "png": "states/UI14-05.png",
    "rule": "赵云黄忠张飞关羽4卡、星级、拥有与碎片进度。未获得／可升星／已满星／满材料未升星",
    "special": ""
  },
  {
    "id": "UI15-01",
    "ui": "UI15",
    "title": "武将详情与升星",
    "state": "未拥有",
    "content": "黄忠 · 贯穿箭 · 通过招募获得",
    "action": "返回",
    "prefab": "ui_hero_detail",
    "html": "states/UI15-01.html",
    "png": "states/UI15-01.png",
    "rule": "技能、星级、属性对比、专属片、升级／试用。未拥有、1—5星、片不足、升级成功",
    "special": ""
  },
  {
    "id": "UI15-02",
    "ui": "UI15",
    "title": "武将详情与升星",
    "state": "一星",
    "content": "赵云 ★ · 攻速形态 · 当前/下星属性",
    "action": "升星",
    "prefab": "ui_hero_detail",
    "html": "states/UI15-02.html",
    "png": "states/UI15-02.png",
    "rule": "技能、星级、属性对比、专属片、升级／试用。未拥有、1—5星、片不足、升级成功",
    "special": ""
  },
  {
    "id": "UI15-03",
    "ui": "UI15",
    "title": "武将详情与升星",
    "state": "二星",
    "content": "赵云 ★★ · 当前/下星属性",
    "action": "升星",
    "prefab": "ui_hero_detail",
    "html": "states/UI15-03.html",
    "png": "states/UI15-03.png",
    "rule": "技能、星级、属性对比、专属片、升级／试用。未拥有、1—5星、片不足、升级成功",
    "special": ""
  },
  {
    "id": "UI15-04",
    "ui": "UI15",
    "title": "武将详情与升星",
    "state": "三星",
    "content": "赵云 ★★★ · 当前/下星属性",
    "action": "升星",
    "prefab": "ui_hero_detail",
    "html": "states/UI15-04.html",
    "png": "states/UI15-04.png",
    "rule": "技能、星级、属性对比、专属片、升级／试用。未拥有、1—5星、片不足、升级成功",
    "special": ""
  },
  {
    "id": "UI15-05",
    "ui": "UI15",
    "title": "武将详情与升星",
    "state": "四星",
    "content": "赵云 ★★★★ · 当前/下星属性",
    "action": "升星",
    "prefab": "ui_hero_detail",
    "html": "states/UI15-05.html",
    "png": "states/UI15-05.png",
    "rule": "技能、星级、属性对比、专属片、升级／试用。未拥有、1—5星、片不足、升级成功",
    "special": ""
  },
  {
    "id": "UI15-06",
    "ui": "UI15",
    "title": "武将详情与升星",
    "state": "五星",
    "content": "赵云 ★★★★★ · 已满星",
    "action": "返回",
    "prefab": "ui_hero_detail",
    "html": "states/UI15-06.html",
    "png": "states/UI15-06.png",
    "rule": "技能、星级、属性对比、专属片、升级／试用。未拥有、1—5星、片不足、升级成功",
    "special": ""
  },
  {
    "id": "UI15-07",
    "ui": "UI15",
    "title": "武将详情与升星",
    "state": "碎片不足",
    "content": "专属片6/10 · 升星禁用",
    "action": "返回",
    "prefab": "ui_hero_detail",
    "html": "states/UI15-07.html",
    "png": "states/UI15-07.png",
    "rule": "技能、星级、属性对比、专属片、升级／试用。未拥有、1—5星、片不足、升级成功",
    "special": ""
  },
  {
    "id": "UI15-08",
    "ui": "UI15",
    "title": "武将详情与升星",
    "state": "升级成功",
    "content": "赵云 ★★ · 星级、属性和碎片同步更新",
    "action": "继续",
    "prefab": "ui_hero_detail",
    "html": "states/UI15-08.html",
    "png": "states/UI15-08.png",
    "rule": "技能、星级、属性对比、专属片、升级／试用。未拥有、1—5星、片不足、升级成功",
    "special": ""
  },
  {
    "id": "UI16-01",
    "ui": "UI16",
    "title": "招募主界面",
    "state": "可招募",
    "content": "将签10 · 距稀有保底4抽",
    "action": "招募1次 / 招募10次",
    "prefab": "ui_recruit",
    "html": "states/UI16-01.html",
    "png": "states/UI16-01.png",
    "rule": "单抽、十连、将签、保底剩余、概率入口。可抽／签不足／全满停抽／正在请求",
    "special": ""
  },
  {
    "id": "UI16-02",
    "ui": "UI16",
    "title": "招募主界面",
    "state": "将签不足",
    "content": "将签0 · 显示获取来源",
    "action": "查看来源",
    "prefab": "ui_recruit",
    "html": "states/UI16-02.html",
    "png": "states/UI16-02.png",
    "rule": "单抽、十连、将签、保底剩余、概率入口。可抽／签不足／全满停抽／正在请求",
    "special": ""
  },
  {
    "id": "UI16-03",
    "ui": "UI16",
    "title": "招募主界面",
    "state": "全满停抽",
    "content": "所有武将升星材料已足够",
    "action": "返回",
    "prefab": "ui_recruit",
    "html": "states/UI16-03.html",
    "png": "states/UI16-03.png",
    "rule": "单抽、十连、将签、保底剩余、概率入口。可抽／签不足／全满停抽／正在请求",
    "special": ""
  },
  {
    "id": "UI16-04",
    "ui": "UI16",
    "title": "招募主界面",
    "state": "请求中",
    "content": "本次招募处理中，按钮禁用",
    "action": "等待",
    "prefab": "ui_recruit",
    "html": "states/UI16-04.html",
    "png": "states/UI16-04.png",
    "rule": "单抽、十连、将签、保底剩余、概率入口。可抽／签不足／全满停抽／正在请求",
    "special": ""
  },
  {
    "id": "UI17-01",
    "ui": "UI17",
    "title": "概率与来源详情",
    "state": "基础概率",
    "content": "普通组85% / 稀有组15% · 当前候选见列表",
    "action": "返回",
    "prefab": "ui_probability",
    "html": "states/UI17-01.html",
    "png": "states/UI17-01.png",
    "rule": "当前可得武将概率、保底、移池与将签来源。基础池／保底／组空／全满，概率动态刷新",
    "special": ""
  },
  {
    "id": "UI17-02",
    "ui": "UI17",
    "title": "概率与来源详情",
    "state": "保底触发",
    "content": "本次进入稀有保底池 · 显示实际候选概率",
    "action": "返回",
    "prefab": "ui_probability",
    "html": "states/UI17-02.html",
    "png": "states/UI17-02.png",
    "rule": "当前可得武将概率、保底、移池与将签来源。基础池／保底／组空／全满，概率动态刷新",
    "special": ""
  },
  {
    "id": "UI17-03",
    "ui": "UI17",
    "title": "概率与来源详情",
    "state": "分组为空",
    "content": "无有效候选的组不参与抽样 · 显示重算概率",
    "action": "返回",
    "prefab": "ui_probability",
    "html": "states/UI17-03.html",
    "png": "states/UI17-03.png",
    "rule": "当前可得武将概率、保底、移池与将签来源。基础池／保底／组空／全满，概率动态刷新",
    "special": ""
  },
  {
    "id": "UI17-04",
    "ui": "UI17",
    "title": "概率与来源详情",
    "state": "全满",
    "content": "当前无可招募武将 · 已停抽",
    "action": "返回",
    "prefab": "ui_probability",
    "html": "states/UI17-04.html",
    "png": "states/UI17-04.png",
    "rule": "当前可得武将概率、保底、移池与将签来源。基础池／保底／组空／全满，概率动态刷新",
    "special": ""
  },
  {
    "id": "UI18-01",
    "ui": "UI18",
    "title": "免费赵云首募",
    "state": "首次免费",
    "content": "首次招募免费 · 固定获得赵云",
    "action": "免费招募",
    "prefab": "ui_first_recruit",
    "html": "states/UI18-01.html",
    "png": "states/UI18-01.png",
    "rule": "明确免费、固定获得赵云、继续入口。未完成／结果待恢复／已完成，仅一次",
    "special": ""
  },
  {
    "id": "UI18-02",
    "ui": "UI18",
    "title": "免费赵云首募",
    "state": "结果恢复",
    "content": "上次免费招募结果待恢复 · 不再计费",
    "action": "恢复结果",
    "prefab": "ui_first_recruit",
    "html": "states/UI18-02.html",
    "png": "states/UI18-02.png",
    "rule": "明确免费、固定获得赵云、继续入口。未完成／结果待恢复／已完成，仅一次",
    "special": ""
  },
  {
    "id": "UI18-03",
    "ui": "UI18",
    "title": "免费赵云首募",
    "state": "已完成",
    "content": "赵云已获得 · 前往第16场学习武将",
    "action": "继续",
    "prefab": "ui_first_recruit",
    "html": "states/UI18-03.html",
    "png": "states/UI18-03.png",
    "rule": "明确免费、固定获得赵云、继续入口。未完成／结果待恢复／已完成，仅一次",
    "special": ""
  },
  {
    "id": "UI19-01",
    "ui": "UI19",
    "title": "单抽结果",
    "state": "普通首获",
    "content": "新武将 赵云 ★",
    "action": "确认",
    "prefab": "ui_draw_single",
    "html": "states/UI19-01.html",
    "png": "states/UI19-01.png",
    "rule": "武将主体、新获得或重复转10片、确认。普通／稀有／首次／重复",
    "special": ""
  },
  {
    "id": "UI19-02",
    "ui": "UI19",
    "title": "单抽结果",
    "state": "稀有首获",
    "content": "新武将 黄忠 ★ · 可试用",
    "action": "确认",
    "prefab": "ui_draw_single",
    "html": "states/UI19-02.html",
    "png": "states/UI19-02.png",
    "rule": "武将主体、新获得或重复转10片、确认。普通／稀有／首次／重复",
    "special": ""
  },
  {
    "id": "UI19-03",
    "ui": "UI19",
    "title": "单抽结果",
    "state": "重复转片",
    "content": "赵云重复获得 → 赵云碎片+10",
    "action": "确认",
    "prefab": "ui_draw_single",
    "html": "states/UI19-03.html",
    "png": "states/UI19-03.png",
    "rule": "武将主体、新获得或重复转10片、确认。普通／稀有／首次／重复",
    "special": ""
  },
  {
    "id": "UI19-04",
    "ui": "UI19",
    "title": "单抽结果",
    "state": "跳过演出",
    "content": "结果已确认，直接展示全部奖励",
    "action": "确认",
    "prefab": "ui_draw_single",
    "html": "states/UI19-04.html",
    "png": "states/UI19-04.png",
    "rule": "武将主体、新获得或重复转10片、确认。普通／稀有／首次／重复",
    "special": ""
  },
  {
    "id": "UI20-01",
    "ui": "UI20",
    "title": "十连结果",
    "state": "完整十连",
    "content": "实际招募10次 · 消耗10签 · 显示10结果",
    "action": "确认",
    "prefab": "ui_draw_multi",
    "html": "states/UI20-01.html",
    "png": "states/UI20-01.png",
    "rule": "实际抽数、结果卡阵列、每张新将或碎片、合计消耗。10张／中途全满少于10张／断线恢复；允许跳过演出",
    "special": ""
  },
  {
    "id": "UI20-02",
    "ui": "UI20",
    "title": "十连结果",
    "state": "中途全满",
    "content": "实际招募3次 · 消耗3签 · 已全满",
    "action": "确认",
    "prefab": "ui_draw_multi",
    "html": "states/UI20-02.html",
    "png": "states/UI20-02.png",
    "rule": "实际抽数、结果卡阵列、每张新将或碎片、合计消耗。10张／中途全满少于10张／断线恢复；允许跳过演出",
    "special": ""
  },
  {
    "id": "UI20-03",
    "ui": "UI20",
    "title": "十连结果",
    "state": "断线恢复",
    "content": "恢复本次已生成结果 · 不再次扣签",
    "action": "查看结果",
    "prefab": "ui_draw_multi",
    "html": "states/UI20-03.html",
    "png": "states/UI20-03.png",
    "rule": "实际抽数、结果卡阵列、每张新将或碎片、合计消耗。10张／中途全满少于10张／断线恢复；允许跳过演出",
    "special": ""
  },
  {
    "id": "UI20-04",
    "ui": "UI20",
    "title": "十连结果",
    "state": "跳过演出",
    "content": "10张结果全部展开 · 可滚动查看",
    "action": "确认",
    "prefab": "ui_draw_multi",
    "html": "states/UI20-04.html",
    "png": "states/UI20-04.png",
    "rule": "实际抽数、结果卡阵列、每张新将或碎片、合计消耗。10张／中途全满少于10张／断线恢复；允许跳过演出",
    "special": ""
  },
  {
    "id": "UI21-01",
    "ui": "UI21",
    "title": "首获武将与试用入口",
    "state": "黄忠首获",
    "content": "黄忠 · 贯穿箭最多额外命中1目标",
    "action": "立即试用 / 稍后",
    "prefab": "ui_hero_trial_entry",
    "html": "states/UI21-01.html",
    "png": "states/UI21-01.png",
    "rule": "新武将名、短技能、立即试用／稍后。四将共模板；首募必需，赵云试用可跳过",
    "special": ""
  },
  {
    "id": "UI21-02",
    "ui": "UI21",
    "title": "首获武将与试用入口",
    "state": "张飞首获",
    "content": "张飞 · 每4击短暂眩晕",
    "action": "立即试用 / 稍后",
    "prefab": "ui_hero_trial_entry",
    "html": "states/UI21-02.html",
    "png": "states/UI21-02.png",
    "rule": "新武将名、短技能、立即试用／稍后。四将共模板；首募必需，赵云试用可跳过",
    "special": ""
  },
  {
    "id": "UI21-03",
    "ui": "UI21",
    "title": "首获武将与试用入口",
    "state": "关羽首获",
    "content": "关羽 · 每3击局部横扫",
    "action": "立即试用 / 稍后",
    "prefab": "ui_hero_trial_entry",
    "html": "states/UI21-03.html",
    "png": "states/UI21-03.png",
    "rule": "新武将名、短技能、立即试用／稍后。四将共模板；首募必需，赵云试用可跳过",
    "special": ""
  },
  {
    "id": "UI22-01",
    "ui": "UI22",
    "title": "核心战斗HUD",
    "state": "普通战斗",
    "content": "04:20 · 同线接战 · 建造点80",
    "action": "换一批",
    "prefab": "ui_battle",
    "html": "states/UI22-01.html",
    "png": "states/UI22-01.png",
    "rule": "双城血、上方战斗、倒计时、6×6与环、三手牌、点数、换批。普通／塔／试用，空槽／已购／未购／不足／拖动",
    "special": ""
  },
  {
    "id": "UI22-02",
    "ui": "UI22",
    "title": "核心战斗HUD",
    "state": "塔战斗",
    "content": "02:20 · 第8层 · 当前战术入口",
    "action": "换一批",
    "prefab": "ui_battle",
    "html": "states/UI22-02.html",
    "png": "states/UI22-02.png",
    "rule": "双城血、上方战斗、倒计时、6×6与环、三手牌、点数、换批。普通／塔／试用，空槽／已购／未购／不足／拖动",
    "special": ""
  },
  {
    "id": "UI22-03",
    "ui": "UI22",
    "title": "核心战斗HUD",
    "state": "武将试用",
    "content": "试用黄忠 · 无局外奖励",
    "action": "换一批",
    "prefab": "ui_battle",
    "html": "states/UI22-03.html",
    "png": "states/UI22-03.png",
    "rule": "双城血、上方战斗、倒计时、6×6与环、三手牌、点数、换批。普通／塔／试用，空槽／已购／未购／不足／拖动",
    "special": ""
  },
  {
    "id": "UI22-04",
    "ui": "UI22",
    "title": "核心战斗HUD",
    "state": "手牌空槽",
    "content": "保留三槽位置 · 空槽不显示假卡",
    "action": "换一批",
    "prefab": "ui_battle",
    "html": "states/UI22-04.html",
    "png": "states/UI22-04.png",
    "rule": "双城血、上方战斗、倒计时、6×6与环、三手牌、点数、换批。普通／塔／试用，空槽／已购／未购／不足／拖动",
    "special": ""
  },
  {
    "id": "UI22-05",
    "ui": "UI22",
    "title": "核心战斗HUD",
    "state": "已购买手牌",
    "content": "已购牌可移动 · 不再扣费",
    "action": "换一批",
    "prefab": "ui_battle",
    "html": "states/UI22-05.html",
    "png": "states/UI22-05.png",
    "rule": "双城血、上方战斗、倒计时、6×6与环、三手牌、点数、换批。普通／塔／试用，空槽／已购／未购／不足／拖动",
    "special": ""
  },
  {
    "id": "UI22-06",
    "ui": "UI22",
    "title": "核心战斗HUD",
    "state": "资源不足",
    "content": "建造点10 · 牌价30禁用",
    "action": "等待恢复",
    "prefab": "ui_battle",
    "html": "states/UI22-06.html",
    "png": "states/UI22-06.png",
    "rule": "双城血、上方战斗、倒计时、6×6与环、三手牌、点数、换批。普通／塔／试用，空槽／已购／未购／不足／拖动",
    "special": ""
  },
  {
    "id": "UI22-07",
    "ui": "UI22",
    "title": "核心战斗HUD",
    "state": "拖动中",
    "content": "落点高亮 · 路线始终可见",
    "action": "松手放置",
    "prefab": "ui_battle",
    "html": "states/UI22-07.html",
    "png": "states/UI22-07.png",
    "rule": "双城血、上方战斗、倒计时、6×6与环、三手牌、点数、换批。普通／塔／试用，空槽／已购／未购／不足／拖动",
    "special": ""
  },
  {
    "id": "UI22-08",
    "ui": "UI22",
    "title": "核心战斗HUD",
    "state": "武将混战",
    "content": "赵云/张飞主字特殊色 · 两方血条区分",
    "action": "继续战斗",
    "prefab": "ui_battle",
    "html": "states/UI22-08.html",
    "png": "states/UI22-08.png",
    "rule": "双城血、上方战斗、倒计时、6×6与环、三手牌、点数、换批。普通／塔／试用，空槽／已购／未购／不足／拖动",
    "special": ""
  },
  {
    "id": "UI23-01",
    "ui": "UI23",
    "title": "开始遮罩",
    "state": "新手开始",
    "content": "第3场 · 开始前不可布阵",
    "action": "开始本局",
    "prefab": "ui_start",
    "html": "states/UI23-01.html",
    "png": "states/UI23-01.png",
    "rule": "中央“开始本局”，可看棋盘但不可预摆。新手／AI／塔首层／试用；点击一次启动",
    "special": ""
  },
  {
    "id": "UI23-02",
    "ui": "UI23",
    "title": "开始遮罩",
    "state": "AI开始",
    "content": "模拟对手 · 开始前不可布阵",
    "action": "开始本局",
    "prefab": "ui_start",
    "html": "states/UI23-02.html",
    "png": "states/UI23-02.png",
    "rule": "中央“开始本局”，可看棋盘但不可预摆。新手／AI／塔首层／试用；点击一次启动",
    "special": ""
  },
  {
    "id": "UI23-03",
    "ui": "UI23",
    "title": "开始遮罩",
    "state": "塔首层",
    "content": "第1层 · 战术已选，棋盘尚未启动",
    "action": "开始本局",
    "prefab": "ui_start",
    "html": "states/UI23-03.html",
    "png": "states/UI23-03.png",
    "rule": "中央“开始本局”，可看棋盘但不可预摆。新手／AI／塔首层／试用；点击一次启动",
    "special": ""
  },
  {
    "id": "UI23-04",
    "ui": "UI23",
    "title": "开始遮罩",
    "state": "试用开始",
    "content": "黄忠试用 · 不耗体力",
    "action": "开始试用",
    "prefab": "ui_start",
    "html": "states/UI23-04.html",
    "png": "states/UI23-04.png",
    "rule": "中央“开始本局”，可看棋盘但不可预摆。新手／AI／塔首层／试用；点击一次启动",
    "special": ""
  },
  {
    "id": "UI24-01",
    "ui": "UI24",
    "title": "战斗选项与暂停",
    "state": "暂停",
    "content": "模拟时间暂停 · 当前04:20",
    "action": "继续战斗",
    "prefab": "ui_pause",
    "html": "states/UI24-01.html",
    "png": "states/UI24-01.png",
    "rule": "继续、1×／2×、音乐音效、帮助、放弃返回。暂停、设置、确认返回；不能误重置",
    "special": ""
  },
  {
    "id": "UI24-02",
    "ui": "UI24",
    "title": "战斗选项与暂停",
    "state": "一倍速",
    "content": "当前1× · 可切换2×",
    "action": "切换2×",
    "prefab": "ui_pause",
    "html": "states/UI24-02.html",
    "png": "states/UI24-02.png",
    "rule": "继续、1×／2×、音乐音效、帮助、放弃返回。暂停、设置、确认返回；不能误重置",
    "special": ""
  },
  {
    "id": "UI24-03",
    "ui": "UI24",
    "title": "战斗选项与暂停",
    "state": "两倍速",
    "content": "当前2× · 不影响真实体力恢复",
    "action": "切换1×",
    "prefab": "ui_pause",
    "html": "states/UI24-03.html",
    "png": "states/UI24-03.png",
    "rule": "继续、1×／2×、音乐音效、帮助、放弃返回。暂停、设置、确认返回；不能误重置",
    "special": ""
  },
  {
    "id": "UI24-04",
    "ui": "UI24",
    "title": "战斗选项与暂停",
    "state": "音效设置",
    "content": "音乐开 · 音效关 · 震动开",
    "action": "返回",
    "prefab": "ui_pause",
    "html": "states/UI24-04.html",
    "png": "states/UI24-04.png",
    "rule": "继续、1×／2×、音乐音效、帮助、放弃返回。暂停、设置、确认返回；不能误重置",
    "special": ""
  },
  {
    "id": "UI24-05",
    "ui": "UI24",
    "title": "战斗选项与暂停",
    "state": "帮助返回",
    "content": "阅读说明后回到原暂停状态",
    "action": "返回",
    "prefab": "ui_pause",
    "html": "states/UI24-05.html",
    "png": "states/UI24-05.png",
    "rule": "继续、1×／2×、音乐音效、帮助、放弃返回。暂停、设置、确认返回；不能误重置",
    "special": ""
  },
  {
    "id": "UI25-01",
    "ui": "UI25",
    "title": "放弃确认",
    "state": "普通放弃",
    "content": "放弃按失败结算并扣实际积分",
    "action": "继续战斗 / 放弃返回",
    "prefab": "ui_abandon",
    "html": "states/UI25-01.html",
    "png": "states/UI25-01.png",
    "rule": "结果说明、继续战斗、放弃返回。普通扣分／塔保已奖／试用无损三套文案",
    "special": ""
  },
  {
    "id": "UI25-02",
    "ui": "UI25",
    "title": "放弃确认",
    "state": "塔放弃",
    "content": "已到账层奖保留 · 不重复发奖",
    "action": "继续战斗 / 结束回城",
    "prefab": "ui_abandon",
    "html": "states/UI25-02.html",
    "png": "states/UI25-02.png",
    "rule": "结果说明、继续战斗、放弃返回。普通扣分／塔保已奖／试用无损三套文案",
    "special": ""
  },
  {
    "id": "UI25-03",
    "ui": "UI25",
    "title": "放弃确认",
    "state": "试用放弃",
    "content": "退出试用不扣体力或积分",
    "action": "继续试用 / 返回武将",
    "prefab": "ui_abandon",
    "html": "states/UI25-03.html",
    "png": "states/UI25-03.png",
    "rule": "结果说明、继续战斗、放弃返回。普通扣分／塔保已奖／试用无损三套文案",
    "special": ""
  },
  {
    "id": "UI26-01",
    "ui": "UI26",
    "title": "字牌与单位详情",
    "state": "基础单位",
    "content": "兵 · 刀×3 · 面板与命中分别显示",
    "action": "关闭",
    "prefab": "ui_unit_info",
    "html": "states/UI26-01.html",
    "png": "states/UI26-01.png",
    "rule": "字层、阶、基础组合、主将、训练／星级与属性。敌我一致；叠层不能丢；面板和实际命中系数有解释",
    "special": "基础兵青、敌军朱红，武将主字用赭金；线框不定色。敌我武将由血条/底标区分。伤害跳字贴受击点。"
  },
  {
    "id": "UI26-02",
    "ui": "UI26",
    "title": "字牌与单位详情",
    "state": "刀盾组合",
    "content": "刀盾 · 盾×2 弓 · 无多余兵字",
    "action": "关闭",
    "prefab": "ui_unit_info",
    "html": "states/UI26-02.html",
    "png": "states/UI26-02.png",
    "rule": "字层、阶、基础组合、主将、训练／星级与属性。敌我一致；叠层不能丢；面板和实际命中系数有解释",
    "special": "基础兵青、敌军朱红，武将主字用赭金；线框不定色。敌我武将由血条/底标区分。伤害跳字贴受击点。"
  },
  {
    "id": "UI26-03",
    "ui": "UI26",
    "title": "字牌与单位详情",
    "state": "骑射组合",
    "content": "骑射 · 刀×3 · 近远武器独立",
    "action": "关闭",
    "prefab": "ui_unit_info",
    "html": "states/UI26-03.html",
    "png": "states/UI26-03.png",
    "rule": "字层、阶、基础组合、主将、训练／星级与属性。敌我一致；叠层不能丢；面板和实际命中系数有解释",
    "special": "基础兵青、敌军朱红，武将主字用赭金；线框不定色。敌我武将由血条/底标区分。伤害跳字贴受击点。"
  },
  {
    "id": "UI26-04",
    "ui": "UI26",
    "title": "字牌与单位详情",
    "state": "武将单位",
    "content": "赵云 ★ · 刀×3 盾×2 · 武将主字",
    "action": "关闭",
    "prefab": "ui_unit_info",
    "html": "states/UI26-04.html",
    "png": "states/UI26-04.png",
    "rule": "字层、阶、基础组合、主将、训练／星级与属性。敌我一致；叠层不能丢；面板和实际命中系数有解释",
    "special": "基础兵青、敌军朱红，武将主字用赭金；线框不定色。敌我武将由血条/底标区分。伤害跳字贴受击点。"
  },
  {
    "id": "UI26-05",
    "ui": "UI26",
    "title": "字牌与单位详情",
    "state": "敌军单位",
    "content": "敌方刀盾 · 刀×3盾×2 · 同字段展示",
    "action": "关闭",
    "prefab": "ui_unit_info",
    "html": "states/UI26-05.html",
    "png": "states/UI26-05.png",
    "rule": "字层、阶、基础组合、主将、训练／星级与属性。敌我一致；叠层不能丢；面板和实际命中系数有解释",
    "special": "基础兵青、敌军朱红，武将主字用赭金；线框不定色。敌我武将由血条/底标区分。伤害跳字贴受击点。"
  },
  {
    "id": "UI26-06",
    "ui": "UI26",
    "title": "字牌与单位详情",
    "state": "牌详情",
    "content": "刀 · 3阶 · 本次获得3层 · 开口方向图",
    "action": "关闭",
    "prefab": "ui_unit_info",
    "html": "states/UI26-06.html",
    "png": "states/UI26-06.png",
    "rule": "字层、阶、基础组合、主将、训练／星级与属性。敌我一致；叠层不能丢；面板和实际命中系数有解释",
    "special": "基础兵青、敌军朱红，武将主字用赭金；线框不定色。敌我武将由血条/底标区分。伤害跳字贴受击点。"
  },
  {
    "id": "UI27-01",
    "ui": "UI27",
    "title": "组合与路线帮助",
    "state": "开口图鉴",
    "content": "4种弯口 + 4种三口 · 封边清晰",
    "action": "下一页",
    "prefab": "ui_help",
    "html": "states/UI27-01.html",
    "png": "states/UI27-01.png",
    "rule": "8种开口、刀盾骑射、环路、重访与层数图例。可分步浏览，返回原游戏；教学外不常驻占战斗空间",
    "special": ""
  },
  {
    "id": "UI27-02",
    "ui": "UI27",
    "title": "组合与路线帮助",
    "state": "组合说明",
    "content": "刀+盾→刀盾 · 骑+弓→骑射 · 先成型优先",
    "action": "下一页",
    "prefab": "ui_help",
    "html": "states/UI27-02.html",
    "png": "states/UI27-02.png",
    "rule": "8种开口、刀盾骑射、环路、重访与层数图例。可分步浏览，返回原游戏；教学外不常驻占战斗空间",
    "special": ""
  },
  {
    "id": "UI27-03",
    "ui": "UI27",
    "title": "组合与路线帮助",
    "state": "环路说明",
    "content": "四边入环 → 最短路到左上出口 → 入战场",
    "action": "下一页",
    "prefab": "ui_help",
    "html": "states/UI27-03.html",
    "png": "states/UI27-03.png",
    "rule": "8种开口、刀盾骑射、环路、重访与层数图例。可分步浏览，返回原游戏；教学外不常驻占战斗空间",
    "special": ""
  },
  {
    "id": "UI27-04",
    "ui": "UI27",
    "title": "组合与路线帮助",
    "state": "重访与层数",
    "content": "同张牌同一单位不重复领字；不同牌可叠层",
    "action": "返回",
    "prefab": "ui_help",
    "html": "states/UI27-04.html",
    "png": "states/UI27-04.png",
    "rule": "8种开口、刀盾骑射、环路、重访与层数图例。可分步浏览，返回原游戏；教学外不常驻占战斗空间",
    "special": ""
  },
  {
    "id": "UI28-01",
    "ui": "UI28",
    "title": "拖拽与改线预览",
    "state": "拖影",
    "content": "浮牌跟手并上偏，手指不遮落点",
    "action": "松手放置",
    "prefab": "ui_drag",
    "html": "states/UI28-01.html",
    "png": "states/UI28-01.png",
    "rule": "拖影、合法／非法格、交换、合并、撤回、可丢弃。手指遮挡、拖出屏、滑回取消；预览不先扣费",
    "special": "撤回和丢弃是不同命中区；旧讨论与当前实现曾不同。灰盒须确认命中区，不能拖回手牌即自动删除，也不能另加常驻回收按钮。"
  },
  {
    "id": "UI28-02",
    "ui": "UI28",
    "title": "拖拽与改线预览",
    "state": "合法空格",
    "content": "目标格高亮 · 显示新路线",
    "action": "松手放置",
    "prefab": "ui_drag",
    "html": "states/UI28-02.html",
    "png": "states/UI28-02.png",
    "rule": "拖影、合法／非法格、交换、合并、撤回、可丢弃。手指遮挡、拖出屏、滑回取消；预览不先扣费",
    "special": "撤回和丢弃是不同命中区；旧讨论与当前实现曾不同。灰盒须确认命中区，不能拖回手牌即自动删除，也不能另加常驻回收按钮。"
  },
  {
    "id": "UI28-03",
    "ui": "UI28",
    "title": "拖拽与改线预览",
    "state": "非法位置",
    "content": "营地或石头格不可放 · 原牌不变",
    "action": "松手取消",
    "prefab": "ui_drag",
    "html": "states/UI28-03.html",
    "png": "states/UI28-03.png",
    "rule": "拖影、合法／非法格、交换、合并、撤回、可丢弃。手指遮挡、拖出屏、滑回取消；预览不先扣费",
    "special": "撤回和丢弃是不同命中区；旧讨论与当前实现曾不同。灰盒须确认命中区，不能拖回手牌即自动删除，也不能另加常驻回收按钮。"
  },
  {
    "id": "UI28-04",
    "ui": "UI28",
    "title": "拖拽与改线预览",
    "state": "交换",
    "content": "上下牌交换 · 已购牌不再收费",
    "action": "松手交换",
    "prefab": "ui_drag",
    "html": "states/UI28-04.html",
    "png": "states/UI28-04.png",
    "rule": "拖影、合法／非法格、交换、合并、撤回、可丢弃。手指遮挡、拖出屏、滑回取消；预览不先扣费",
    "special": "撤回和丢弃是不同命中区；旧讨论与当前实现曾不同。灰盒须确认命中区，不能拖回手牌即自动删除，也不能另加常驻回收按钮。"
  },
  {
    "id": "UI28-05",
    "ui": "UI28",
    "title": "拖拽与改线预览",
    "state": "合并",
    "content": "同规则可合并 · 预览结果阶",
    "action": "松手合并",
    "prefab": "ui_drag",
    "html": "states/UI28-05.html",
    "png": "states/UI28-05.png",
    "rule": "拖影、合法／非法格、交换、合并、撤回、可丢弃。手指遮挡、拖出屏、滑回取消；预览不先扣费",
    "special": "撤回和丢弃是不同命中区；旧讨论与当前实现曾不同。灰盒须确认命中区，不能拖回手牌即自动删除，也不能另加常驻回收按钮。"
  },
  {
    "id": "UI28-06",
    "ui": "UI28",
    "title": "拖拽与改线预览",
    "state": "撤回",
    "content": "已购牌拖回手牌槽 · 保留已购状态",
    "action": "松手撤回",
    "prefab": "ui_drag",
    "html": "states/UI28-06.html",
    "png": "states/UI28-06.png",
    "rule": "拖影、合法／非法格、交换、合并、撤回、可丢弃。手指遮挡、拖出屏、滑回取消；预览不先扣费",
    "special": "撤回和丢弃是不同命中区；旧讨论与当前实现曾不同。灰盒须确认命中区，不能拖回手牌即自动删除，也不能另加常驻回收按钮。"
  },
  {
    "id": "UI28-07",
    "ui": "UI28",
    "title": "拖拽与改线预览",
    "state": "丢弃",
    "content": "拖入明确弃牌命中区显示 可丢弃",
    "action": "松手丢弃",
    "prefab": "ui_drag",
    "html": "states/UI28-07.html",
    "png": "states/UI28-07.png",
    "rule": "拖影、合法／非法格、交换、合并、撤回、可丢弃。手指遮挡、拖出屏、滑回取消；预览不先扣费",
    "special": "撤回和丢弃是不同命中区；旧讨论与当前实现曾不同。灰盒须确认命中区，不能拖回手牌即自动删除，也不能另加常驻回收按钮。"
  },
  {
    "id": "UI28-08",
    "ui": "UI28",
    "title": "拖拽与改线预览",
    "state": "拖出屏幕",
    "content": "超出有效区域 · 不扣费不丢牌",
    "action": "松手取消",
    "prefab": "ui_drag",
    "html": "states/UI28-08.html",
    "png": "states/UI28-08.png",
    "rule": "拖影、合法／非法格、交换、合并、撤回、可丢弃。手指遮挡、拖出屏、滑回取消；预览不先扣费",
    "special": "撤回和丢弃是不同命中区；旧讨论与当前实现曾不同。灰盒须确认命中区，不能拖回手牌即自动删除，也不能另加常驻回收按钮。"
  },
  {
    "id": "UI28-09",
    "ui": "UI28",
    "title": "拖拽与改线预览",
    "state": "滑回取消",
    "content": "拖回来源格 · 不改盘面",
    "action": "松手取消",
    "prefab": "ui_drag",
    "html": "states/UI28-09.html",
    "png": "states/UI28-09.png",
    "rule": "拖影、合法／非法格、交换、合并、撤回、可丢弃。手指遮挡、拖出屏、滑回取消；预览不先扣费",
    "special": "撤回和丢弃是不同命中区；旧讨论与当前实现曾不同。灰盒须确认命中区，不能拖回手牌即自动删除，也不能另加常驻回收按钮。"
  },
  {
    "id": "UI29-01",
    "ui": "UI29",
    "title": "高阶合并确认",
    "state": "需要确认",
    "content": "高阶合并可能损失阶数 · 显示两牌与结果",
    "action": "取消 / 确认合并",
    "prefab": "ui_merge_confirm",
    "html": "states/UI29-01.html",
    "png": "states/UI29-01.png",
    "rule": "来源／目标阶、合并后阶、损失、取消／确认。高阶损失才弹，普通低阶合并不频繁打断",
    "special": ""
  },
  {
    "id": "UI29-02",
    "ui": "UI29",
    "title": "高阶合并确认",
    "state": "取消",
    "content": "恢复两张原牌和原路线",
    "action": "返回战斗",
    "prefab": "ui_merge_confirm",
    "html": "states/UI29-02.html",
    "png": "states/UI29-02.png",
    "rule": "来源／目标阶、合并后阶、损失、取消／确认。高阶损失才弹，普通低阶合并不频繁打断",
    "special": ""
  },
  {
    "id": "UI29-03",
    "ui": "UI29",
    "title": "高阶合并确认",
    "state": "确认",
    "content": "仅提交一次合并 · 同步结果阶",
    "action": "继续",
    "prefab": "ui_merge_confirm",
    "html": "states/UI29-03.html",
    "png": "states/UI29-03.png",
    "rule": "来源／目标阶、合并后阶、损失、取消／确认。高阶损失才弹，普通低阶合并不频繁打断",
    "special": ""
  },
  {
    "id": "UI30-01",
    "ui": "UI30",
    "title": "卡牌视频许可",
    "state": "第三三口未许可",
    "content": "右上圆形▷ · 仍需建造点48",
    "action": "▷ 解锁",
    "prefab": "ui_card_ad",
    "html": "states/UI30-01.html",
    "png": "states/UI30-01.png",
    "rule": "右上圆形播放标记、成功解锁、仍显示价格。第三三口／塔第三系列／两者同时；无额外领卡弹窗",
    "special": "按拟放置后的盘面武将系列去重计算；同系列重复字不新增系列，替换掉最后一张旧系列字后重新判断。双条件同时命中的许可合并方式须程序按当前规则校验，不能在表现层另收一次费用。"
  },
  {
    "id": "UI30-02",
    "ui": "UI30",
    "title": "卡牌视频许可",
    "state": "塔第三系列未许可",
    "content": "已有赵云张飞 · 黄字右上▷ · 飞字无标",
    "action": "▷ 解锁",
    "prefab": "ui_card_ad",
    "html": "states/UI30-02.html",
    "png": "states/UI30-02.png",
    "rule": "右上圆形播放标记、成功解锁、仍显示价格。第三三口／塔第三系列／两者同时；无额外领卡弹窗",
    "special": "按拟放置后的盘面武将系列去重计算；同系列重复字不新增系列，替换掉最后一张旧系列字后重新判断。双条件同时命中的许可合并方式须程序按当前规则校验，不能在表现层另收一次费用。"
  },
  {
    "id": "UI30-03",
    "ui": "UI30",
    "title": "卡牌视频许可",
    "state": "两种限制同时命中",
    "content": "两项许可条件分别列清 · 不自动放牌",
    "action": "▷ 解锁当前所需许可",
    "prefab": "ui_card_ad",
    "html": "states/UI30-03.html",
    "png": "states/UI30-03.png",
    "rule": "右上圆形播放标记、成功解锁、仍显示价格。第三三口／塔第三系列／两者同时；无额外领卡弹窗",
    "special": "按拟放置后的盘面武将系列去重计算；同系列重复字不新增系列，替换掉最后一张旧系列字后重新判断。双条件同时命中的许可合并方式须程序按当前规则校验，不能在表现层另收一次费用。"
  },
  {
    "id": "UI30-04",
    "ui": "UI30",
    "title": "卡牌视频许可",
    "state": "许可完成",
    "content": "播放标记消失 · 牌仍显示价格",
    "action": "拖入棋盘",
    "prefab": "ui_card_ad",
    "html": "states/UI30-04.html",
    "png": "states/UI30-04.png",
    "rule": "右上圆形播放标记、成功解锁、仍显示价格。第三三口／塔第三系列／两者同时；无额外领卡弹窗",
    "special": "按拟放置后的盘面武将系列去重计算；同系列重复字不新增系列，替换掉最后一张旧系列字后重新判断。双条件同时命中的许可合并方式须程序按当前规则校验，不能在表现层另收一次费用。"
  },
  {
    "id": "UI30-05",
    "ui": "UI30",
    "title": "卡牌视频许可",
    "state": "替换后两系列",
    "content": "黄替换张飞最后一个字 · 仅两系列",
    "action": "直接拖入",
    "prefab": "ui_card_ad",
    "html": "states/UI30-05.html",
    "png": "states/UI30-05.png",
    "rule": "右上圆形播放标记、成功解锁、仍显示价格。第三三口／塔第三系列／两者同时；无额外领卡弹窗",
    "special": "按拟放置后的盘面武将系列去重计算；同系列重复字不新增系列，替换掉最后一张旧系列字后重新判断。双条件同时命中的许可合并方式须程序按当前规则校验，不能在表现层另收一次费用。"
  },
  {
    "id": "UI30-06",
    "ui": "UI30",
    "title": "卡牌视频许可",
    "state": "重复系列",
    "content": "赵云张飞在场 · 飞字免费许可",
    "action": "直接拖入",
    "prefab": "ui_card_ad",
    "html": "states/UI30-06.html",
    "png": "states/UI30-06.png",
    "rule": "右上圆形播放标记、成功解锁、仍显示价格。第三三口／塔第三系列／两者同时；无额外领卡弹窗",
    "special": "按拟放置后的盘面武将系列去重计算；同系列重复字不新增系列，替换掉最后一张旧系列字后重新判断。双条件同时命中的许可合并方式须程序按当前规则校验，不能在表现层另收一次费用。"
  },
  {
    "id": "UI31-01",
    "ui": "UI31",
    "title": "普通胜利结算",
    "state": "新手胜利",
    "content": "胜利 · 已到账金币 · 实际积分+25",
    "action": "回城",
    "prefab": "ui_victory",
    "html": "states/UI31-01.html",
    "png": "states/UI31-01.png",
    "rule": "胜利、已到账金币、时长／击杀、实际积分差、将签、回城／视频追加。新手／AI、触发或未触发签、视频可用或关闭",
    "special": ""
  },
  {
    "id": "UI31-02",
    "ui": "UI31",
    "title": "普通胜利结算",
    "state": "AI胜利",
    "content": "胜利 · 对战时长/击杀 · 已到账金币",
    "action": "回城",
    "prefab": "ui_victory",
    "html": "states/UI31-02.html",
    "png": "states/UI31-02.png",
    "rule": "胜利、已到账金币、时长／击杀、实际积分差、将签、回城／视频追加。新手／AI、触发或未触发签、视频可用或关闭",
    "special": ""
  },
  {
    "id": "UI31-03",
    "ui": "UI31",
    "title": "普通胜利结算",
    "state": "获得将签",
    "content": "胜利 · 本次将签已到账",
    "action": "回城",
    "prefab": "ui_victory",
    "html": "states/UI31-03.html",
    "png": "states/UI31-03.png",
    "rule": "胜利、已到账金币、时长／击杀、实际积分差、将签、回城／视频追加。新手／AI、触发或未触发签、视频可用或关闭",
    "special": ""
  },
  {
    "id": "UI31-04",
    "ui": "UI31",
    "title": "普通胜利结算",
    "state": "可视频追加",
    "content": "基础奖励已到账 · 显示追加收益",
    "action": "▷ 追加 / 回城",
    "prefab": "ui_victory",
    "html": "states/UI31-04.html",
    "png": "states/UI31-04.png",
    "rule": "胜利、已到账金币、时长／击杀、实际积分差、将签、回城／视频追加。新手／AI、触发或未触发签、视频可用或关闭",
    "special": ""
  },
  {
    "id": "UI31-05",
    "ui": "UI31",
    "title": "普通胜利结算",
    "state": "视频关闭",
    "content": "奖励已到账 · 无无效广告按钮",
    "action": "回城",
    "prefab": "ui_victory",
    "html": "states/UI31-05.html",
    "png": "states/UI31-05.png",
    "rule": "胜利、已到账金币、时长／击杀、实际积分差、将签、回城／视频追加。新手／AI、触发或未触发签、视频可用或关闭",
    "special": ""
  },
  {
    "id": "UI32-01",
    "ui": "UI32",
    "title": "普通失败结算",
    "state": "零金币失败",
    "content": "失败 · 金币0 · 实际积分变化",
    "action": "回城",
    "prefab": "ui_defeat",
    "html": "states/UI32-01.html",
    "png": "states/UI32-01.png",
    "rule": "失败、实际金币、积分、回城／视频追加。0金币、有效失败、超时同血失败；不伪装成功",
    "special": ""
  },
  {
    "id": "UI32-02",
    "ui": "UI32",
    "title": "普通失败结算",
    "state": "有效失败",
    "content": "失败 · 按规则获得部分金币",
    "action": "回城",
    "prefab": "ui_defeat",
    "html": "states/UI32-02.html",
    "png": "states/UI32-02.png",
    "rule": "失败、实际金币、积分、回城／视频追加。0金币、有效失败、超时同血失败；不伪装成功",
    "special": ""
  },
  {
    "id": "UI32-03",
    "ui": "UI32",
    "title": "普通失败结算",
    "state": "超时同血",
    "content": "时间耗尽 · 双城同血 · 判为失败",
    "action": "回城",
    "prefab": "ui_defeat",
    "html": "states/UI32-03.html",
    "png": "states/UI32-03.png",
    "rule": "失败、实际金币、积分、回城／视频追加。0金币、有效失败、超时同血失败；不伪装成功",
    "special": ""
  },
  {
    "id": "UI32-04",
    "ui": "UI32",
    "title": "普通失败结算",
    "state": "可视频追加",
    "content": "失败 · 显示实际可追加奖励",
    "action": "▷ 追加 / 回城",
    "prefab": "ui_defeat",
    "html": "states/UI32-04.html",
    "png": "states/UI32-04.png",
    "rule": "失败、实际金币、积分、回城／视频追加。0金币、有效失败、超时同血失败；不伪装成功",
    "special": ""
  },
  {
    "id": "UI33-01",
    "ui": "UI33",
    "title": "结算待确认",
    "state": "处理中",
    "content": "结算确认中 · 不显示虚假到账",
    "action": "等待",
    "prefab": "ui_settlement_pending",
    "html": "states/UI33-01.html",
    "png": "states/UI33-01.png",
    "rule": "同局结算中、网络异常、重试。请求中按钮禁用；重试不重新生成胜负",
    "special": ""
  },
  {
    "id": "UI33-02",
    "ui": "UI33",
    "title": "结算待确认",
    "state": "网络异常",
    "content": "本局结果已保留 · 未确认奖励",
    "action": "重试",
    "prefab": "ui_settlement_pending",
    "html": "states/UI33-02.html",
    "png": "states/UI33-02.png",
    "rule": "同局结算中、网络异常、重试。请求中按钮禁用；重试不重新生成胜负",
    "special": ""
  },
  {
    "id": "UI33-03",
    "ui": "UI33",
    "title": "结算待确认",
    "state": "已恢复",
    "content": "结果确认成功 · 显示实际到账",
    "action": "查看结算",
    "prefab": "ui_settlement_pending",
    "html": "states/UI33-03.html",
    "png": "states/UI33-03.png",
    "rule": "同局结算中、网络异常、重试。请求中按钮禁用；重试不重新生成胜负",
    "special": ""
  },
  {
    "id": "UI34-01",
    "ui": "UI34",
    "title": "回城积分反馈",
    "state": "加分",
    "content": "+25 · 旧积分到新积分",
    "action": "继续",
    "prefab": "ui_rank_feedback",
    "html": "states/UI34-01.html",
    "png": "states/UI34-01.png",
    "rule": "段位徽章、实际加减分、进度条、跨段名称。+25／实际−1至−20／0不变、升降段",
    "special": ""
  },
  {
    "id": "UI34-02",
    "ui": "UI34",
    "title": "回城积分反馈",
    "state": "扣分",
    "content": "−12 · 显示实际扣除值",
    "action": "继续",
    "prefab": "ui_rank_feedback",
    "html": "states/UI34-02.html",
    "png": "states/UI34-02.png",
    "rule": "段位徽章、实际加减分、进度条、跨段名称。+25／实际−1至−20／0不变、升降段",
    "special": ""
  },
  {
    "id": "UI34-03",
    "ui": "UI34",
    "title": "回城积分反馈",
    "state": "零变化",
    "content": "0 · 已在0分，不伪造扣分",
    "action": "继续",
    "prefab": "ui_rank_feedback",
    "html": "states/UI34-03.html",
    "png": "states/UI34-03.png",
    "rule": "段位徽章、实际加减分、进度条、跨段名称。+25／实际−1至−20／0不变、升降段",
    "special": ""
  },
  {
    "id": "UI34-04",
    "ui": "UI34",
    "title": "回城积分反馈",
    "state": "晋升",
    "content": "新段位徽章 · 实际积分更新",
    "action": "继续",
    "prefab": "ui_rank_feedback",
    "html": "states/UI34-04.html",
    "png": "states/UI34-04.png",
    "rule": "段位徽章、实际加减分、进度条、跨段名称。+25／实际−1至−20／0不变、升降段",
    "special": ""
  },
  {
    "id": "UI34-05",
    "ui": "UI34",
    "title": "回城积分反馈",
    "state": "降段",
    "content": "段位降低 · 历史最高保留",
    "action": "继续",
    "prefab": "ui_rank_feedback",
    "html": "states/UI34-05.html",
    "png": "states/UI34-05.png",
    "rule": "段位徽章、实际加减分、进度条、跨段名称。+25／实际−1至−20／0不变、升降段",
    "special": ""
  },
  {
    "id": "UI35-01",
    "ui": "UI35",
    "title": "塔规则与奖励预览",
    "state": "规则",
    "content": "首次免费 · 视频入场额度 · 最高纪录",
    "action": "返回",
    "prefab": "ui_tower_rules",
    "html": "states/UI35-01.html",
    "png": "states/UI35-01.png",
    "rule": "免费／视频次数、最高层、层奖与里程碑。今日已领层、永久已领签、31层后规则",
    "special": ""
  },
  {
    "id": "UI35-02",
    "ui": "UI35",
    "title": "塔规则与奖励预览",
    "state": "今日已领层",
    "content": "第1至8层今日已领 · 不重复发同层奖",
    "action": "返回",
    "prefab": "ui_tower_rules",
    "html": "states/UI35-02.html",
    "png": "states/UI35-02.png",
    "rule": "免费／视频次数、最高层、层奖与里程碑。今日已领层、永久已领签、31层后规则",
    "special": ""
  },
  {
    "id": "UI35-03",
    "ui": "UI35",
    "title": "塔规则与奖励预览",
    "state": "永久里程碑",
    "content": "已领取将签标记 · 永久记录",
    "action": "返回",
    "prefab": "ui_tower_rules",
    "html": "states/UI35-03.html",
    "png": "states/UI35-03.png",
    "rule": "免费／视频次数、最高层、层奖与里程碑。今日已领层、永久已领签、31层后规则",
    "special": ""
  },
  {
    "id": "UI35-04",
    "ui": "UI35",
    "title": "塔规则与奖励预览",
    "state": "31层以后",
    "content": "继续沿原盘面 · 敌军逐层成长",
    "action": "返回",
    "prefab": "ui_tower_rules",
    "html": "states/UI35-04.html",
    "png": "states/UI35-04.png",
    "rule": "免费／视频次数、最高层、层奖与里程碑。今日已领层、永久已领签、31层后规则",
    "special": ""
  },
  {
    "id": "UI36-01",
    "ui": "UI36",
    "title": "塔开局战术选择",
    "state": "候选未选",
    "content": "3张战术 · 初始选1张",
    "action": "选择后确认",
    "prefab": "ui_tactic_start",
    "html": "states/UI36-01.html",
    "png": "states/UI36-01.png",
    "rule": "3张候选，效果和确认。初始1项，确认后仍回开始按钮",
    "special": ""
  },
  {
    "id": "UI36-02",
    "ui": "UI36",
    "title": "塔开局战术选择",
    "state": "已选择",
    "content": "选中1张 · 显示效果",
    "action": "确认战术",
    "prefab": "ui_tactic_start",
    "html": "states/UI36-02.html",
    "png": "states/UI36-02.png",
    "rule": "3张候选，效果和确认。初始1项，确认后仍回开始按钮",
    "special": ""
  },
  {
    "id": "UI36-03",
    "ui": "UI36",
    "title": "塔开局战术选择",
    "state": "已确认",
    "content": "回开始遮罩 · 尚未启动战斗",
    "action": "开始本局",
    "prefab": "ui_tactic_start",
    "html": "states/UI36-03.html",
    "png": "states/UI36-03.png",
    "rule": "3张候选，效果和确认。初始1项，确认后仍回开始按钮",
    "special": ""
  },
  {
    "id": "UI37-01",
    "ui": "UI37",
    "title": "塔层间通过弹窗",
    "state": "奖励确认中",
    "content": "第8层通过 · 金币确认中",
    "action": "等待",
    "prefab": "ui_floor_clear",
    "html": "states/UI37-01.html",
    "png": "states/UI37-01.png",
    "rule": "层数、已确认金币、加点、修城、开始下一层。奖励未确认／可继续／结算失败重试",
    "special": ""
  },
  {
    "id": "UI37-02",
    "ui": "UI37",
    "title": "塔层间通过弹窗",
    "state": "可以继续",
    "content": "已到账金币 · 建造点+50 · 修城实际+10",
    "action": "开始第9层",
    "prefab": "ui_floor_clear",
    "html": "states/UI37-02.html",
    "png": "states/UI37-02.png",
    "rule": "层数、已确认金币、加点、修城、开始下一层。奖励未确认／可继续／结算失败重试",
    "special": ""
  },
  {
    "id": "UI37-03",
    "ui": "UI37",
    "title": "塔层间通过弹窗",
    "state": "请求失败",
    "content": "层奖未确认 · 原盘面保留",
    "action": "重试",
    "prefab": "ui_floor_clear",
    "html": "states/UI37-03.html",
    "png": "states/UI37-03.png",
    "rule": "层数、已确认金币、加点、修城、开始下一层。奖励未确认／可继续／结算失败重试",
    "special": ""
  },
  {
    "id": "UI38-01",
    "ui": "UI38",
    "title": "每5层战术选择",
    "state": "未满槽",
    "content": "当前2/3槽 · 从3候选选择1张",
    "action": "确认",
    "prefab": "ui_tactic_select",
    "html": "states/UI38-01.html",
    "png": "states/UI38-01.png",
    "rule": "候选、已装3槽、选中、替换／保持。未满槽／满槽／放弃新战术；先选择后过层确认",
    "special": ""
  },
  {
    "id": "UI38-02",
    "ui": "UI38",
    "title": "每5层战术选择",
    "state": "满槽替换",
    "content": "当前3/3槽 · 选新战术再选替换位",
    "action": "确认替换",
    "prefab": "ui_tactic_select",
    "html": "states/UI38-02.html",
    "png": "states/UI38-02.png",
    "rule": "候选、已装3槽、选中、替换／保持。未满槽／满槽／放弃新战术；先选择后过层确认",
    "special": ""
  },
  {
    "id": "UI38-03",
    "ui": "UI38",
    "title": "每5层战术选择",
    "state": "保持旧战术",
    "content": "放弃新战术 · 原3项不变",
    "action": "保持当前",
    "prefab": "ui_tactic_select",
    "html": "states/UI38-03.html",
    "png": "states/UI38-03.png",
    "rule": "候选、已装3槽、选中、替换／保持。未满槽／满槽／放弃新战术；先选择后过层确认",
    "special": ""
  },
  {
    "id": "UI38-04",
    "ui": "UI38",
    "title": "每5层战术选择",
    "state": "已选择待确认",
    "content": "下一层生效 · 先确认选择",
    "action": "确认",
    "prefab": "ui_tactic_select",
    "html": "states/UI38-04.html",
    "png": "states/UI38-04.png",
    "rule": "候选、已装3槽、选中、替换／保持。未满槽／满槽／放弃新战术；先选择后过层确认",
    "special": ""
  },
  {
    "id": "UI39-01",
    "ui": "UI39",
    "title": "当前战术详情",
    "state": "一项战术",
    "content": "当前1/3 · 名称、效果与来源",
    "action": "关闭",
    "prefab": "ui_tactic_info",
    "html": "states/UI39-01.html",
    "png": "states/UI39-01.png",
    "rule": "已装效果与来源，关闭。倒计时下方入口；不遮城血；塔外不显示",
    "special": ""
  },
  {
    "id": "UI39-02",
    "ui": "UI39",
    "title": "当前战术详情",
    "state": "三项战术",
    "content": "当前3/3 · 三项效果逐条列出",
    "action": "关闭",
    "prefab": "ui_tactic_info",
    "html": "states/UI39-02.html",
    "png": "states/UI39-02.png",
    "rule": "已装效果与来源，关闭。倒计时下方入口；不遮城血；塔外不显示",
    "special": ""
  },
  {
    "id": "UI39-03",
    "ui": "UI39",
    "title": "当前战术详情",
    "state": "塔外隐藏",
    "content": "普通模式不显示战术入口",
    "action": "返回",
    "prefab": "ui_tactic_info",
    "html": "states/UI39-03.html",
    "png": "states/UI39-03.png",
    "rule": "已装效果与来源，关闭。倒计时下方入口；不遮城血；塔外不显示",
    "special": ""
  },
  {
    "id": "UI40-01",
    "ui": "UI40",
    "title": "精英预告与说明",
    "state": "甲卫",
    "content": "甲卫 · 举盾6秒 · 防护状态可辨",
    "action": "继续",
    "prefab": "ui_elite_notice",
    "html": "states/UI40-01.html",
    "png": "states/UI40-01.png",
    "rule": "甲卫／冲车／旗手名、能力、应对方向。三种精英，短预告不抢操作焦点",
    "special": ""
  },
  {
    "id": "UI40-02",
    "ui": "UI40",
    "title": "精英预告与说明",
    "state": "冲车",
    "content": "冲车 · 压城威胁 · 只在敌城侧出生",
    "action": "继续",
    "prefab": "ui_elite_notice",
    "html": "states/UI40-02.html",
    "png": "states/UI40-02.png",
    "rule": "甲卫／冲车／旗手名、能力、应对方向。三种精英，短预告不抢操作焦点",
    "special": ""
  },
  {
    "id": "UI40-03",
    "ui": "UI40",
    "title": "精英预告与说明",
    "state": "旗手",
    "content": "旗手 · 蓄力2秒后范围鼓舞6秒",
    "action": "继续",
    "prefab": "ui_elite_notice",
    "html": "states/UI40-03.html",
    "png": "states/UI40-03.png",
    "rule": "甲卫／冲车／旗手名、能力、应对方向。三种精英，短预告不抢操作焦点",
    "special": ""
  },
  {
    "id": "UI41-01",
    "ui": "UI41",
    "title": "第30层抉择",
    "state": "三十层通过",
    "content": "已通过30层 · 当前盘面继续保留",
    "action": "继续挑战 / 结束回城",
    "prefab": "ui_floor_30",
    "html": "states/UI41-01.html",
    "png": "states/UI41-01.png",
    "rule": "已过30层、继续挑战／结束回城。不误扣新入场次数；继续沿原盘面",
    "special": ""
  },
  {
    "id": "UI41-02",
    "ui": "UI41",
    "title": "第30层抉择",
    "state": "继续无额外入场",
    "content": "第31层 · 不扣新入场次数",
    "action": "开始第31层",
    "prefab": "ui_floor_30",
    "html": "states/UI41-02.html",
    "png": "states/UI41-02.png",
    "rule": "已过30层、继续挑战／结束回城。不误扣新入场次数；继续沿原盘面",
    "special": ""
  },
  {
    "id": "UI42-01",
    "ui": "UI42",
    "title": "塔结束与失败",
    "state": "主动结束",
    "content": "本局最高通过12层 · 已入账金币合计",
    "action": "回城",
    "prefab": "ui_tower_end",
    "html": "states/UI42-01.html",
    "png": "states/UI42-01.png",
    "rule": "最高通过层、本局已入账总额、纪录、回城。主动结束／自然失败／超时；不再翻倍、不重复发层奖",
    "special": ""
  },
  {
    "id": "UI42-02",
    "ui": "UI42",
    "title": "塔结束与失败",
    "state": "自然失败",
    "content": "第13层失败 · 第12层及以前奖励保留",
    "action": "回城",
    "prefab": "ui_tower_end",
    "html": "states/UI42-02.html",
    "png": "states/UI42-02.png",
    "rule": "最高通过层、本局已入账总额、纪录、回城。主动结束／自然失败／超时；不再翻倍、不重复发层奖",
    "special": ""
  },
  {
    "id": "UI42-03",
    "ui": "UI42",
    "title": "塔结束与失败",
    "state": "超时结束",
    "content": "本层超时 · 已确认层奖保留",
    "action": "回城",
    "prefab": "ui_tower_end",
    "html": "states/UI42-03.html",
    "png": "states/UI42-03.png",
    "rule": "最高通过层、本局已入账总额、纪录、回城。主动结束／自然失败／超时；不再翻倍、不重复发层奖",
    "special": ""
  },
  {
    "id": "UI42-04",
    "ui": "UI42",
    "title": "塔结束与失败",
    "state": "新纪录",
    "content": "最高通过18层 · 新纪录",
    "action": "回城",
    "prefab": "ui_tower_end",
    "html": "states/UI42-04.html",
    "png": "states/UI42-04.png",
    "rule": "最高通过层、本局已入账总额、纪录、回城。主动结束／自然失败／超时；不再翻倍、不重复发层奖",
    "special": ""
  },
  {
    "id": "UI43-01",
    "ui": "UI43",
    "title": "武将试用",
    "state": "黄忠试用",
    "content": "固定供牌 · 演示贯穿箭",
    "action": "开始试用",
    "prefab": "ui_hero_trial",
    "html": "states/UI43-01.html",
    "png": "states/UI43-01.png",
    "rule": "专用场景提示、固定牌序、退出。赵云／黄忠／张飞／关羽共HUD，技能说明各不同",
    "special": ""
  },
  {
    "id": "UI43-02",
    "ui": "UI43",
    "title": "武将试用",
    "state": "张飞试用",
    "content": "固定供牌 · 演示第4击短控",
    "action": "开始试用",
    "prefab": "ui_hero_trial",
    "html": "states/UI43-02.html",
    "png": "states/UI43-02.png",
    "rule": "专用场景提示、固定牌序、退出。赵云／黄忠／张飞／关羽共HUD，技能说明各不同",
    "special": ""
  },
  {
    "id": "UI43-03",
    "ui": "UI43",
    "title": "武将试用",
    "state": "关羽试用",
    "content": "固定供牌 · 演示第3击横扫",
    "action": "开始试用",
    "prefab": "ui_hero_trial",
    "html": "states/UI43-03.html",
    "png": "states/UI43-03.png",
    "rule": "专用场景提示、固定牌序、退出。赵云／黄忠／张飞／关羽共HUD，技能说明各不同",
    "special": ""
  },
  {
    "id": "UI44-01",
    "ui": "UI44",
    "title": "试用结束",
    "state": "试用完成",
    "content": "试用完成 · 无金币、积分、视频按钮",
    "action": "返回武将",
    "prefab": "ui_trial_end",
    "html": "states/UI44-01.html",
    "png": "states/UI44-01.png",
    "rule": "简短完成／失败、重试／返回武将。不显示金币、奖杯、视频或消耗体力",
    "special": ""
  },
  {
    "id": "UI44-02",
    "ui": "UI44",
    "title": "试用结束",
    "state": "试用失败",
    "content": "试用失败 · 可重试 · 不耗体力",
    "action": "重试 / 返回武将",
    "prefab": "ui_trial_end",
    "html": "states/UI44-02.html",
    "png": "states/UI44-02.png",
    "rule": "简短完成／失败、重试／返回武将。不显示金币、奖杯、视频或消耗体力",
    "special": ""
  },
  {
    "id": "UI45-01",
    "ui": "UI45",
    "title": "设置页",
    "state": "开关开启",
    "content": "音乐开 · 音效开 · 震动开 · 1×",
    "action": "返回",
    "prefab": "ui_settings",
    "html": "states/UI45-01.html",
    "png": "states/UI45-01.png",
    "rule": "音乐、音效、震动、默认战速、帮助、账号与版本。开关与禁用；正式版不显示调试和新账号测试",
    "special": "新账号按钮是试玩专用，不进入微信/抖音正式包；正式包保留账号恢复与客服入口。"
  },
  {
    "id": "UI45-02",
    "ui": "UI45",
    "title": "设置页",
    "state": "开关关闭",
    "content": "音乐关 · 音效关 · 震动关 · 2×",
    "action": "返回",
    "prefab": "ui_settings",
    "html": "states/UI45-02.html",
    "png": "states/UI45-02.png",
    "rule": "音乐、音效、震动、默认战速、帮助、账号与版本。开关与禁用；正式版不显示调试和新账号测试",
    "special": "新账号按钮是试玩专用，不进入微信/抖音正式包；正式包保留账号恢复与客服入口。"
  },
  {
    "id": "UI45-03",
    "ui": "UI45",
    "title": "设置页",
    "state": "设备禁用",
    "content": "震动不可用 · 置灰说明",
    "action": "返回",
    "prefab": "ui_settings",
    "html": "states/UI45-03.html",
    "png": "states/UI45-03.png",
    "rule": "音乐、音效、震动、默认战速、帮助、账号与版本。开关与禁用；正式版不显示调试和新账号测试",
    "special": "新账号按钮是试玩专用，不进入微信/抖音正式包；正式包保留账号恢复与客服入口。"
  },
  {
    "id": "UI45-04",
    "ui": "UI45",
    "title": "设置页",
    "state": "试玩专用新账号",
    "content": "仅测试版本右下显示 新账号",
    "action": "新账号",
    "prefab": "ui_settings",
    "html": "states/UI45-04.html",
    "png": "states/UI45-04.png",
    "rule": "音乐、音效、震动、默认战速、帮助、账号与版本。开关与禁用；正式版不显示调试和新账号测试",
    "special": "新账号按钮是试玩专用，不进入微信/抖音正式包；正式包保留账号恢复与客服入口。"
  },
  {
    "id": "UI45-05",
    "ui": "UI45",
    "title": "设置页",
    "state": "新账号请求中",
    "content": "仅测试 · 创建中，不重复点击",
    "action": "等待",
    "prefab": "ui_settings",
    "html": "states/UI45-05.html",
    "png": "states/UI45-05.png",
    "rule": "音乐、音效、震动、默认战速、帮助、账号与版本。开关与禁用；正式版不显示调试和新账号测试",
    "special": "新账号按钮是试玩专用，不进入微信/抖音正式包；正式包保留账号恢复与客服入口。"
  },
  {
    "id": "UI46-01",
    "ui": "UI46",
    "title": "账号与客服信息",
    "state": "正常",
    "content": "玩家编号 · 渠道 · 版本 · 客服入口",
    "action": "复制编号",
    "prefab": "ui_account",
    "html": "states/UI46-01.html",
    "png": "states/UI46-01.png",
    "rule": "玩家编号、渠道、版本、问题反馈／平台客服入口。复制成功／不可用；不显示登录密钥",
    "special": ""
  },
  {
    "id": "UI46-02",
    "ui": "UI46",
    "title": "账号与客服信息",
    "state": "复制成功",
    "content": "编号已复制",
    "action": "返回",
    "prefab": "ui_account",
    "html": "states/UI46-02.html",
    "png": "states/UI46-02.png",
    "rule": "玩家编号、渠道、版本、问题反馈／平台客服入口。复制成功／不可用；不显示登录密钥",
    "special": ""
  },
  {
    "id": "UI46-03",
    "ui": "UI46",
    "title": "账号与客服信息",
    "state": "客服不可用",
    "content": "该渠道暂不可用 · 保留反馈说明",
    "action": "返回",
    "prefab": "ui_account",
    "html": "states/UI46-03.html",
    "png": "states/UI46-03.png",
    "rule": "玩家编号、渠道、版本、问题反馈／平台客服入口。复制成功／不可用；不显示登录密钥",
    "special": ""
  },
  {
    "id": "UI47-01",
    "ui": "UI47",
    "title": "协议与隐私入口",
    "state": "长文阅读",
    "content": "协议标题 · 正文滚动 · 返回固定可见",
    "action": "返回",
    "prefab": "ui_legal",
    "html": "states/UI47-01.html",
    "png": "states/UI47-01.png",
    "rule": "可读文本、平台授权管理入口、返回。长文滚动、网络失败；适用内容由负责人提供",
    "special": ""
  },
  {
    "id": "UI47-02",
    "ui": "UI47",
    "title": "协议与隐私入口",
    "state": "网络失败",
    "content": "协议内容加载失败",
    "action": "重试",
    "prefab": "ui_legal",
    "html": "states/UI47-02.html",
    "png": "states/UI47-02.png",
    "rule": "可读文本、平台授权管理入口、返回。长文滚动、网络失败；适用内容由负责人提供",
    "special": ""
  },
  {
    "id": "UI47-03",
    "ui": "UI47",
    "title": "协议与隐私入口",
    "state": "授权管理",
    "content": "打开平台原生授权管理",
    "action": "前往",
    "prefab": "ui_legal",
    "html": "states/UI47-03.html",
    "png": "states/UI47-03.png",
    "rule": "可读文本、平台授权管理入口、返回。长文滚动、网络失败；适用内容由负责人提供",
    "special": ""
  },
  {
    "id": "UI48-01",
    "ui": "UI48",
    "title": "音频或震动不可用",
    "state": "设备不支持",
    "content": "震动不可用，其他操作正常",
    "action": "知道了",
    "prefab": "ui_device_notice",
    "html": "states/UI48-01.html",
    "png": "states/UI48-01.png",
    "rule": "简短设备能力提示。不支持、系统中断、恢复，不阻断游戏",
    "special": ""
  },
  {
    "id": "UI48-02",
    "ui": "UI48",
    "title": "音频或震动不可用",
    "state": "系统中断",
    "content": "音频被系统暂停 · 保留设置",
    "action": "知道了",
    "prefab": "ui_device_notice",
    "html": "states/UI48-02.html",
    "png": "states/UI48-02.png",
    "rule": "简短设备能力提示。不支持、系统中断、恢复，不阻断游戏",
    "special": ""
  },
  {
    "id": "UI48-03",
    "ui": "UI48",
    "title": "音频或震动不可用",
    "state": "恢复",
    "content": "音频恢复，不叠播背景音乐",
    "action": "继续",
    "prefab": "ui_device_notice",
    "html": "states/UI48-03.html",
    "png": "states/UI48-03.png",
    "rule": "简短设备能力提示。不支持、系统中断、恢复，不阻断游戏",
    "special": ""
  },
  {
    "id": "UI49-01",
    "ui": "UI49",
    "title": "断网与重连",
    "state": "业务重连",
    "content": "网络中断 · 本次请求保留",
    "action": "重试",
    "prefab": "ui_reconnect",
    "html": "states/UI49-01.html",
    "png": "states/UI49-01.png",
    "rule": "当前状态、重试、必要的退出。区分战斗继续模拟或业务暂停，不把加载转圈当结果",
    "special": ""
  },
  {
    "id": "UI49-02",
    "ui": "UI49",
    "title": "断网与重连",
    "state": "战斗联网提示",
    "content": "战斗是否暂停按当前模式 · 明确当前状态",
    "action": "知道了",
    "prefab": "ui_reconnect",
    "html": "states/UI49-02.html",
    "png": "states/UI49-02.png",
    "rule": "当前状态、重试、必要的退出。区分战斗继续模拟或业务暂停，不把加载转圈当结果",
    "special": ""
  },
  {
    "id": "UI49-03",
    "ui": "UI49",
    "title": "断网与重连",
    "state": "恢复成功",
    "content": "数据已同步 · 返回原页面",
    "action": "继续",
    "prefab": "ui_reconnect",
    "html": "states/UI49-03.html",
    "png": "states/UI49-03.png",
    "rule": "当前状态、重试、必要的退出。区分战斗继续模拟或业务暂停，不把加载转圈当结果",
    "special": ""
  },
  {
    "id": "UI49-04",
    "ui": "UI49",
    "title": "断网与重连",
    "state": "无法恢复",
    "content": "保存本局标识 · 按模式处置",
    "action": "返回",
    "prefab": "ui_reconnect",
    "html": "states/UI49-04.html",
    "png": "states/UI49-04.png",
    "rule": "当前状态、重试、必要的退出。区分战斗继续模拟或业务暂停，不把加载转圈当结果",
    "special": ""
  },
  {
    "id": "UI50-01",
    "ui": "UI50",
    "title": "战斗加载失败",
    "state": "加载失败",
    "content": "已建对局保留 · 不重复扣体力",
    "action": "重试本局",
    "prefab": "ui_battle_load_fail",
    "html": "states/UI50-01.html",
    "png": "states/UI50-01.png",
    "rule": "同一已建对局重试／放弃。不重复扣体力、不免费换对手",
    "special": ""
  },
  {
    "id": "UI50-02",
    "ui": "UI50",
    "title": "战斗加载失败",
    "state": "重试中",
    "content": "加载原对局，不能免费换对手",
    "action": "等待",
    "prefab": "ui_battle_load_fail",
    "html": "states/UI50-02.html",
    "png": "states/UI50-02.png",
    "rule": "同一已建对局重试／放弃。不重复扣体力、不免费换对手",
    "special": ""
  },
  {
    "id": "UI50-03",
    "ui": "UI50",
    "title": "战斗加载失败",
    "state": "放弃",
    "content": "说明本局放弃结算后果",
    "action": "取消 / 放弃",
    "prefab": "ui_battle_load_fail",
    "html": "states/UI50-03.html",
    "png": "states/UI50-03.png",
    "rule": "同一已建对局重试／放弃。不重复扣体力、不免费换对手",
    "special": ""
  },
  {
    "id": "UI51-01",
    "ui": "UI51",
    "title": "上局中断",
    "state": "普通中断",
    "content": "上局中断，按既定失败规则结算",
    "action": "查看结果",
    "prefab": "ui_interrupted",
    "html": "states/UI51-01.html",
    "png": "states/UI51-01.png",
    "rule": "未结束普通局／塔／试用的准确处置。普通扣分、塔已发奖保留、试用可退出",
    "special": ""
  },
  {
    "id": "UI51-02",
    "ui": "UI51",
    "title": "上局中断",
    "state": "塔中断",
    "content": "已到账层奖保留 · 本次结束",
    "action": "回城",
    "prefab": "ui_interrupted",
    "html": "states/UI51-02.html",
    "png": "states/UI51-02.png",
    "rule": "未结束普通局／塔／试用的准确处置。普通扣分、塔已发奖保留、试用可退出",
    "special": ""
  },
  {
    "id": "UI51-03",
    "ui": "UI51",
    "title": "上局中断",
    "state": "试用中断",
    "content": "试用中断无损失",
    "action": "返回武将",
    "prefab": "ui_interrupted",
    "html": "states/UI51-03.html",
    "png": "states/UI51-03.png",
    "rule": "未结束普通局／塔／试用的准确处置。普通扣分、塔已发奖保留、试用可退出",
    "special": ""
  },
  {
    "id": "UI52-01",
    "ui": "UI52",
    "title": "视频准备与返回",
    "state": "准备视频",
    "content": "视频准备中 · 游戏模拟暂停",
    "action": "等待",
    "prefab": "ui_video",
    "html": "states/UI52-01.html",
    "png": "states/UI52-01.png",
    "rule": "加载、失败／取消、冷却／额度、实际回报。平台原生视频不由美术画一套播放器",
    "special": "平台原生内容仅示意占位，不要求美术复制系统授权或广告播放器。"
  },
  {
    "id": "UI52-02",
    "ui": "UI52",
    "title": "视频准备与返回",
    "state": "取消返回",
    "content": "未完成观看 · 无奖励无许可",
    "action": "返回",
    "prefab": "ui_video",
    "html": "states/UI52-02.html",
    "png": "states/UI52-02.png",
    "rule": "加载、失败／取消、冷却／额度、实际回报。平台原生视频不由美术画一套播放器",
    "special": "平台原生内容仅示意占位，不要求美术复制系统授权或广告播放器。"
  },
  {
    "id": "UI52-03",
    "ui": "UI52",
    "title": "视频准备与返回",
    "state": "播放失败",
    "content": "视频暂不可用 · 不扣费",
    "action": "重试",
    "prefab": "ui_video",
    "html": "states/UI52-03.html",
    "png": "states/UI52-03.png",
    "rule": "加载、失败／取消、冷却／额度、实际回报。平台原生视频不由美术画一套播放器",
    "special": "平台原生内容仅示意占位，不要求美术复制系统授权或广告播放器。"
  },
  {
    "id": "UI52-04",
    "ui": "UI52",
    "title": "视频准备与返回",
    "state": "冷却",
    "content": "00:28后可再次使用",
    "action": "返回",
    "prefab": "ui_video",
    "html": "states/UI52-04.html",
    "png": "states/UI52-04.png",
    "rule": "加载、失败／取消、冷却／额度、实际回报。平台原生视频不由美术画一套播放器",
    "special": "平台原生内容仅示意占位，不要求美术复制系统授权或广告播放器。"
  },
  {
    "id": "UI52-05",
    "ui": "UI52",
    "title": "视频准备与返回",
    "state": "额度用尽",
    "content": "今日额度已用完",
    "action": "返回",
    "prefab": "ui_video",
    "html": "states/UI52-05.html",
    "png": "states/UI52-05.png",
    "rule": "加载、失败／取消、冷却／额度、实际回报。平台原生视频不由美术画一套播放器",
    "special": "平台原生内容仅示意占位，不要求美术复制系统授权或广告播放器。"
  },
  {
    "id": "UI52-06",
    "ui": "UI52",
    "title": "视频准备与返回",
    "state": "完成返回",
    "content": "等待结果确认 · 不提前发奖",
    "action": "等待",
    "prefab": "ui_video",
    "html": "states/UI52-06.html",
    "png": "states/UI52-06.png",
    "rule": "加载、失败／取消、冷却／额度、实际回报。平台原生视频不由美术画一套播放器",
    "special": "平台原生内容仅示意占位，不要求美术复制系统授权或广告播放器。"
  },
  {
    "id": "UI53-01",
    "ui": "UI53",
    "title": "视频结果待确认",
    "state": "确认中",
    "content": "本次视频结果确认中",
    "action": "等待",
    "prefab": "ui_video_pending",
    "html": "states/UI53-01.html",
    "png": "states/UI53-01.png",
    "rule": "同一请求待确认、重试。不重复发奖；取消不能误写奖励到账",
    "special": ""
  },
  {
    "id": "UI53-02",
    "ui": "UI53",
    "title": "视频结果待确认",
    "state": "确认失败",
    "content": "保留同一请求 · 不重复播放收费",
    "action": "重试确认",
    "prefab": "ui_video_pending",
    "html": "states/UI53-02.html",
    "png": "states/UI53-02.png",
    "rule": "同一请求待确认、重试。不重复发奖；取消不能误写奖励到账",
    "special": ""
  },
  {
    "id": "UI53-03",
    "ui": "UI53",
    "title": "视频结果待确认",
    "state": "确认完成",
    "content": "实际奖励到账或卡牌许可解锁",
    "action": "继续",
    "prefab": "ui_video_pending",
    "html": "states/UI53-03.html",
    "png": "states/UI53-03.png",
    "rule": "同一请求待确认、重试。不重复发奖；取消不能误写奖励到账",
    "special": ""
  },
  {
    "id": "UI54-01",
    "ui": "UI54",
    "title": "资源不足提示",
    "state": "金币不足",
    "content": "金币不足，不能升级",
    "action": "返回",
    "prefab": "ui_resource_short",
    "html": "states/UI54-01.html",
    "png": "states/UI54-01.png",
    "rule": "金币、将签、建造点分别说明。不添加未规划的商店／充值按钮",
    "special": ""
  },
  {
    "id": "UI54-02",
    "ui": "UI54",
    "title": "资源不足提示",
    "state": "将签不足",
    "content": "将签不足，不能招募",
    "action": "查看来源",
    "prefab": "ui_resource_short",
    "html": "states/UI54-02.html",
    "png": "states/UI54-02.png",
    "rule": "金币、将签、建造点分别说明。不添加未规划的商店／充值按钮",
    "special": ""
  },
  {
    "id": "UI54-03",
    "ui": "UI54",
    "title": "资源不足提示",
    "state": "建造点不足",
    "content": "建造点10/30 · 等待自然恢复或补给",
    "action": "返回战斗",
    "prefab": "ui_resource_short",
    "html": "states/UI54-03.html",
    "png": "states/UI54-03.png",
    "rule": "金币、将签、建造点分别说明。不添加未规划的商店／充值按钮",
    "special": ""
  },
  {
    "id": "UI55-01",
    "ui": "UI55",
    "title": "通用短提示",
    "state": "操作成功",
    "content": "已完成",
    "action": "继续",
    "prefab": "ui_toast",
    "html": "states/UI55-01.html",
    "png": "states/UI55-01.png",
    "rule": "成功、非法放置、不可合并、满级、请求中等。中央短提示，不能遮手牌与拖拽热点",
    "special": ""
  },
  {
    "id": "UI55-02",
    "ui": "UI55",
    "title": "通用短提示",
    "state": "非法放置",
    "content": "此处不能放牌",
    "action": "继续",
    "prefab": "ui_toast",
    "html": "states/UI55-02.html",
    "png": "states/UI55-02.png",
    "rule": "成功、非法放置、不可合并、满级、请求中等。中央短提示，不能遮手牌与拖拽热点",
    "special": ""
  },
  {
    "id": "UI55-03",
    "ui": "UI55",
    "title": "通用短提示",
    "state": "不可合并",
    "content": "两张牌不满足合并条件",
    "action": "继续",
    "prefab": "ui_toast",
    "html": "states/UI55-03.html",
    "png": "states/UI55-03.png",
    "rule": "成功、非法放置、不可合并、满级、请求中等。中央短提示，不能遮手牌与拖拽热点",
    "special": ""
  },
  {
    "id": "UI55-04",
    "ui": "UI55",
    "title": "通用短提示",
    "state": "已满级",
    "content": "已达到最高等级",
    "action": "继续",
    "prefab": "ui_toast",
    "html": "states/UI55-04.html",
    "png": "states/UI55-04.png",
    "rule": "成功、非法放置、不可合并、满级、请求中等。中央短提示，不能遮手牌与拖拽热点",
    "special": ""
  },
  {
    "id": "UI55-05",
    "ui": "UI55",
    "title": "通用短提示",
    "state": "请求处理中",
    "content": "正在处理，请稍候",
    "action": "继续",
    "prefab": "ui_toast",
    "html": "states/UI55-05.html",
    "png": "states/UI55-05.png",
    "rule": "成功、非法放置、不可合并、满级、请求中等。中央短提示，不能遮手牌与拖拽热点",
    "special": ""
  },
  {
    "id": "UI56-01",
    "ui": "UI56",
    "title": "请求冲突或重复登录",
    "state": "数据冲突",
    "content": "账号数据已变化，重新加载最新账号数据",
    "action": "重新载入",
    "prefab": "ui_conflict",
    "html": "states/UI56-01.html",
    "png": "states/UI56-01.png",
    "rule": "数据已更新、重新载入／确认。账号资产刷新，不在旧页面重复操作",
    "special": ""
  },
  {
    "id": "UI56-02",
    "ui": "UI56",
    "title": "请求冲突或重复登录",
    "state": "重复登录",
    "content": "当前会话已变化，暂停旧页操作",
    "action": "确认",
    "prefab": "ui_conflict",
    "html": "states/UI56-02.html",
    "png": "states/UI56-02.png",
    "rule": "数据已更新、重新载入／确认。账号资产刷新，不在旧页面重复操作",
    "special": ""
  },
  {
    "id": "UI57-01",
    "ui": "UI57",
    "title": "资源下载失败",
    "state": "战斗分包失败",
    "content": "战斗资源下载失败，已下载部分保留",
    "action": "重试",
    "prefab": "ui_download_fail",
    "html": "states/UI57-01.html",
    "png": "states/UI57-01.png",
    "rule": "文件组加载失败、重试、返回。分包资源、字体、音效均可处理；字体失败有可读回退",
    "special": ""
  },
  {
    "id": "UI57-02",
    "ui": "UI57",
    "title": "资源下载失败",
    "state": "字体失败",
    "content": "使用可读备用字体 · 提供重试",
    "action": "重试",
    "prefab": "ui_download_fail",
    "html": "states/UI57-02.html",
    "png": "states/UI57-02.png",
    "rule": "文件组加载失败、重试、返回。分包资源、字体、音效均可处理；字体失败有可读回退",
    "special": ""
  },
  {
    "id": "UI57-03",
    "ui": "UI57",
    "title": "资源下载失败",
    "state": "音效失败",
    "content": "静音回退，不阻断战斗",
    "action": "继续",
    "prefab": "ui_download_fail",
    "html": "states/UI57-03.html",
    "png": "states/UI57-03.png",
    "rule": "文件组加载失败、重试、返回。分包资源、字体、音效均可处理；字体失败有可读回退",
    "special": ""
  },
  {
    "id": "UI58-01",
    "ui": "UI58",
    "title": "首次帮助与新手引导",
    "state": "第一场转弯",
    "content": "高亮推荐卡与合法格 · 不遮封口",
    "action": "拖入高亮格",
    "prefab": "ui_guide",
    "html": "states/UI58-01.html",
    "png": "states/UI58-01.png",
    "rule": "聚光、高亮、手势、简短说明、继续。不挡牌口；第5场起不再自动推荐最优解",
    "special": ""
  },
  {
    "id": "UI58-02",
    "ui": "UI58",
    "title": "首次帮助与新手引导",
    "state": "第二场刀盾",
    "content": "展示刀+盾成型 · 其他牌仍可辨",
    "action": "继续",
    "prefab": "ui_guide",
    "html": "states/UI58-02.html",
    "png": "states/UI58-02.png",
    "rule": "聚光、高亮、手势、简短说明、继续。不挡牌口；第5场起不再自动推荐最优解",
    "special": ""
  },
  {
    "id": "UI58-03",
    "ui": "UI58",
    "title": "首次帮助与新手引导",
    "state": "第三场分流",
    "content": "展示入口与两个出口 · 不代摆",
    "action": "继续",
    "prefab": "ui_guide",
    "html": "states/UI58-03.html",
    "png": "states/UI58-03.png",
    "rule": "聚光、高亮、手势、简短说明、继续。不挡牌口；第5场起不再自动推荐最优解",
    "special": ""
  },
  {
    "id": "UI58-04",
    "ui": "UI58",
    "title": "首次帮助与新手引导",
    "state": "第四场骑射",
    "content": "展示骑+弓及远程攻击",
    "action": "继续",
    "prefab": "ui_guide",
    "html": "states/UI58-04.html",
    "png": "states/UI58-04.png",
    "rule": "聚光、高亮、手势、简短说明、继续。不挡牌口；第5场起不再自动推荐最优解",
    "special": ""
  },
  {
    "id": "UI58-05",
    "ui": "UI58",
    "title": "首次帮助与新手引导",
    "state": "第五场起",
    "content": "无推荐标签，无最优路线指引",
    "action": "自主布阵",
    "prefab": "ui_guide",
    "html": "states/UI58-05.html",
    "png": "states/UI58-05.png",
    "rule": "聚光、高亮、手势、简短说明、继续。不挡牌口；第5场起不再自动推荐最优解",
    "special": ""
  },
  {
    "id": "UI59-01",
    "ui": "UI59",
    "title": "分享卡与平台展示图",
    "state": "微信分享图",
    "content": "一字成兵 · 水墨字兵 · 不含奖励承诺",
    "action": "打开游戏",
    "prefab": "ui_share",
    "html": "states/UI59-01.html",
    "png": "states/UI59-01.png",
    "rule": "游戏名、识别画面、进入动机。首发只普通分享，不自加分享奖励；按渠道规格导出",
    "special": ""
  },
  {
    "id": "UI59-02",
    "ui": "UI59",
    "title": "分享卡与平台展示图",
    "state": "抖音展示图",
    "content": "一字成兵 · 真实战斗画面 · 无虚假按钮",
    "action": "打开游戏",
    "prefab": "ui_share",
    "html": "states/UI59-02.html",
    "png": "states/UI59-02.png",
    "rule": "游戏名、识别画面、进入动机。首发只普通分享，不自加分享奖励；按渠道规格导出",
    "special": ""
  },
  {
    "id": "UI59-03",
    "ui": "UI59",
    "title": "分享卡与平台展示图",
    "state": "图标缩略图",
    "content": "游戏字标缩小后可识别",
    "action": "预览",
    "prefab": "ui_share",
    "html": "states/UI59-03.html",
    "png": "states/UI59-03.png",
    "rule": "游戏名、识别画面、进入动机。首发只普通分享，不自加分享奖励；按渠道规格导出",
    "special": ""
  },
  {
    "id": "UI60-01",
    "ui": "UI60",
    "title": "受限与其他平台提示",
    "state": "受限通知",
    "content": "显示平台实际原因与可执行动作",
    "action": "按平台要求",
    "prefab": "ui_platform_notice",
    "html": "states/UI60-01.html",
    "png": "states/UI60-01.png",
    "rule": "适用的身份／游玩时段限制、系统通知或退出。条件项：以实际平台接入要求为准；可用原生UI则不重画",
    "special": "平台原生内容仅示意占位，不要求美术复制系统授权或广告播放器。"
  },
  {
    "id": "UI60-02",
    "ui": "UI60",
    "title": "受限与其他平台提示",
    "state": "系统通知",
    "content": "优先原生能力，自制只承接状态",
    "action": "确认",
    "prefab": "ui_platform_notice",
    "html": "states/UI60-02.html",
    "png": "states/UI60-02.png",
    "rule": "适用的身份／游玩时段限制、系统通知或退出。条件项：以实际平台接入要求为准；可用原生UI则不重画",
    "special": "平台原生内容仅示意占位，不要求美术复制系统授权或广告播放器。"
  },
  {
    "id": "UI60-03",
    "ui": "UI60",
    "title": "受限与其他平台提示",
    "state": "必要退出",
    "content": "明确退出原因，不能继续开局",
    "action": "退出",
    "prefab": "ui_platform_notice",
    "html": "states/UI60-03.html",
    "png": "states/UI60-03.png",
    "rule": "适用的身份／游玩时段限制、系统通知或退出。条件项：以实际平台接入要求为准；可用原生UI则不重画",
    "special": "平台原生内容仅示意占位，不要求美术复制系统授权或广告播放器。"
  }
]
