Files
gplan-2/design/gdd/analysis/b1-settlement.md
T
2026-09-14 18:18:49 +08:00

311 lines
43 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# B1 战斗结算规则 设计推演
> 状态:concluded · 本文只装"为什么"——`design/gdd/b1-settlement.md` 只收本文的结论。
> 修订时新增问题节,不删旧节(历史即依据)。
> 全部公式零随机(同输入恒同输出);期望值均为设计期统计量(对账输入 = A1 F4 报告 C 的 actuals,非 target 参数);数值默认 provisional(调参所有权归 C3)。
## 问题:结算系统如何兑现三根支柱的体验承诺?
### 广度分析
| 支柱 | 关键词 | 机制承诺 |
|---|---|---|
| P2 因果归因 | "都是我算出来的" | 每行明细携带来源标注(伤害道具 / 安全格增益 / 标中旗削弱 / 清图奖励 / 雷→伏击);无来源行 = 断言失败(AC-42)——P2 呈现半边的最终兜底在 B1 流水协议 |
| P1 掌控感 | "挖下去值得" | 挖掘决策 EV 健康不等式(A3 条款③)由本系统闭合签字;条款⑤守"推到底"不在数学上吃亏 |
| P3 雷的两面 | "赌桌不是陷阱" | 敌方伏击行与标中旗削弱行同框、同呈现语言 |
| 高光节拍 | "完美被加倍兑现" | 完美排雷双份兑付 + 标中旗行高光(创意风险 #2/#3 机制本体) |
- 候选 A(明细只记数值不记来源):实现最省,但 P2 归因链断——玩家无法验证"都是我算出来的",排除。
- 候选 B(来源标注 + 封闭行型 + 无来源即断言):数据层把归因做成机器可判定的契约,呈现侧怎么优化都丢不了来源,采纳。
- 候选 C(敌我增减益分开两套呈现语言):读屏成本更低,但 P3"雷的两面"需要同构对照,排除。
### 深度分析
P2 的呈现半边归 D1/B5,但呈现只能从数据里还原来源——来源若不在流水行里,任何呈现优化都救不回归因链。所以"无来源行 = 断言失败"必须是数据层硬断言,不能是呈现自觉。
P1 的两条不等式(条款③⑤)若只写进 A3 而没有闭合 owner,就是口号;B1 作为唯一同时握有板面事实流与战斗数值面的系统,是唯一能签字闭合的位置——判据函数角色定为"C3 调参约束生成器",使每次调参被迫重跑对账。
### 综合判断
反向护栏成文:明细绝不能有无来源的行(P2);判定绝不能不可归因(P1);敌我增减益同构呈现(P3)。任何"合并到看不出来源"的呈现优化,须先确认归因链在数据层仍可还原。design 的「设计目的」四条承诺与「明细流水协议」节只收本结论。
## 问题:weaken 锚的归一口径取"每结算瞬时当量"还是"每 AP 总暴露"?(F0 推导)
### 广度分析
| 分支 | schema 可行性 | 后果 | 裁决 |
|---|---|---|---|
| 每结算瞬时当量 | 可行(m_w ∈ [51, 100] 域内) | F2 越域界随移(AP 界 8×m_w / 表界 16×m_w);地板交叉层数 = ⌈100/m_w⌉ = 2;B4 参照零漂移 | **采纳** |
| 每 AP 总暴露 | 不可行——需 m_w > 100,被 percent ∈ [−100, 100] schema 域禁止 | 现实解 = B4 重定最低档参照:safe_cell 活行集中无更弱 buff 行可指,需新增低档行或锚移道具档位——接口漂移 + A4 硬约束①连锁 + 条款①对照表全表重排 | 排除 |
### 深度分析
- **同分母性**:瞬时口径下 weaken 与 defense_up 作用于同一伤害流,"严格大于"在百分点读法与 HP 点读法下等价,锚判定无量纲歧义;总暴露口径引入时长权重(2:1 不对称),把 duration knob 泄漏进锚判定。
- **机制同构**:B3 本就按结算逐次兑付,瞬时口径是容器原生口径;总暴露需跨结算累计账本,与已锁的"单结算自然边界"(dur=1 每结算清零无存量)冲突。
- **schema 禁止**:总暴露锚算术需 m_w > 100 越 percent 域,改域 = B3/B4/B1 三侧换算连锁,成本不成比例。
- **值域依据(@D_ref=12;按现行三输入复核)**:腿一 m_w ≥ 51——65 > 50 严格大于 attack_up 当量 6.0(参照对象 registry 回迁口径,裕度 +30%;池内字面最低档 defense_up −30 当量 3.6 读法下裕度更宽 2.17×——两参照读法均通过,锚判据不受减伤墙批漂移影响);腿二 m_w/100 × D_ref ≥ E_dig → m_w ≥ 38(E_dig = 4.5 面值口径——C3 v3 曲线格子池加权重推;区间读法 4.3–5.1 → 36–43);可行交集下界 = 51(E_dig 口径修正后腿二放宽、腿一回绑);上界 85 = 超出仅在连锁贫瘠板增加裕度,而地板交叉层数恒为 2、边际层早已贬值;schema 顶 100 保留为绝对上界(对应腿二校准上界 ≈1.96:1);下界 60 维持(高于现行可行下界 51——F0 裁决值保守余量,值域修订走 B4/B1 共裁流程非重算批)。
- **地板规则(B1 clamp 承载,F2 成文)**:每侧 percent 池 clamp ∈ [−100, +100] pp → 乘数域 [0, 2];交叉层数 = ⌈100/m_w⌉ = 2(值域全域恒 2)——第 3 层起边际瞬时当量 = 0;单结算 weaken 池 HP 当量上界 = min(L×m_w, 100)/100 × D_inst(该结算实际裸伤害敞口)。
- **B3 红警"7 层即触地板"预读更正**:该预读按 −400% 合成带估读;本节地板钉在乘数零点(−100 pp)→ 精确层数 = ⌈100/m_w⌉ = 2——回执同步 B3 OQ1 与 registry `status_effect.anchor_warning`(对账清单 #1/#2);预读实质结论(上调 m_w 的连带成本 = 地板提前到达、边际层贬值)被本裁决吸收。
- **修订效果量(锚两腿在默认 65 下的读数,provisional @ D_ref=12)**:腿一 7.8 vs 6.0 HP/结算(attack_up 当量——+30%,严格大于 ✓);腿二 7.8 vs E_dig 4.5 HP(+73% ✓);池内字面最低档读法(defense_up 3.6)裕度 2.17×——三读法均通过;历史 −25 值红警复算结论不变(25 vs 50 pp 不过锚 → 修订成立)。
- **重算复核(B1 重算批)**:锚两腿按现行三输入(duration=1、m_d=−30、C3 v3 曲线 E_dig=4.5)复核通过——腿一 7.8 > 6.0(attack_up 当量,参照对象 registry 回迁口径;裕度 +30%)、腿二 7.8 ≥ 4.5(裕度 +73%);可行交集下界 = 51(腿一回绑),值域 [60,85]/默认 −65 维持(F0 裁决值,共裁修订流程非重算批回收)。
### 综合判断
采用"每结算瞬时当量"口径(每 AP 总暴露分支排除);m_w 值域 [60, 85]、默认 −65;地板交叉层数 = ⌈100/m_w⌉ = 2;B4 参照零漂移,B3 仅行值域修订(registry 回写)。design 的 F0 节只收此结论与连带界值。
| 连带后果项 | 内容 |
|---|---|
| B3 行值 | `StatusEffectTable.weaken.magnitude` −25 → 值域 [60, 85]/默认 −65(registry 回写);B3 AC-14 腿 3 非平凡性复查:16×65 = 1040 越出 percent 域——腿保持非平凡 ✓ |
| F2 越域界随移 | AP 界 = 8×65 = −520%;表界 = 16×65 = −1040%(合成值 B3 原样输出、B1 池 clamp 收口) |
| B4 侧 | 零漂移:defense_up 参照保持 |
| 时长不对称 | 显式接受:defense_up : weaken 全寿命 ≈2:1 不入锚判定——吸收通道 = m_w 上探值域段 + 高光 #3 即时节拍 + duration 为 knob(与 B3 OQ7 playtest 证伪项联动观测) |
## 问题:四源效果档位如何放在同一把尺上对照?(F1 推导)
### 广度分析
- 候选 A(分源换算率——buff/debuff/道具各一把尺):读数贴近直觉,但 A3 条款①契约要求单一线性换算,分源改率 = 条款①契约作废,排除。
- 候选 B(单一线性换算全四源共用,E(·) 单位 = 主角 HP 点):一把尺量全部,锚判定无量纲歧义,采纳。
- 候选 C(账面乘数表达完美翻倍——只记 ×2 不打第二份):账面好看但运行时无兑付载体,玩家实得与账面脱节,排除(见"完美翻倍"问题节)。
### 深度分析
- **统一当量定义**:E(·) ∈ 主角 HP 点(1 当量 = 1 点主角 HP 的期望净变化;与 B2 ambush 量纲、B4 F6 量纲建议同源)。flat/道具类 E = 值本身(ambush 按 k 个攻击拍线性展开);percent 类 E_inst = |L×m| ÷ 100 × D_exp;时长是显式乘子(E_life = E_inst × 兑付结算数)而非分源改率。
- **D_ref 选取**:单行全局 knob,provisional 默认 12 = 单结算伏击结构上界 cap×m_amb(B2 F4 已登记值),兼 attack 拍带 [4,16] 与 heavy 带 [8,20] 的中位代表;变更触发全对照表 + 条款③⑤重跑(联动义务)。
- **锚对照实物(条款②,B3 义务⑤)**:参照对象 = attack_up_basic 行(registry 回迁口径——B3 Rule 10 同款;RewardTable tier=2,effect_id=attack_up)→ 每结算瞬时当量 6.0 HP @ D_ref=12;weaken 修订后每旗 7.8 > 6.0(严格大于 ✓,裕度 +30%);腿二(连锁放大边际基准,provisional 1:1 零链下界):7.8 ≥ E_dig 4.5 ✓(面值口径,C3 v3 曲线重推)。池内字面最低 buff 当量 = defense_up_basic 3.6(−30 现行值)——"最低档"字面读法裕度更宽(2.17×),锚在两读法下均通过;2026-09-11 参照回迁后的预检重跑义务由本批兑现(registry anchor_warning 迁移注记关闭)。
- **结构性边界注记**:腿二校准上探的可满足上界 = m_w=100 ↔ 相对每结算百分点档 ≈1.96:1——连锁期望放大超过此比值的板形上腿二结构性不可满足(percent 瞬时档被 schema 域封顶);处置 = C3 板形参数(密度/连锁富集)与 m_w 联动约束,非数值修订可解(对账清单 #3/#8——连锁规模分布无既定供给方)。
- **Example**:一轮挖到 2 个 defense_up(L=2 同实例)→ E_inst = 2 × (0.30 × 12) = 7.2 HP/结算 × 1 结算 = 7.2 全寿命(dur=1——名义值,饱和折减见 F4 敏感性);同轮标中 1 旗 → weaken L=1 → 7.8 HP/结算;踩 1 雷(unit_count=1、attack 拍)→ 该结算敌方附加 +3 HP。
### 综合判断
单一线性换算全四源共用;E(·) 单位 = 主角 HP 点;Output Range E ∈ [0, +∞)、全表零负值(floor 语义见 F2——percent 池饱和后边际 E = 0);weaken 修订后每旗 7.8 HP > attack_up 6.0(条款②腿一通过)。归口:B1 管对照表与换算维护、D_ref 与 P_perfect 的 SettlementTable 承载;B4 管行值/权重/tier/C 供给(F6);C3 管全部 provisional 数值;B3 管 L×m 合成原样输出(对照表输入侧)。design 的 F1 节收结论、换算式、Variables 与全对照表。
## 问题:percent 池怎么合成、地板设在哪、免伤轮合不合法?(F2 推导)
### 广度分析
- 候选 A(合成后统一 clamp 一次):两侧池互相污染,weaken 饱和会吃掉 defense_up 的账面贡献,归因不可读,排除。
- 候选 B(每池独立 clamp [−100, +100] → 池间乘算 → floor 单一取整):每侧地板独立可读,乘数域 [0, 2],采纳。
- 候选 C(clamp 域做成 knob):地板是结构语义不是平衡杆——放开 = 负乘数/超 2 倍乘数分支全要重写,定为结构性非 knob。
### 深度分析
- **三例逐一读法(B3 EC7 登记例的收口)**:weaken AP 界(L=8 × 65 = −520%)与表界(L=16 × 65 = −1040%)均 clamp 到 −100 → M=0——该结算全体存活敌输出归零,第 3 层起边际瞬时当量 = 0(地板吸收);明细行如实显示合成值与终值两端(P2)。defense_up 叠满(L=2 × −30 = −60%)在域内未触地板 → M=0.4。
- **免伤合法性**:enemy 侧 weaken 饱和(单结算零输出)是乘数域 [0, 2] 自然边界内的设计内结果;hero 侧免伤在现行 −30×2 帽(−60%)下不再由 defense_up 单侧可达——免伤轮(D'=0)的现行可达路径 = weaken 饱和或两侧池叠加触底;强度评估(减伤窗口/免伤频率)归 C3 对账联动(B3 Knob 交互同口径),不属地板规则异常。
- **Example**:D_raw=20、weaken L=2 → P=−130 → clamp −100 → M=0 → D'=0(零值伤害行,不调 apply_damage);weaken L=1 → 20 × 0.35 = 7;再叠 defense_up L=1 → 20 × 0.7 × 0.35 = 4.9 → floor 4。
- **地板规则不区分越域来源**:越域深度仅入合成值显示与诊断计数;地板恰边界读法 = 判据函数对 −100 输入的断言腿,非现行行值产物。
### 综合判断
池内加算 → 每池独立 clamp [−100, +100] → 池间乘算 → floor 单一取整(结构性非 knob);免伤轮(D'=0)是合法设计态——不调 apply_damage、产零值伤害行;Output Range D' ∈ [0, ∞) 整数、零负值分支,MVP 实际域 [0, 20](B2 参考带)。归口:B3 管 L×m 原样输出不 clamp(B3 义务⑧/EC7 对侧);B1 管池归属映射、clamp、乘区次序、取整方向;C3 管池值强度评估。design 的 F2 节收结论、公式、Variables 与三例读法表。
## 问题:伤害全序、负值、溢杀与死亡判定边界怎么定?(F3 推导)
### 广度分析
- 候选 A(敌方先手):扫雷的因(伏击池)已在敌侧,玩家没有先手兑现面,"我算出来的"节奏断裂,排除。
- 候选 B(主角先手 → 逐敌循环 → 道具段三分支全序):玩家动作先兑现、敌方反应后跟,与授予段的归因序一致,采纳。
- 候选 C(溢杀转移到下一个敌人):一刀清屏的隐性倍率,道具恒定表值的拍板被破坏,排除——溢杀丢弃。
### 深度分析
- **Example**:goblin(atk=4)L=2 → D_raw=10;weaken L=1 → floor(10 × 0.35) = 3;defense_up L=1 同结算 → floor(10 × 0.5 × 0.35) = 1;knife_adv(power=8)打 hp=6 的敌 → hp 归 0 → Dead、溢杀 2 丢弃、击杀标记进流水、下一件刀打顺位后继。
- **双死不可达论证(判定段 hero 先判的防御性优先级)**:我方伤敌在道具段与战斗段主角先手攻击、均先于敌方行动兑付;敌方伤我在主角攻击之后——敌行动时点若已敌全灭则先判胜,"hero 与最后敌同时 hp=0"结构上不可达;hero 先判是不可达情形下的纵深防御,不是常态分支。
- **负值分支禁令的实现面**:percent 池地板 [−100, +100](F2)、flat 值 ≥ 0、hp ∈ [0, max_hp]、治疗 clamp 上界 max_hp(B4 F4 对侧:hp' = min(hp + power, max_hp))、apply_damage 入参 n ≤ 0 = B2 API 拒绝 + 诊断——D'=0 腿由此改走零值行,免伤与零输出必须在明细里可见。
### 综合判断
三分支全序(主角先手 → 逐敌循环 → 道具段)+ 负值分支禁令(零负伤害/负治疗/负当量)+ 死亡判定:Dead ⇔ hp=0(无负 hp 中间态)、受击即死、hero 死亡战斗段短路、判定段 hero 先判;Output Range 双向伤害 D ∈ [0, ∞)、hp ∈ [0, max_hp]、零转移零存续。归口:B2 管递减/floor 0/Dead 翻转/指针冻结;B1 管全序、调用序、零值行、溢杀丢弃语义、死亡判定时机(B2 义务③的对侧兑现)。design 的 F3 节收结论、四分支公式与 Variables。
## 问题:条款③挖掘风险不等式在现行值链下成立吗?(F4 推导)
### 广度分析
- 评估点候选 A(全板平均):被信息端稀释,残余盲猜端的真实风险被平均掉,排除。
- 评估点候选 B(残余盲猜端最坏点,信息端平凡腿一并登记):风险最坏处配对,"推理有回报"面不丢,采纳。
- 左臂口径候选:锚行(最低档 buff = defense_up_basic 满寿命当量,合同读法)vs 跨行期望(E_dig 面值口径)——双口径登记防虚高裕度误用。
### 深度分析
- **V_safe 注记**:原"= D_ref 恒等式"(0.5 × D_ref × 2)随 duration=1(两级奖励批)与 m_d=−30(减伤墙批)消解;现行 V_safe = 0.30 × 12 × 1 = 3.6——锚行满寿命当量,低于跨行期望口径的差距同步收窄(E_dig 现值 4.5)。
- **V_mine 注记**:单雷边际敌方增益当量上界:1 雷 = 1 层伏击;cap 溢出使第 cap+1 颗雷边际当量 = 0 → 灾难轮不等式自收紧。
- **ι 代理注记**:actuals p10 未交付前以行 target 代 = 判式面的保守代理(target ≥ 实际 p10 → P(雷) 偏高 → 主式更难过);低 ι 的真实代价不经本式入账——报告 C 交付按总暴露核对消费;重跑义务(对账清单 #6)。
- **换锚注记**:旧验算的"L1 10×10 d0.10 / L2 12×12 d0.12"系 A1 schema 自洽参考行(registry mvp_reference_rows,非曲线行);本批两腿统一换锚 C3 MVP 行值总表 v3(L1 D0/D1 板 10×10、D2–D4 板 12×12,全轴 d0.25/t0.88)——L2 腿即 v3 曲线内最大常规板形;C3 L2 关卡行值填充批(OQ1)交付后随 actuals 重跑复核。
- **双口径读数(防虚高裕度误用)**:验算表左臂按锚行当量 V_safe=3.6(A3 条款③"最低档 buff 当量下界"的合同读法);按跨行期望口径(左臂 = P(安全)×E_dig,E_dig=4.5 面值口径)复算:L1 ≈0.60×、L2 ≈0.58×——二元结论不变(两板形、两口径全破)。
- **结论①(重算回执)**:现行值链下两参考板形破线——登记"通过"回执失效(旧读数 ≈2.0×/2.6× 的三个旧输入:duration=2 / m_d=−50 / v1 曲线参考行);信息端平凡腿不变(零赌博板形不产生破线误判——P(安全)=1 → V_safe > 0 恒成立)。
- **与 clause3_supply 2.3× 预检的对齐**:该预检系"pp 代理左臂 × cap 右臂"的巧合近似——量纲混用且右臂取结算聚合上界与单格决策单位错配(多计 cap 倍);本闭合改统一 HP 当量 + 边际配对 → registry `clause3_supply.direction_precheck` 退役为历史记录、回执登记重算值(对账清单 #3)。
### 综合判断
现行值链(duration=1 × m_d=−30 × C3 v3 曲线 d0.25/t0.88)下两参考板形破线(锚行口径 L1 ≈0.48× / L2 ≈0.47×;期望口径 0.60×/0.58× 同向);满配 unit_count=3 深度破线;旧"通过"回执退役为历史记录;破线升格 C3 默认曲线级约束(候选杠杆 = m_d 回调 / duration 恢复跨轮 / D_ref 联动上调 / 板形侧密度×ι 联动对〔d0.28 回退先例〕/ m_amb 下调;全部处"禁独立调参"联动网络 m_w↔D_ref↔m_d↔duration_d,修正方向须 C3 提案 + B1 闭合对账共裁,本重算批如实登记读数、不代裁修正);actuals p10 交付后强制重跑。design 的 F4 节收结论、判据公式、Variables、验算表与结论①–④。
## 问题:条款⑤"推到底清图"支配"弃图刷新"吗?(F5 推导)
### 广度分析
- 计价候选 A(逐格按初始比例独立重赌):漏计全池挖掘量——安全格被挖走后池内雷占比持续上升,模型漏项且 actuals 校准无法吸收,系统性偏乐观,排除。
- 计价候选 B(挖穿残余池计价——均匀交错模型 E[踩雷] = |M|×n_s/(n_s+1)):清图必须挖穿残余盲猜区的真实成本入账,采纳。
- RAP 计价候选:停手侧 RAP 机会收益按零计价(显式假设)——图源充裕时 RAP 边际低,零价假设对"推到底"偏利一分;本假设下 verdict 已为负,若 C3 为 RAP 计价则结论只会更负——模型边界成文,非遗漏。
### 深度分析
- **E_dig 推导口径**(2026-09-14 重算批):刀/强治疗已移出格子池入注入池,不摊入单格期望;E[战斗获取] ≈ 1 由注入机制另计;治疗按面值 = 上界读法(实现率折减入敏感性腿,同 F4③)。
- **实现率折减口径**(E_dig′ = 2.70 provisional——B4 预警②④联动):L1 = −45.3 / −5.3;L2 = −91.2 / −51.2——同向更差(完美翻正腿亦被折减吞没)。
- **雾态增量(fog_burden_ratio 口径)**:雾格 = 雾元知识可推理安全格(P(安全)=1)→ 属确定格、两策略同挖、不进残余集;雾的条款⑤效应 = 链不可达雾格的全价 AP 抬高轮数——Δr 增量 = |U| × dig_ap_cost ÷ AP_r(A1 例板 U=4 → 0.5 轮;v3 曲线复算:(29.99 + 4) ÷ 8 = 4.25 → 上取整 5——较无雾基线 Δr=4 **+1 轮,增量不再被同轮吸收**,登记读数变化);雾池档位加成对冲入 R_res 侧(E_fog 读数见护栏 A——本批读数失效待重推);actuals fog_burden_ratio p50/p90 交付后重跑(对账清单 #6)。
- **结构性解读**:残余盲猜区越大(n_s ↑),清图的全池雷险越逼近"踩到全部残余雷"——"是否承担盲猜风险是策略点"(game-concept 设计本意)被本判式定量证实;v3 曲线(d0.25/t0.88)使残余集系统性变大、非完美态被支配加深——与 F4 破线同源(曲线加难侧未同步补偿结算侧奖励/防御杠杆);完美高光与清图支配性互 feed 的设计意图保留(L1 完美双份翻正 +11.3),但非完美态仍负 = 被支配。
- **护栏 A 注记**:与残余池模型无关;登记读数 (11.1 − 7.2) − 1.5 = +2.4 ∈ (0, 3](v1 曲线/旧格子池口径);2026-09-14 重算批方向性复核:E_dig 修正 4.5 + 雾池构成变更(刀移出格子池——现行雾池加权当量 ≈4.9 面值口径)→ 读数 ≈ −1.1 < 0 越下界(雾纯税化风险——链不可达雾格全价 AP 成本超过当量增量);E_fog 现行池构成下的正式重推随 W2 批(C3 收口批三选一落档),本批登记方向性读数、不代裁。
- **护栏 B 注记**:|S|_min = min_safe_count 是 A1 行级 knob,调参时按当期行集重算、禁写死 50;|R₀|_max = 20 系参考带经验值、无登记供给方 → 登记 A1 产出义务 R₀ 规模分布上界(F4 报告 C 扩列,缺口预检 9);DPS 期望严格读数的敌 DPS 参照系 v1 曲线 atk 值(4/4/6)——v3 atk(7/5/9/6/9)+50% 后 DPS 界随之上探,正式重推随 W2 批。
### 综合判断
条款⑤未闭合——挖穿残余池计价下主判式两态为负(L1 仅完美双份翻正,非完美态被支配),实现率折减与多敌语境更差;"推到底"的支配性只在残余集小时自然成立;判据函数角色 = C3/B4 调参约束生成器,AC-40 断言输出与登记约束包一致。C3 已裁约束包②(非支配设计态)+ 计价基元换位 clear_blast;B1 重算批维持裁决②。design 的 F5 节收结论、判据公式、Variables、四态验算表、约束包与两护栏。
**P_perfect 默认值建议与相容性(×2 的论证):**
| 条 | 内容 |
|---|---|
| 建议 | ×2(SettlementTable.p_perfect = 200,provisional,调参所有权 C3;运行时载体域 {100, 200}) |
| ① | 单一线性换算不破坏——乘子作用于 C 当量换算之后、换算 ÷100 已成文(F1 对照表行内显式列),非新增分源换算率(条款①合规) |
| ② | 与条款⑤同向且是现参数下唯一使 L1 翻正的杠杆(+8.0)——完美高光与清图支配性互 feed;非完美态仍负 → C 量级上调约束不因 P_perfect 消解 |
| ③ | 触发谓词 = 板级 flag 记录(零误标 ∧ ≥1 标中),与踩雷正交(盲挖踩雷不破坏 perfect,标错旗才破坏——以"标旗未中"零值行留痕,Core Rule 5.2) |
| ④ | RAP 刷新路径零清图奖励 → 无 perfect farming 环(双份兑付不改此性质——刷新图无兑付点) |
| ⑤ | 与 F0 weaken 修订同向(标中旗价值 ↑ → perfect 可达性 ↑——高光 #2/#3 互 feed) |
| ⑥ | 上界受护栏 B 约束(登记读数 16 ≤ 24 系 v1 曲线 D_ref 口径;C=40/完美 80 越线裁决随 W2——完美加成不得触碰钓鱼线) |
## 问题:完美排雷的"翻倍"是账面乘数还是真实双份交付?
### 广度分析
- 候选 A(账面乘数——明细记 ×2 名义值):实现一行乘法,但玩家实得与账面脱节,高光沦为数字修饰,排除。
- 候选 B(真实双份交付——第二份同身份兑付走既有授予通道):道具类 stock 第二次、buff 类 apply_effect 第二次(满层拒绝照旧),玩家实得两件,采纳。
- 候选 C(任意整数倍乘数):非整数倍数乘数无运行时载体,域收窄为 {100, 200}、域外加载致命。
### 深度分析
高光行 value 记实际有效兑付(首份 + 第二份被接受部分)、禁记名义值——否则"翻倍"在满层/满血等合法例外下变成假账。首份即零兑付 → 高光行不发(完美谓词仍成立,对账入账 = 实际兑付 0);仅第二份被拒(首份落地)→ 高光行照发、value = 首份当量 + "奖励未生效"行一条——降级语义全覆盖。
呈现分工的取舍:事件型高光(完美排雷)发独立高光行——它是一次性事件,需要独立行锚定节拍;属性型强调(标中旗、清图奖励)用行字段标记——它们挂在既有兑付行上,独立行会双倍计数。#3 标中旗的 chord 缺席(MVP 无即时音画反馈)以"当轮兑付 + 明细强调"组合补偿——weaken dur=1 本就当轮生效,节拍缺失是呈现层债务(归 D1/垂直切片),不是兑付层缺陷。
### 综合判断
完美排雷落真实双份交付载体(P_perfect ∈ {100, 200},200 = 双份交付、100 = 仅高光无第二份);高光行记实际有效兑付、零兑付降级;事件型用独立高光行、属性型用行字段标记。design 的「规则 13 实现参照」表与「明细行类型」表只收此结论。
## 问题:伤害A/B 充能与护甲克制怎么结算?(F6 推导)
### 广度分析
- 候选 A(充能吃 attack_up 等 percent 修正):与 B4 F4"刀不吃修正"同族拍板冲突——加法增量分量一律不吃 percent,排除。
- 候选 B(flat 附加分量、逐分量查甲效表 floor 后相加):基础/伤害A/伤害B 三分量各自对甲型读数,对策面清晰(甲B 对策 = 伤害B 充能),采纳。
- 候选 C(跨轮累积充能池):单轮生命周期(轮末清零)是"这轮挖得多 → 这刀重"的即时因果,跨轮存量会稀释归因,排除。
### 深度分析
- **验算(表读值记号,默认矩阵)**:对甲A 敌(bugbear)10 格挖掘轮——A 池 = min(10×1, 8) = 8 → dmg_a = floor(8×1.5) = 12;2 首标 B 池 = 4 → dmg_b = floor(4×0.5) = 2;base = 6(零 attack_up)→ D_hero = 20。对甲B 敌(ogre_chief):dmg_a = floor(8×0.5) = 4、dmg_b = floor(4×1.5) = 6 → D_hero = 16——甲B 对策 = 伤害B 充能(C3 联动网络 #6)。无甲敌(goblin):8 + 4 → D_hero = 18。
- **cap 截断腿**:15 格连锁轮 A 池 = min(15, 8) = 8——溢出 7 格零充能、无"溢出未生效"行(充能非奖励、无兑付语义),截断仅入诊断计数;cap=0 = 不封顶结构位,damage_a_per_cell=0 = 机制关闭合法极端。
- **与乘区关系**:A/B 分量在 percent 池乘区之外(敌→主乘区 F2 不作用于 hero→敌方向;hero_offense 池只乘基础分量);attack_up 只乘基础分量——B4 F4 同族拍板。
- **P2 归因**:A 池来源 = 开格(逐格可归)、B 池来源 = 首次标中旗(与 weaken 同判定批——"标中旗双收益线"归 W12③ 对账清单);明细行 = hero 伤害行分量二元组 {baseline = 基础分量, attach = dmg_a + dmg_b 合计}(A/B 拆分经充能池公开读值可还原,P2 不丢失)。
### 综合判断
伤害A/B 为挖掘期充能、战斗段主角先手攻击一次性消费的 flat 附加分量——池内加算、不吃任何 percent 修正、逐分量查 armor_effectiveness 甲效表后 floor 相加;充能池单轮生命周期(累积 → 消费 → 轮末归零,跨轮零存量);Output Range D_hero ∈ [0, ∞) 整数、零负值分支。归属:机制与结算归 B1(F6 + F3⓪),四字段数值投值归 C3,甲型映射归 B2 EnemyTable。design 的 F6 节收结论、公式与 Variables。
## 开放问题
| 编号 | 悬案 | owner | 时机 |
|---|---|---|---|
| 1 | 事件总线载体:signal vs 回调注册 vs 直连调用;B1 触发机制(事件订阅 vs 相位轮询)与 A2 事件捕获断言面同批落地——AC-6/AC-33 相关 THEN 为纸面契约直至落地(缺口预检 1) | 实现期 ADR(与 A2 OQ2 同一裁决) | Technical Setup |
| 2 | m_w 修订终值共裁:F0 已裁值域 [60, 85]/默认 −65 与归一口径;终值确认 + B3 StatusEffectTable 行表/Tuning Knobs/registry 三处回写执行(缺口预检 3);B3 AC-14 腿 3 非平凡性随批复查 | B4/B1 锚 owner 共裁 + C3 调参 | B1 评审后的接口漂移回写批 |
| 3 | A1 actuals p10 交付后条款③⑤强制重跑:ι 以行 target 代 p10 为乐观代理——重跑 AC-39/40 + 同步 registry 重算值(对账清单 #6);连带 fog_burden_ratio p50/p90 | A1 交付 → B1 重跑 | A1 F4 报告 C 交付 |
| 4 | 连锁规模分布供给方悬空:条款②第二腿(连锁放大边际基准)校准需 c̄(每安全格连锁期望放大)——现无既定供给方;候选 = A1 F4 报告 C 扩列 or A2 遥测(对账清单 #8 附注);供给落定前第二腿以 1:1 零链下界运转 | A1/A2 + B1 共裁 | A1 报告 C 扩列或 A2 telemetry 定稿 |
| 5 | EC5 零合法板玩家侧呈现形态:提示/补偿/回退三形态选型——B1 数据面(非法产物标记上抛)已就绪;B1 域内不做补偿逻辑(候选"确定性回退已知好种子"归实现期 ADR——A1 EC5 登记对侧) | D1 裁决 | D1 GDD |
| 6 | C1/C2 encounter 供给接线:begin_battle 入参直供改真实遭遇上下文 + 跨战斗 HP 持久性(B2 hp_persistence 对侧承接);战斗触发(节点移动碰非奖励点)归 C1(缺口预检 5) | C1/C2 | C1/C2 GDD |
| 7 | 深度高光形态:#3 标中旗高光的二期形态(即时 HUD 反馈动画/音画同步)——MVP 已落数据面标记 + 当轮兑付;旗落格高亮/姿态反馈等表现形态随 art-bible 与战斗表现美术测试定 | D1/B5 | 垂直切片 |
| 8 | 标错惩罚 flag_miss 源路径:候选"敌方伏击 +1"上线时——flag_judged{hit=false} 转化路径 + B3 source_class 新枚举(结构冻结项走 GDD 修订)+ 惩罚重复性裁决(hit=false 无去重的不对称)联动关闭(缺口预检 12) | B1/A2/A3 联合 | A2 OQ1 实测采纳后修订批 |
| 9 | hero atk 激活——已闭合(2026-09-11 起"基础攻击恒存在":HeroTable.atk 域 [1,999]、0 加载拒绝、MVP=6;attack_up 复活、消费面 = 主角战斗段先手攻击);对照表回迁 + AC-36 死行断言改写随重算批兑现 | B4/B1 | 已闭合 |
| 10 | B2 OQ1 两 face 归属:query_attack/ambush_grant_plan 归 B2 供给面 vs B1 编排面——裁决归 B1 则 AC-14/22 相关腿迁移至 B1 冒烟(断言口径不变) | 实现期 ADR | Technical Setup |
| 11 | 零伤害死局遥测锚口径:战斗轮数异常遥测的阈值与埋点(EC 死局组合 B1 无自愈分支——护栏 owner = 实现期 ADR/D2 跨字段校验,B2 OQ9 并案)(缺口预检 11) | C3/playtest | 垂直切片 playtest |
## 缺口预检(验收阻塞与后续义务登记)
| 编号 | 缺口与处置 | 对侧 | 时机 |
|---|---|---|---|
| 1 | 【阻塞级】A2 事件载体 ADR 依赖:经真 A2 事件流驱动 B1 的 THEN 子集为纸面契约直至落地;A2 半真备选(注入面 + A3 真)已登记为过渡载体、断言口径不变 | 实现期 ADR(与 A2 OQ2 同一裁决) | Technical Setup |
| 2 | 【阻塞级】σ 登记轨迹与取号约定:身份依赖腿(双包/刀全灭/清图槽身份/完美板布置)依赖 σ 登记与取号约定(B4 缺口 8 同源);登记后须第二人独立推导复核 | qa / 实现期 ADR | 冒烟框架搭建 + ADR 定名 |
| 3 | m_w 修订回写——已闭合:registry 回执 #1/#2 于 2026-09-10 F0 批落地、2026-09-14 重算批更新腿读数(attack_up 参照回迁口径重跑兑现);B3 AC-14 腿 3 非平凡性复查通过(16×65 = 1040 越域) | B4/B1 共裁 + C3 | 已闭合 |
| 4 | A1 actuals p10 未交付:F4/F5 以行 target 代 p10 乐观代理——交付后强制重跑 AC-39/40 并同步 registry(对账清单 #6);连带 \|M\|/\|S\| 分布与 fog_burden_ratio p50/p90 | A1(交付)→ B1(重跑) | A1 F4 报告 C 交付 |
| 5 | C1/C2 encounter 供给:begin_battle 入参直供为 provisional——C1 定稿后接入真实遭遇上下文与跨战斗 HP 持久性,AC-5/24 的直供构造改为真实供给链 | C1/C2 | C1/C2 GDD |
| 6 | 【阻塞级】D1 呈现义务台账:A2×6/B2×4/B3×4/B4×5/B1×3(高光行强调/完美排雷呈现/EC5 零合法板提示)缺项即 blocking——design 验收标准节 AC 全部以数据面断言、呈现零覆盖 | D1 | D1 GDD 门禁评审 |
| 7 | SettlementTable registry 条目回填——已闭合:settlement_table 条目 2026-09-10 回填、2026-09-14 重算批随 W3 充能规格更新为十二字段口径;AC-41④ 按现行条目断言 | 本 GDD 定稿批 | 已闭合 |
| 8 | B1 扫描域成员清单登记:AC-43 单向扫描的 B2/B3/B4 API 符号清单与 B1 文件集须登记入 D2 AC-9 项目级 CI 扫描配置(B3/B4 先例) | Technical Setup | B1 GDScript 产物落地即登记 |
| 9 | C3 调参对账重跑流程:D_ref/P_pf/m_w 任一调参 → AC-36/39/40 + AC-2–4 夹具登记值连锁重跑;扩表:A1 行参数(mine_density/min_safe_count/ι target)与 B4 奖励权重/power 调参 → 同批重跑 AC-39/40;A1 新增产出义务 = R₀ 规模分布上界(F4 报告 C 扩列——护栏 B 的登记供给方) | C3(调参)+ qa(重制)+ A1(R₀ 产出) | 每次调参 / 报告 C 扩列交付 |
| 10 | A1 桩 → 真 A1 全链路:换图编排 generate 真实集成(含 attempt 重试不重开 scope 语义、非法产物真分布)登记端到端集成冒烟(与 A1×A2 双包含端到端同槽) | qa/A1 | A1 实现落地 |
| 11 | 零伤害死局遥测锚:EC 死局组合 B1 不设自愈分支——战斗轮数异常遥测的口径登记(进 C3/OQ 清单) | C3/playtest | 垂直切片 playtest |
| 12 | flag_miss 源路径预留:标错惩罚上线时补 `flag_judged{hit=false}` → 敌方伏击 +1 源路径 AC(source_class 新枚举走 B3 修订——A2 预告接口漂移) | B1/A2/A3 联合 | 惩罚实测采纳后修订批 |
## 附录 A:审计元数据
### 复核注记(v1.1-lean 头部遗留)
lean 门禁下 systems-designer / qa-lead 已委托起草(F0–F5 + 对账义务清单 / 43 条 AC + 覆盖矩阵);creative-director 与 art-director 未经咨询——生产前人工复核 Player Fantasy 情绪定位与 Visual/Audio 和 art-bible 一致性(§1–4 须在 D1 GDD 前创建)。
### 对账登记义务清单
| 编号 | 登记内容 | 对侧 | 状态 |
|---|---|---|---|
| 1 | registry `status_effect.anchor_warning` 裁决回执:归一口径 = 每结算瞬时当量(总暴露分支关闭——schema 域禁止 + 重定参照路径不采纳);m_w 修订值域 [60, 85]/默认 65;"7 层触地板"预读更正(地板 = 乘数零点 −100 pp,交叉层数 = ⌈100/m_w⌉ = 2);参照对象 = attack_up 当量(registry 回迁口径) | registry / B3 | 已回写(2026-09-10 回执;重算复核更新腿读数) |
| 2 | registry `status_effect.mvp_content.weaken` + B3 GDD 行表/Tuning Knobs:magnitude −25 → 值域 [60, 85]/默认 −65(接口漂移回写);B3 AC-14 腿 3 非平凡性复查回执(16×65 = 1040 越域 ✓);B3 OQ1/OQ6 关闭回执 | registry / B3 | 已回写(2026-09-10) |
| 3 | registry `clause3_supply.direction_precheck` 闭合回执:统一当量重算值双口径登记(边际配对),pp 代理退役为历史记录;破线 → C3 调参约束登记 | registry / C3 | 已回写(2026-09-10)+ 2026-09-14 重算回执(现行值链破线读数) |
| 4 | registry 新条目 `clause5_dominance`:F5 主判式(挖穿残余池计价)+ 未闭合登记与 C3/B4 约束包(C3 已裁②非支配设计态)+ 两护栏结论 + actuals 重跑义务 | registry / C3、B4 | 已回写(2026-09-10)+ 2026-09-14 重算回执(v3 曲线读数) |
| 5 | registry `reward_table`/`reward_config` 注记:C_eff 口径(P_perfect 入账规则——÷100 成文 + 真实双份交付、载体域 {100,200};当量 = power 恒等);attack_up 死行注记已随基础攻击恒存在批退役(对照表现行 = attack_up 活行) | registry / B4 | 已回写(2026-09-10 回执;死行注记随基础攻击复活退役) |
| 6 | registry `board_gen_table.inferability_vs_p_safe` 消费回执:P(安全) 代理公式(残余盲猜端上界式)+ actuals p10 输入接线路径(A1 F4 报告 C) | registry / A1 | 待回写 |
| 7 | D2 SettlementTable schema(B1 回填 owner)+ registry `settlement_table` 条目(十二字段 = 原八字段 + damage_a_per_cell / damage_a_cap / damage_b_per_flag / armor_effectiveness——护甲克制批) | D2 / registry | 已回写(2026-09-10 回填;2026-09-14 随 W3 字段更新) |
| 8 | systems-index 门禁记录:B1 强制检查点三项(条款①②③⑤)裁决落定登记;A3 OQ1(对照表)、B4 OQ5(T_fog_min 推导式——对照表已落定,改推导式与否由 B4 裁)/OQ6(weaken 联动)状态回写。附注(新缺口):第二腿校准所需的连锁规模分布(c̄)无既定供给方——登记 A1 报告 C 扩列或 A2 telemetry 的归属 OQ | systems-index / B3、B4 | 待回写 |
### AC 覆盖矩阵
| 类别 | 映射 |
|---|---|
| Core Rules(16/16) | 1→AC-43(单向扫描)+ AC-33(零随机行为级)· 2→AC-6 · 3→AC-9 · 4→AC-7+AC-2 · 5→AC-9/10/11/12(腿 5 = 标旗未中行)/13 · 6→AC-14 · 7→AC-15/16 · 8→AC-17 · 9→AC-18/19/20 · 10→AC-21/22/23/24/25 · 11→AC-26 · 12→AC-24/27 · 13→AC-35(#2 真实双份)+ AC-12(#3+腿 5)+ AC-36(P_pf 入账)· 14→AC-42(13 类+字段分层)· 15→AC-33/34 · 16→AC-1/2/3/4/32/41 |
| Formulas | F0→AC-41(registry 对账形态)· F1→AC-36 · F2→AC-37+AC-22 腿 3 · F3→AC-38+AC-18/20/22/24 · F4→AC-39 · F5→AC-40 · F6→AC-44 |
| 上游义务 23 条 | B3①→AC-9 · ②→AC-9 · ③→AC-37/22 · ④→AC-26 腿 2 · ⑤→AC-36 · ⑥→AC-26 腿 1 · ⑦→AC-17 腿 1 · ⑧→AC-14 ∥ B2①→AC-21 · ②→AC-9/14 · ③→AC-24/38 · ④→AC-39 · ⑤→AC-18 · ⑥→AC-14 ∥ A2①→AC-6 · ②→AC-10 腿 2 · ③→AC-12 腿 2/3 ∥ B4①→AC-7 · ②→AC-9/10/11 · ③→AC-13 · ④→AC-15/16/18/19/20 · ⑤→AC-31 · ⑥→AC-5/28——23/23 全落位 |
| 强制检查点 5 项 | reload gate→AC-32 · 可回放→AC-33 · new_board 违约→AC-30 · roll_board 恰一次→AC-5/28(scope 计数器观测)· 衰减恰一次→AC-26 |
| SettlementTable 校验 | segment_order→AC-2 · 悬空 effect_id→AC-3 · p_perfect 域→AC-4 · schema 定稿→AC-1/41 |
| EC(26 条) | 末图清图→AC-13/26 腿 2/27/31 · hero 短路→AC-24 · 双死 hero 先判→AC-24 注(结构不可达不构造)· D'=0→AC-22 腿 3 · 溢杀→AC-18 腿 3 · charge 蒸发→AC-23 · 全体 charge→AC-23 腿 2 · L=0→AC-22 腿 1 · 同窗多包→AC-16 · 部分回复→AC-16/19 腿 2 · 刀全灭→AC-20 · 空库存→AC-15 腿 4 · RAP 不足→AC-29 腿 3 · 连环刷图→AC-29 腿 2 · 未刷新→AC-30 · 非法产物→AC-28 腿 2 · 清理被拒→AC-31 腿 2 · 战斗中 reload→AC-32 · 衰减空→AC-26 腿 3 · 清图 buff 满层→AC-13 腿 2(高光降级)· 完美刷新图→AC-35 腿 4 · 标中+误标→AC-35 腿 2+AC-12 腿 5 · 多敌共享 L→AC-25 · 死亡即不动手→AC-18 腿 2 · 零伤害死局→负空间+遥测锚 OOS(C3/playtest)· 结算开始 hp=0→负空间 debug 断言——呈现半边全部 OOS 至 D1/B5(生效条件 = D1 义务台账登记) |
| 无洞声明 | Core Rules 16/16、F1–F6、义务 23/23、检查点 5/5、SettlementTable 校验 3/3 全部映射 AC;EC 除 2 条负空间自守(不可由公开 API 构造)与呈现/playtest OOS 外全部 Given-When-Then 或对账断言承载 |
## 去向映射
| 原文章节/表 | 落点 |
|---|---|
| 头部(状态/版本/承载支柱/一句话) | design 头部;复核注记 → 附录 A |
| 速览表 | design 系统范围(定位/拥有/不拥有/上下游/硬约束拆入负责·不负责清单与规则 1/15) |
| 体验锚点表 + 反向护栏 | design 设计目的(四条承诺);论证 → 问题"结算系统如何兑现三根支柱的体验承诺" |
| 全局流程(战斗开始/七段骨架/出口分发表) | design 核心循环 |
| 核心规则 1/2/3/4/16 | design 编排与触发(编号人话句);静态扫描/行为级举证 → design 验收标准 AC |
| 核心规则 5/6/7/13 + 三批转化表 + 奖励分流表 + 高光兑现节点表 | design 授予与高光;真实双份论证 → 问题"完美排雷的翻倍是账面乘数还是真实双份交付" |
| 核心规则 8/9/10/11/12 | design 合成、道具与战斗 |
| 核心规则 14/15 | design 明细流水协议 |
| 枚举(明细行类型/source_class/highlight) | design 明细流水协议 |
| 术语表 | design 当量换算与条款闭合(读公式所需的定义) |
| F0 结论 | design F0 节;分支表/同分母性/机制同构/schema 禁止/值域依据/红警更正/重算复核/连带后果 → 问题"weaken 锚的归一口径" |
| F1 结论/换算式/Variables/对照表/锚两腿/结构性边界/归口 | design F1 节;候选取舍/锚对照实物论证/Example → 问题"四源效果档位如何放在同一把尺上对照" |
| F2 结论/公式/Variables/三例读法表/归口 | design F2 节;候选取舍/免伤合法性论证/Example → 问题"percent 池怎么合成、地板设在哪、免伤轮合不合法" |
| F3 结论/四分支公式/Variables/归口 | design F3 节;候选取舍/Example/双死不可达论证 → 问题"伤害全序、负值、溢杀与死亡判定边界怎么定" |
| F4 结论/判据公式/Variables/验算表/结论①–④ | design F4 节;换锚注记/双口径/V_safe·V_mine·ι 注记/clause3_supply 对齐 → 问题"条款③挖掘风险不等式在现行值链下成立吗" |
| F5 结论/判据公式/Variables/四态验算表/折减·雾态 bullets/约束包/护栏表/护栏 B 输入登记/P_perfect 结论 | design F5 节;计价候选/显式假设论证/结构性解读/护栏 A·B 注记/P_perfect 建议六条 → 问题"条款⑤推到底清图支配弃图刷新吗" |
| F6 结论/公式/Variables/cap 截断腿/P2 归因 | design F6 节;候选取舍/验算/乘区关系 → 问题"伤害A/B 充能与护甲克制怎么结算" |
| 边界参数总表 | design 调参表(边界参数总表) |
| 显式排除声明(归属表) | design 系统范围(不负责清单括注归属)+ 各 F 节归口行 |
| 对账登记义务清单(8 条) | 活契约摘要 → design 依赖与输出(registry 回写义务随各上游行);全表 → 附录 A |
| 状态表 + 编排不变式 | design 编排与触发 |
| 边界情况表(26 条 EC) | design 边界情况(条件|行为两列,依据内联句尾) |
| 依赖(上游 9 行/下游 5 行/双向核对) | design 依赖与输出 |
| 呈现与 UI 契约(8 条数据面义务) | design 依赖与输出(呈现数据面义务) |
| Tuning Knobs(SettlementTable schema/Knob 表/非 knob/Knob 交互/调参所有权) | design 调参表 |
| 验收标准·测试口径 | design 验收标准(测试口径) |
| 验收标准·AC 清单(AC-1–AC-44) | design 验收标准(AC 清单,编号不变,覆盖列同步改"规则 N"称谓) |
| 验收标准·覆盖矩阵 | 附录 A(审计证据;design AC 表覆盖列已含规则级映射) |
| 验收标准·缺口预检(12 条) | analysis 缺口预检区(编号不变) |
| 开放悬案(OQ 1–11) | analysis 开放问题区(编号不变) |
| 版本历史(7 行) | design 版本历史(全保留 + 追加 v2 迁移行) |