Files
gplan-2/design/ux/level-clear.md
T

9.6 KiB
Raw Blame History

UX Spec: 关卡结算屏(Level Clear)——提升三选一选择面

Status: v2.1 义务锁定版 Author: user + ZCode Last Updated: 2026-10-29 Platform Target: PC (Steam)——Keyboard/Mouse 主,全部操作纯鼠标可完成(同 battle.md) Template: UX Spec


Purpose & Player Need

关卡结算屏是关卡收束时刻的清算与选择面:末节点 Boss 倒下、本关结束,玩家在这里看到这一关的账(部分回血的兑付反馈),然后从三个提升选项里挑一件带走——本作第一个选择型奖励面。

一句话目的:让「打穿了一关」的收束感落在一笔算得清的账上,并把「这关带我变强」变成玩家自己做的决定。

  • 专长三选一承载局内成长的选择权:候选 = 纯专长(关卡完成渠道只出专长)、点选一件兑付、另两件丢弃不可反悔
  • 部分回血承载收束反馈:关卡完成不再自动回满,回血量一眼可读(满血回 0 合法)
  • 钥石增量不在本屏:Boss 击杀进账时刻的钥石增量行归战斗总结结算(settlement-summary.md)——单一展示面原则,本屏不重复

若此屏缺失或难用:奖励选择沦为无声的自动发放(选择权缺失);三选一停点不可中断则续玩丢选择。

现行载体与目标形态(重要边界)

本屏没有独立新屏:现行与 MVP 目标载体都是关卡收束时刻的覆盖层反馈(HUD框架 P1 行「相邻域屏完整屏形态:MVP 以覆盖层反馈承载」)。本 spec 锁义务与数据锚,不锁视觉形态;完整屏形态待 P1 屏实装时定。

时刻 载体(目标形态) 呈现内容
Boss 战胜利(非末关) 战斗总结结算(settlement-summary.md)→ 确认后进本屏 战利品行含钥石增量行 → 本屏:部分回血反馈 + 三选一三卡
非末关完成(本屏默认态) 三选一覆盖层(与奖励节点共用面) 部分回血兑付行 + 三张专长选项卡(点选+确认+兑付反馈)
末关完成 / 失败 / 放弃 冒险结算(复用战斗终局 overlay) 冒险摘要五件事 + 钥石入账明细——相邻域(冒险落幕面,非本屏职责)

Navigation Position

战斗屏 ──胜利(末节点 Boss)──▶ 战斗总结结算(GP/钥石增量行)──确认──▶ 【关卡结算(关卡完成)】
                                                                        ├─ 非末关:回血反馈 + 三选一点选兑付 → 下一关开始(→ 关卡画面选路)
                                                                        └─ 末关完成:直通冒险结算(相邻域)→ 返回存档/营地
失败不经本屏(战斗屏失败分支直达冒险落幕)。
  • 上游屏:战斗总结结算(Boss 胜利确认——settlement-summary.md)
  • 下游屏:关卡画面(下一关开始,选路枢纽——屏级 spec:level-map.md);末关时改接冒险结算(相邻域屏)

Entry & Exit Points

方向 触发 携带语境
进入 战斗总结结算确认 → 关卡收束(先清库后宣布)→ 非末关兑付部分回血 → 三选一候选呈现(奖励三选一拉起信号) 三候选(件 id + 名称 + 效果行值);部分回血前后生命读数;GP 账本余额(跨关延续)
离开 三选一确认兑付 → 继续钮(唯一出口) 兑付反馈载荷 → 下一关开始

零自动推进(冒险结构 契约 4):三选一呈现后必须玩家点选才兑付,确认前玩家不被推着走;重复兑付被拒。选择停点可中断:断点附随件扩「奖励选择态」,续玩回到本屏同一候选(不重抽)。

Information Hierarchy(义务锁定)

按 2026-09-26 信息归属两铁律(循环口径 + 单一展示面)推导的准入清单:

  1. 三张提升选项卡(第一注视点):件名称 + 一行效果读数(值读冒险表)——选择型奖励的本体;已达次数上限的件不出现(剔牌库在先);候选 = 纯专长
  2. 部分回血兑付行:回血量(前后生命读数,如「生命 34 → 42」);满血回 0 时呈「生命已满」反馈而非 0 字样
  3. 兑付反馈(确认后):选中件效果一行(如「攻击 +1」)+ 另两件已丢弃提示

禁入清单(两铁律推导):战斗小循环数据(结算明细、状态效果——留在战斗屏);GP(呈现位已拍板 = 战斗总结结算 + 关卡画面常驻);钥石增量与累计(归战斗总结结算增量行 + 冒险总结结算收束明细——本屏零钥石元素);营地界面全量;冒险摘要五件事(末关时由相邻域冒险结算屏承载);已达上限件(不出现在候选)。

States & Variants

State Trigger What Changes
三选一选择态(默认) 非末关完成,候选已抽定 三卡呈现(零自动推进)→ 点选 → 确认 → 兑付反馈 → 继续
兑付反馈态 确认兑付后 选中件效果一行 + 丢弃提示 → 继续钮点亮
末关完成 关卡完成且末关 直通冒险结算——不发三选一与回血(奖励只朝下一战生效);本屏不出现
Boss 入口语境 击杀 Boss(恒为本屏入口前置) 入口演出归战斗屏;钥石增量行归战斗总结结算——本屏不另设

Interaction Map

组件 动作 输入 即时反馈 结果(经组合根)
提升选项卡 ×3 点选(单选高亮) 左键 选中卡高亮、确认钮点亮 选中态暂存(未确认可改选)
确认钮 兑付选中件 左键 兑付反馈(效果一行) 冒险编排兑付恰一件(重复兑付被拒);另两件丢弃不可反悔
继续钮 接受结算、推进 左键 按钮下压 下一关开始(推进到下一关——兑付后受理)

复用既有交互范式,零新增原语:三卡点选 = 奖励节点 选择框 按钮数组同族(由节点覆盖层展示奖励三选一 先例)+ 选路覆盖层点选确认两段式(关卡地图屏 先例);覆盖层容器 = 中场确认覆盖层位置复用。

Data Requirements

Data Source System Read / Write Notes
三候选(件 id/名称/效果行值) 冒险结构 奖励三选一拉起信号(令牌池洗牌不放回抽 3〔同 kind 去重〕,奖励抽取封闭流) Read 载荷自包含、销毁前捕获;同种子同三候选(可复放)
部分回血读数(回血前后生命) 冒险结构生命账本(clear_heal_pct 兑付) Read 满血回 0 合法态文案化
兑付反馈载荷 冒险结构 奖励兑付完成信号 Read 选中件 id + 生效值
冒险摘要(五件事) 冒险结构的冒险收束载荷 Read 末关分支数据锚(相邻域冒险结算屏消费)
GP 账本 冒险结构 GP 冒险账本 — 不进本屏(2026-09-27 拍板)
钥石入账 元进度 冒险结算入账 Write(相邻域) 唯一写档点不变;本屏零钥石元素(增量行归战斗总结结算)

Accessibility

沿用 HUD框架「可访问性基线」节全量(对比/色弱/字号/闪烁/减动效/纯鼠标/中文字体)——本屏无新增承诺。结算数字是本屏信息主载体,遵守同一字号下限与对比硬指标。

Acceptance Criteria

  • 非末关完成必经本屏:三选一恰呈现一次(零自动推进)、点选后恰兑付一件(重复兑付被拒)、未选项零生效
  • 三候选读数可见且与奖励三选一拉起载荷一致(件名称 + 效果行值);同种子同三候选
  • 部分回血兑付行可见且封顶上限;满血回 0 呈合法态文案
  • 末关完成分支正确直通冒险结算(不发三选一与回血),冒险摘要五件事完整
  • 确认前冒险状态冻结(无后台推进、无战斗事件串扰);选择停点中断 → 续玩已选不丢失(候选一致性=停点快照承载的实现现状、非验收义务——2026-10-01 用户裁决)
  • 呈现遵循 HUD框架 可访问性基线(对比 ≥4.5:1、字号下限、纯鼠标可完成;减动效 = 静态化)
  • 本屏零钥石元素、零 GP 元素(禁入清单机检随冒烟断言)

Open Questions

  1. GP 增量展示面归属——已完成(2026-09-27 用户拍板):战斗胜利出现战斗总结结算、展示获得的资源(GP 增量+总量;含 Boss/精英钥石增量行);战斗失败出现冒险总结结算、确认后回存档首页。本屏不承载 GP 与钥石,无遗留。两面呈现 spec:settlement-summary.md
  2. 末关分支形态:末关完成时直通冒险结算(现行维持)——随完整屏形态实装一并定
  3. 钥石呈现三面化——已完成:战斗总结结算(Boss/精英击杀增量行)+ 冒险总结结算(收束明细)+ 营地存量——「进账时刻 / 收束明细 / 存量可用」不同义不构成重复展示
  4. 视觉终稿:以表现层样张过审为前置(待办清单登记);本 spec 的 AC 为功能性判据,不含视觉终稿判据。渲染层验证冻结(用户 2026-10-01 裁)——实装后目检清单顺带交付,实机目检待用户批准后补闸
  5. 替换子交互视觉形态——已随渠道退役:秘宝件出池,本屏无道具件候选,替换子交互不于本屏触发