Files
gplan-2/design/registry/entities.yaml
T
2026-09-14 18:18:49 +08:00

578 lines
99 KiB
YAML
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.
# 实体注册表(Entity Registry)
# 跨系统事实的唯一登记处:各 GDD 定稿的命名实体/公式/常量在此登记,
# 后续 GDD 写作时作为"已锁事实"引用——不得默默改值,冲突必须显式提出。
# 维护规则:见 design-system 技能 Phase 5b。value 字段只能由 owner GDD 修订。
entities:
- name: config_db
type: service
owner: design/gdd/d2-data-config.md
attributes:
kind: autoload
role: 数值表单点访问入口(类型化属性)
policy: 禁止绕过(Rule 2,debug 注入根除外);校验失败全构建致命(Rule 6)
validation_channels: 游戏通道 collect_only=false(致命)/ 测试通道 collect_only=true(收集不升级);夹具注入 --data-root=(仅 debug)
referenced_by: [all-systems]
- name: rng_service
type: service
owner: design/gdd/d2-data-config.md
attributes:
kind: autoload
streams: [board_gen, reward_roll, encounter]
stream_names: 当前封闭清单(增流需改代码 + P1 支柱评审;combat_var 已于 2026-09-07 full 评审删除——玩法随机不预置基础设施;**encounter 增流 2026-09-12 用户拍板**——遭遇随机化批 C3 GDD Core Rule 8,scope_event_binding = 每次战斗实例化恰一 scope,挖掘决策域之外 P1 合规)
stream_facade: open_stream(stream) 取号(计数器+1→派生→返回已播种实例);derive_at(stream, scope) 纯函数供测试/预览(不推计数器)
scope_event_binding: board_gen=每次生成新扫雷图(A1);reward_roll=每次 board install(格奖励批 + 清图奖励批)(B4——2026-09-09 接口漂移改写,原"每次奖励结算 roll 批次";B4 Rule 2/AC-1 为契约源);encounter=每次战斗实例化恰一 scope(B1 begin_battle 实例化期、扫雷开始前——unit_count 区间均匀骰,挖掘决策域之外 P1 合规)
unseeded_access: 致命中止
snapshot_contract: 续玩/复盘快照 = master_seed + 各流 scope 计数器(消费方 D3)
referenced_by: [A1, B1, B4, C2, D3]
- name: stream_seed_derivation
type: formula
owner: design/gdd/d2-data-config.md
attributes:
variables: [SALT_s, master_seed, scope]
output_range: "[0, 2^63)"
golden_vectors: 见 d2-data-config.md Formulas-R2 向量表(6 常量:board_gen m=42 scope0-3 · reward_roll m=42 scope0=7422916049646135537 · encounter m=42 scope0=1061841193803499209——2026-09-14 D2 漂移批 encounter 增流补向量)
salt_board_gen: 0xA0761D6478BD642F
salt_reward_roll: 0xE7037ED1A0B428DB
salt_encounter: 0x8EBC6AF09C88C6E3(2026-09-14 encounter 增流——互异奇常数 ≠ 乘数)
multiplier: 0x9E3779B97F4A7C15
impl_spec: wrap64=二补数自然回绕;禁 float 中间量、禁对中间量用 %、禁"主动修复溢出";常量用分段表达式书写;掩码收尾
reproducibility_claim: 同冒险内同流各 scope 无碰撞 + 跨版本恒定(不做跨 master_seed 全局单射声明)
master_seed_int64_min: 致命(abs 恒等回绕→与 0 静默别名)
set_master_seed_precondition: 仅全流计数器全零时受理(3 流——2026-09-14 D2 漂移批口径)
referenced_by: [A1, B1, B4, C2, D3]
- name: difficulty_row_resolution
type: formula
owner: design/gdd/d2-data-config.md
attributes:
rule: (level_index, node_depth) 双维 floor 解析 + base_ceil 命名(请求低于表首向上解析);无 default 行兜底、无外推;越域请求(level<1/depth<0)致命
warning_dedup_key: (table_id, missing_type, L*, D*) 四元组;missing_type ∈ {level_floor, depth_floor, both, base_ceil}
warning_purpose: 开发期异常信号(非审计工具);难度审计=离线曲线导出工具(C3 期交付物)
prerequisite: 每 level 至少 1 行且含 depth-0 锚行(Rule 6 校验)
referenced_by: [A1, C3]
- name: schema_version
type: constant
owner: design/gdd/d2-data-config.md
attributes:
value: 实现期定(MVP=1);全部占位 schema 均携带版本字段
high_version_policy: 拒读(比较逻辑 owner=D3)
referenced_by: [D3]
- name: action_economy
type: constant_set
owner: design/gdd/a3-action-economy.md
attributes:
table: ActionEconomyTable(D2 承载,单行全局;A3 为回填 owner;2026-09-07 三次回填(RAP 结构修订)——四字段删除 + rap_refresh_cost 新增,见 A3 Schema 定稿节)
ap_per_round: 8(原型 v2 定稿,12 点已否决;双重身份:节奏 knob 兼停手 RAP 转存规模)
dig_ap_cost: 1(连锁展开免费,计入清图进度)
flag_place_ap_cost: 1(旗无实物资源/无数量上限——2026-09-07 用户修订,稀缺性由 AP 承载;限小人 8 向相邻)
flag_pull_ap_cost: 1(移除棋盘标记、无返还物——OQ2 待原型补丁复核,knob 落点)
rap_refresh_cost: 8(RAP 刷新门槛;默认 = ap_per_round,满停一轮 = 恰好一刷基线节拍)
move_ap_cost: 0(冻结:P4 探索氛围承载,非经济杠杆)
chain_ap_cost: 0(冻结:v2 定稿)
rap_rules: RAP = 停手剩余 AP 1:1 转存(结构,非 knob);战斗域生命周期(battle_over 清零,跨轮跨图保留);来源唯一(停手)、支出唯一(刷新);刷新决策主体 = 玩家发起、挖掘期(Active 相位)当场换图——D1 经组合根/B1 refresh_board 编排调用(2026-09-12 D4 修订:原"结算编排期 Waiting 代理调用"退役);每轮上限 2 次(refresh_cap_per_round 结构位默认 2——D1 提案采纳,RoundStart 重置;原"同一 Waiting 相位多次刷新合法/无结构上限"作废);旧板旗随旧板作废(零兑付、旗 AP 不返还——A2 EC11 承载);挖掘期当场刷新无结算发生(原"敌方时间税"自惩失效——A3 OQ3 阈值联动复核);cleared 轮恒 new_board、stopped/ap_exhausted 轮恒 same_board(B1 回发违约 fail-fast 不变);刷新图不产生清图奖励;无战斗收益——原 ×2/×1 折算与 stop/clear_multiplier 已作废(2026-09-07 用户拍板)
flag_rules: 旗 = A2 棋盘状态单态(原口袋旗双态作废);随图存续,清图/刷新消失;标中旗 = 怪物 debuff(三向效果定稿),兑付一次性、资格以雷格实例为键(每雷本次战斗至多兑付一次;放置实例仅为当轮结算载体;拔旗重插不恢复已消费资格——2026-09-07 三轮评审改定,OQ5/F1 条款 2)
round_end_carrier: 双发射源(2026-09-07 修订)——棋盘路径(ap_exhausted/cleared)由 A2 外发(systems-index 原裁决不变),停手路径(stopped)由 A3 直发;payload 同构 (path_tag, continuation_hint)
arbitration_priority: cleared > stopped > ap_exhausted(同帧/同批次结束路径总仲裁;stop-first 批次腿 deferral 至 A2 集成测试,义务清单见 systems-index 门禁记录)
downstream_contract: A3 F1 五条款(① 效果当量对照单一线性换算 · ② 标中旗锚严格 > 最低档 + 连锁放大边际基准 + 总吞吐对账 · ③ 挖掘风险不等式 P(安全)×buff > P(雷)×敌方增益,B1 单一闭合 owner · ④ 清图奖励 > 0 且 B4 差异化插槽(图类型战斗域恒定) · ⑤ 清图 vs 弃图刷新支配性,B1 闭合强制检查点)——2026-09-07 三轮评审定稿
cross_field_validation: 任一动作成本(dig/flag_place/flag_pull)≤ ap_per_round——ActionEconomyTable schema validate() 跨字段类别,违规加载期致命(2026-09-07 三轮评审增补;条件性夹具登记 D2 校验双通道)
referenced_by: [A1, A2, A4, B1, B3, B4, D1, D5]
- name: variation_table
type: schema_data
owner: design/gdd/a4-terrain-variation.md
attributes:
table: VariationTable(D2 承载,键 = variant_id;A4 回填 owner,2026-09-08 定稿回填)
fields: variant_id(String 主键唯一)/ display_name / unlock_level(int [1,999],knob)/ scope(enum region|global,global 预留 C3)/ info_mask(enum none|hide_numbers)/ cell_constraint(enum any|safe_nonzero)/ biome_tag(StringList,∅=通配,knob)/ counter_item_ids(StringList,A5 预留,非 knob——2026-09-08 re-review 修正 ✓ 误标)
mvp_content: 恰含 fog 一行(unlock_level=2【knob 活值,事实以表为准;调参须回写本条】 · info_mask=hide_numbers · cell_constraint=safe_nonzero · biome_tag=∅【knob 活值,同上】 · counter_item_ids=[probe_dust]【A5 定稿回填登记——D2 表值与悬空校验激活随 D2/A5 修订批同批落地;回填前为 ∅】);岩浆/冰冻无 MVP 行(垂直切片随关卡解锁建行,建行批随批配 ≥1 反制道具——a5_aux_items 框架内容契约)
load_bearing_rule: 生成期布置约束——雾区只能布置在非 0 安全格(区内无雷、无 0 格,A1 生成期强制);"雾区无雷"为玩家可见知识(D5 教学义务);结构推论(2026-09-08 full 评审入文,同日 re-review 钉死度量):雾区厚度≤2【≡任意 3×3 窗口非全雾,非直线行程读法】、雾面积占比 f≤8d 必要上界——A1 参数域硬边界(A1 验收清单 15 项之⑫)
zero_special_casing: 连锁/数字计数/清图/旗/价目/结算零特判——既有系统行为不感知变异状态(A2 执行逻辑无变异分支;A4 Rule 3 的推论)
rule4_exemption: 定义表非进度成长表,键 = variant_id,进度语义承载于 unlock_level 列(D2 Rule 4 豁免,schema 注释承载)
cross_field_validation: info_mask=hide_numbers ⇒ cell_constraint=safe_nonzero——VariationTable schema validate() 跨字段类别,违规加载期致命(2026-09-08 re-review 增;防未来 hide_numbers+any 行静默击穿 EC4 连锁停止;A4 夹具 variation_mask_constraint 承载)
dangling_ref_policy: counter_item_ids 为 D2 首个引用型字段——**首引已由 A5 定稿(probe_dust,2026-09-14 A5 GDD)**:悬空校验激活 + 表值回填同批(D2 修订批;条件性夹具 a5_dangling_counter 登记 A5 GDD AC-13——A4 测试口径"首个道具 id 回填时补校验"条款即 A5-1 义务,闭环)
fog_ap_note: (2026-09-08 full 评审改两态;同日 re-review 改增量构成)雾不改 AP 价目但改清图预算构成,雾格 AP 成本两态——链可达雾格(邻非雾 0 格)免费链开、链不可达雾格全价 dig_ap_cost;雾致预算增量 = 链不可达雾格数 × dig_ap_cost,计入清图总预算需求参与 A1 BoardGenTable 设计期核算(原"≤ 轮数上限 × ap_per_round"不等式作废——"轮数上限"无定义;lean 版"全价结算"表述作废);A3 F1 条款 5 对账 = 三腿入账非消解:雷险腿消解(雾区无雷无 50/50)+ 信息腿双向净效应(雾边寂静减项 × 雾边推理锚增项,禁单向补偿)+ AP 腿(链不可达全价抬高清图成本)——B1 条款 5 强制检查点输入,雾板/无雾板两态验算 + 两条方向性护栏(雾板净当量优势带上界·防福利 / 防钓鱼·对账 A3 OQ6)
pricing_constraints: B4 三条定价硬约束(2026-09-08 re-review 定稿三条)——① 雾内奖励档位下界 ≥ 最低档安全格 buff 当量(反淹没下界,per-AP 平价归 B1/B4 对账)② 清图奖励锚随雾成本负担上浮(链不可达同分母,防面积/成本分母脱钩)③ 雾板净当量优势带上界(防福利)——B4 GDD 验收项
referenced_by: [A1, A2, A5, B1, B4, C3, D1, D5]
- name: variant_pool_gate
type: formula
owner: design/gdd/a4-terrain-variation.md
attributes:
variables: [unlock_level, level_index, biome_tag, board_biome]
rule: pool = {v ∈ VariationTable | unlock_level ≤ level_index ∧ (biome_tag=∅ ∨ biome_tag ∩ board_biome ≠ ∅)};直接整数比较(无 D2 R1 floor);∅ = 通配语义
output_range: pool 集合(MVP ≤1);空池合法——A1 静默布置普通图,不报错
board_biome_type: StringSet(值域与来源归 A1 BoardGenTable biome 字段;非空为 F1 输入前提——域校验登记 A1 验收⑮,fail-fast 闭合)
downstream: A1 布置候选池门控(A1 验收清单 15 项之首——2026-09-08 full 评审由 11 项扩容,清单已登记 systems-index 门禁记录);多变异选取须消费 board_gen 流(回放确定性)
referenced_by: [A1]
- name: status_effect
type: schema_data
owner: design/gdd/b3-status-effect.md
attributes:
table: StatusEffectTable(D2 承载,键 = effect_id;B3 回填 owner,2026-09-08 定稿回填)
fields:
effect_id: String 主键唯一
display_name: String
target_side: enum {hero, enemy}
magnitude: int——percent ∈ [-100,100] ∧ ≠0 | flat ≥ 1(跨字段校验)
unit: enum {percent, flat}
duration_settlements: int [1,99]
stack_policy: enum {stack, refresh, independent}
max_stack: int [1,16](仅 stack 消费——refresh/independent 行内容约定恒 1,非校验项)
mvp_content:
attack_up: { display_name: 增伤, target_side: hero, magnitude: "+50 percent", duration_settlements: 1, max_stack: 2, stack_policy: stack, source_class: safe_cell } # 2026-09-11 两级奖励批 D=2→1(当次结算语义)
defense_up: { display_name: 减伤, target_side: hero, magnitude: "-30 percent", duration_settlements: 1, max_stack: 2, stack_policy: stack, source_class: safe_cell } # 2026-09-11 两级奖励批 D=2→1;2026-09-13 减伤墙批 −50→−30(叠满两层 −60 帽——C3 投值,B3/registry 2026-09-14 接口漂移批回写落地)
ambush: { display_name: 伏击(敌方增益), target_side: enemy, magnitude: "+3 flat", duration_settlements: 1, max_stack: 16, stack_policy: stack, source_class: mine_hit }
weaken: { display_name: 削弱(标中旗 debuff), target_side: enemy, magnitude: "-65 percent", duration_settlements: 1, max_stack: 16, stack_policy: stack, source_class: flag_hit }
value_status: 四行值全部 provisional,验收锚——weaken→A3 F1 条款 2(B4/B1)· ambush 量纲→B2(条款 3,**量纲已定稿见 ambush_unit_definition**)· 对照表→B1(条款 1)· **weaken 已按 B1 F0 裁决修订 −25→−65(2026-09-10,值域 [60,85]、终值共裁 B1 OQ2——见 anchor_warning 回执)**
ambush_unit_definition: **量纲已定稿(2026-09-09 B2 GDD Rule 6/F2——registry OQ2 关闭条件兑现)**:+3 flat = 每层伏击为每次攻击类行为(attack/heavy)附加 3 点主角 HP 伤害(后置加法、不进倍乘);charge 拍零兑付(空拍蒸发);值仍 provisional(锚验收归 B4/B1——A3 F1 条款 3;B2 供给 cap 表值与单结算自然边界口径见 clause3_supply 条目)
anchor_warning: weaken 行 vs A3 F1 条款 2 锚两独立线性代理同向预检不过(百分点·结算暴露 25 vs 100;原型战斗量级 ≈1 vs ≈4 当量)——B1 对照验收优先裁决,登记 B1 强制检查点输入。**修复空间不对称(2026-09-09 增补)**:每结算瞬时当量归一 m_w≥51 可行(F2 越域界随移 AP 界 −408%/表界 −816%);每 AP 总暴露归一 m_w>100 被 percent ∈ [-100,100] 域禁止(该分支不可行)——OQ1 前置步骤:B1 先钉死归一口径,口径落定前禁止数值修订;落总暴露则现实解 = B4 重定最低档参照。**参照对象迁移注记(2026-09-09 B4 评审;2026-09-11 回迁)**:最低档安全格 buff 当量的参照对象曾迁 defense_up 当量(attack_up 时为死行——B4 F4 迁移)——**2026-09-11 用户裁决"基础攻击恒存在"(HeroTable.atk 域 [1,999]、0 加载拒绝、MVP=6)后 attack_up 复活,参照对象回迁 attack_up 当量**(消费面 = 主角战斗段先手攻击——B1 GDD 同批;defense_up 迁移退役为历史记录,attack_up 入池时 tier_min_buff 重算);本条与 clause3_supply.direction_precheck 的 25 vs 100 预检算术系 attack_up 口径历史登记——defense_up |−50|×dur2 与 attack_up 数值巧合全等(100pp),今日结论不变;**迁移后预检未按新参照重跑**的义务已于 2026-09-14 B1 重算批兑现(F0/F1 按 attack_up 当量重跑 + F1 锚对照实物改 attack_up 行——本迁移注记关闭)。**F0 裁决回执(2026-09-10 B1 GDD——红警关闭)**:归一口径 = **每结算瞬时当量**(总暴露分支被 percent schema 域禁止 + 与"单结算自然边界"已锁事实冲突,排除);m_w 修订 −25 → **值域 [60,85]/默认 −65**(mvp_content.weaken 已同批改写——锚两腿 @D_ref=12:7.8 > 6.0 严格大于 ✓ / 7.8 ≥ E_dig 4.5 ✓〔E_dig 读数 2026-09-14 B1 重算批按 C3 v3 曲线重推——原 7.2 随口径退役〕);地板 = 乘数零点 −100pp、交叉层数 = ⌈100/m_w⌉ = 2(原"7 层触地板"预读按 −400% 合成带估读,更正);defense_up 参照保持(总暴露分支的"重定参照"现实解未采纳);终值 = B4/B1 共裁(B1 OQ2);B3 GDD 正文不改以本条为准(收编先例)
rule4_exemption: 定义表非进度成长表,键 = effect_id(D2 Rule 4 豁免,schema 注释承载)
single_enemy_assumption: **回验结果 = 不成立——B2 定多敌(用户 2026-09-09 拍板;同日 B2 GDD 兑现 B3 预授权接口漂移条款)**:MVP 战斗 = 1–3 个同敌种敌单位(EnemyTable.unit_count);效果 side-wide 语义改"全体存活敌单位"(层数 = side 共享池,**B3 现接口零变更兼容**);target_ref(单体寻址)= 扩展位义务——首个单体效果上线时 B3 补列(随批:B1 归集语义/D1 呈现裁决);B3 GDD 正文不改,以本条为准(A3 OQ5 收编先例)
mechanics: 战斗域统一状态容器(三向效果同构实例)· 单一时限量纲 remaining_settlements(先兑付后衰减,每轮结算 −1,dur=1=一次性;跨轮跨图延续、battle_over 全清不跨战斗)· 按行叠层(stack 授予不触碰 R;refresh 重置取实例授予时快照 D;合并在授予时、结算作用顺序归 B1——两序分离)· 满层授予拒绝原子(false+容器零写)· 合成 = L×m 加算、percent 越域不 clamp(地板/换算归 B1 SettlementTable)· 授予集中在 B1 结算编排(A2/B4 零直接接口)· 零随机(无 RNG 流消费)· 零信号外发(纯被动容器)
api: notify_battle_start / apply_effect(effect_id, source) -> bool / query_active(side) -> Array(插入序;六归因字段+display_name+授予时快照投影)/ decay_round() -> int / notify_battle_end() -> bool——B1 消费契约,provisional 登记
b1_obligations: 八项(B1 GDD 门禁评审缺项即 blocking)——① 同轮多授予按确定次序调用 ② 事实→授予恰一次转化(B3 不去重)③ percent→乘数换算方向与合成值地板成文 ④ 最后一轮 decay 判定 ⑤ F1 条款 1 效果档位对照表以 B3 实例为对照实物 ⑥ 每结算编排恰一次 decay_round(2026-09-09 增——decay 基数=1 先决条件)⑦ 结算明细按授予流水逐条标注来源(合并坍缩归因补偿,2026-09-09 增)⑧ “溢出未生效”行进结算明细协议(Rule 5 后半承载,2026-09-09 增)。**履行回执(2026-09-10)**:八项已全数落位 B1 GDD(Core Rules 3/5/8/10/11 + Formulas F0–F2——落位映射 = b1 AC 覆盖矩阵"上游义务 23 条"行;③的 AP/表界数值随 F0 修订更新为 −520%/−1040%)
presentation_obligations: (2026-09-09 登记 systems-index,缺项即 blocking)D1×4——HUD 常显+EC12 空态规格定稿 / effect_id→icon 映射键契约(形状+色相双通道)/ 有利有害极性呈现映射(数据源 = B1 SettlementTable 效果语义,非 magnitude 符号)/ 全清状态栏去留;B5×2——溢出行呈现 / origin_cell→玩家可读形态(缩略图/格子高亮);D5——“同轮拿满优于跨轮叠”教学(OQ7 配套);B4——奖励身份预读(创意风险 #1 切面)
ownership_note: A3 OQ5“标中旗 debuff 档位归 B4 表设计”经用户 2026-09-08 拍板收编——四行初值定稿权归 B3,锚验收权仍归 B4/B1,修订走接口漂移回写本条
dangling_ref_policy: effect_id 悬空校验**已激活**(2026-09-09 B4 RewardTable 首个 effect_id 引用行〔defense_up〕回填——dangling_ref_policy"首个引用字段 owner 补"条款兑现;条件性夹具 = B4 b4_dangling_effect〔AC-17〕)
referenced_by: [B1, B4, B2, D1, D5, B5]
- name: board_gen_table
type: schema_data
owner: design/gdd/a1-board-generation.md
attributes:
table: BoardGenTable(D2 承载,键 (level_index, node_depth) + depth-0 锚行——首个进度键表;A1 回填 owner,2026-09-09 定稿回填;第三轴登记约定〔B7 修订〕——Boss 图 = 各 level Dmax 行、elite_/boss_ 字段命名空间预留、C1/C3 定稿强制重审 OQ6,改键退路 = D2 Rule 4 接口漂移通道)
fields: board_width/board_height(int [8,64],knob)/ mine_density(float (0,0.5],knob——雷量参数形态=密度浮点,尺寸解耦;布雷数下限 round(d×(W×H−9)) ≥ 1,R3 修订)/ inferability_target(float **[0.85,1]**,knob——P1 门槛承重参数+绝对锚,B1 修订收窄)/ solver_rules(enum single|single_subset,**冻结 single_subset**——推理定义域非调参)/ min_safe_count(int [1,999],knob——A3 EC5 退化板对冲)/ max_gen_attempts(int [1,32],knob)/ fog_region_count(int [0,32],knob)/ fog_target_ratio(float [0,1),knob——**≤ min(8d, 0.25) 绝对上限,B1 修订**)/ board_biome(StringSet **非空**,域校验致命——A4⑮;词表 owner 未定稿前只校验非空)+ elite_/boss_ 前缀字段命名空间预留(非 knob,B7——语义归 C1/C3)
cross_field_validation: fog_domain_ok(F2 规范形——count=0⇔ratio=0 或 0<ratio≤min(8×density, **0.25 雾占比绝对上限,B1 修订**)∧<1,加载期致命)+ min_safe_feasible(F2b——W×H−round(density×(W×H−9))≥min_safe_count,sound 保守〔B3 修订补论证:N=round(d×(W×H−9)) 先定数+先布后删只减不增〕,计数可行≠连通可行)+ 布雷数下限(round(d×(W×H−9)) ≥ 1,R3)+ cost_feasible(F2c——max_gen_attempts×W×H ≤ 16384 provisional,正式值归 OQ2 ADR;运行期禁墙钟时间逃生,B8)——A4⑩ 参数域化
mechanics: 五阶段确定性管线(参数解析→布雷→变异布置→生成-验证循环→产出上报;顺序冻结,先雷后雾;**布雷取整与落位钉死,B3 修订——N=round(d×(W×H−9)) 先定数,先布后删〔环内雷移除、只减不增、无迭代〕**)· inferability = **免赌开据占比**(F1:初始展开∪连锁∪推导开据三通道;合法信息源穷举{数字约束(a),雾元知识(b)}——新增信息源=GDD 修订;次序无关不变式;metric_version=1 防实现漂移)· **达标须两项判据同时满足(B1 修订):inferability 与 inferability_core(剔除雾格后的可推理率 |R∞∖F|÷max(1,|S∖F|))各 ≥ target——防止"雾区无雷"知识单独撑线**· clearable 合法性闸(清图可达性与质量度量两闸分离)· 验收算子三分支(达标即出 k*/接受最优+强告警 k**/**零合法→接受最不坏+非法产物标记 k***——用户 2026-09-09 定稿,玩家永不卡死,F4 断言 A′ 批量守红线;EC5 玩家侧体验债已登记 B1/D1 域**)· 重试不重开 scope(attempt 边界=生成函数完整返回——D3 快照切点契约)· 生成期表值单次读取(防热重载撕裂 attempt)
metrics: 生成期指标集八项 = 实际 inferability(metric_version)/inferability_core(剔除雾格后的可推理率,B1)/实际雾占比(=|F|÷(W×H))/实际雷数与实际 |S|(B3——先布后删漂移观测,|M|≤N)/fog_burden_ratio/Δbudget_fog/attempts_used/降级标记(shortfall+非法产物);fog_burden_ratio=|U|÷max(1,|S∖Chain₀|)(付费格分母)——**B1 条款 5 对账精确口径**
batch_assertions: F4 调参期(N=256/行默认,σ(L,D)=10^9+2^20·L+2^12·D——R4 修订防碰撞,版本库清单)——断言 A 可推理率**严格零**(B1 修订:inferability 与 core 两项判据对照)/A″ target ≥ 0.85 绝对下限(B1)/A′ 非法产物零容忍/**B 达成区数=count 板占比 ≥ 0.95(B6 修订收紧——承载 A4⑭ 出现率下限+降级率上限两件套)**/B′ 无雾行零雾(泄漏=bug)/E 难度方向 advisory(R2,monotone_in_depth 标记字段);报告 C 按行 p10/p50/p90
inferability_vs_p_safe: "inferability 是盘面级免赌占比(生成侧);P(安全) 是单格认知概率(决策侧、经济口径)——免赌集内 P(安全)≡1(含雾格),风险收缩到残余集(占比 ≤1−inferability);inferability 是 P(安全) 的生成端结构性上界代理之占比形式,非同义词。B1 条款 3 对账输入 = **actuals 分布 p10(F4 报告 C)而非 target 参数**"。**B1 消费回执(2026-09-10)**:条款③闭合消费本条口径——P(安全) 代理式 = 残余盲猜端上界 P(雷) = |M|÷(|M|+(1−ι)×|S|)(ι = actuals p10,未交付前行 target 代乐观代理);对账重跑义务 = A1 报告 C 交付后强制(B1 AC-39)"
mvp_reference_rows: L1·D0(10×10/d0.10/t0.95/min_safe50/att16/无雾)与 L2·D0(12×12/d0.12/t0.92/min_safe60/att16/雾1区0.10)参考行——**全部 provisional,仅 schema 自洽性证明,曲线数值归 C3 调参所有权**
a4_acceptance_mapping: A4×15 验收清单逐项落位表在 a1 GDD Dependencies 节(A1 门禁评审逐项核对,缺项即 blocking)
a2_dual_containment: 双包含回验登记 A2 GDD——① A2 实际展开域 ⊆ A1 排除域(既有)② A1 求解器初始态 ⊆ A2 实际初始展开域(F1 注记④度量保真对偶)
golden_vectors: 推理器黄金图回归向量协议(五类手工核验小板,整数对比对禁浮点容差,逐格信息源推导记录入版本库;含雾板另登记 (|R∞∖F|,|S∖F|) core 整数对——B1,由既有坐标规格派生不重制;换 solver_rules/信息源/metric_version = GDD 修订 + 向量重制)——D2 R2 先例同源
referenced_by: [A2, B1, B4, C3, D3]
- name: a2_event_surface
type: schema_data
owner: design/gdd/a2-minesweeper-rules.md
attributes:
kind: 三事件回边契约(发射面封闭——TD-SYSTEM-BOUNDARY 回边裁决的 A2 侧定稿;增删事件 = 接口漂移修订)
cell_revealed: "{cell, kind ∈ {safe, mine}, digit【仅 kind=safe 携带、恒真透传含雾格——呈现隐藏归 D1,判定源 = variant_ids,A2×4③】, variant_ids, channel ∈ {initial, chain, dig}, reward_eligible【initial 恒 false / chain·dig ∧ safe 恒 true(含链开雾格)/ mine 恒 false】}"
flag_judged: "{cell, hit = [cell ∈ M]}×N——轮末统一判定批(基线 = 轮次结束事务开始时旗位,被拔不判;行主序枚举);A2 诚实重复上报、兑付去重归 B1/B4(资格以雷格实例为键——action_economy.flag_rules/A3 OQ5)"
round_end: "{path_tag ∈ {ap_exhausted, cleared}, continuation_hint}——棋盘路径由 A2 外发、核心字段逐字段取自 A3.last_round_end(读取权 = 接口契约),与 A3 stopped 路径 payload 同构;stopped 由 A3 直发、A2 禁双发(action_economy.round_end_carrier 双发射源)"
event_order: 同一轮次结束事务内 flag_judged ×N 先于 round_end(全路径统一——stop 腿 A2 先发旗判定再委托 request_stop,停手不改旗故基线等价);B1 结算触发 = Waiting 相位编排点、不依赖事件到达序(B1×3 强制项之一,systems-index A2 门禁块)
zero_random: A2 零 RNG 流消费——同板同意图序列 ⇒ 事件流逐位确定(AC-19);cell_revealed 发射序 = 规范序(初始/连锁 = 触发格 BFS、8 邻行主序)
api_surface: install_board / settle_batch(D1 唯一提交入口;stop 经此委托 A3.request_stop——D1×6① 强制项:不直调 A3,A3 Rule 9 调用方细化、A3 GDD 不改以本条为准)/ try_dig·try_flag_place·try_flag_pull·try_move / compute_move_path(D1 路径预览数据源)/ retire_board;ActionOutcome{accepted, executed|voided|rejected, reject_reason ∈ {board_face, resource_face, phase, board_invalid}, sub_reason【仅 board_face 携带:not_adjacent/target_revealed/target_concealed/flag_present/flag_absent/no_path/out_of_catalog——2026-09-09 评审 UX-1 定稿,玩家可辨呈现数据源;批后修改 = 接口漂移】}——provisional,事件载体归实现期 ADR(A2 OQ2)
referenced_by: [B1, B4, D1, D4, D5]
- name: a2_initial_expansion
type: formula
owner: design/gdd/a2-minesweeper-rules.md
attributes:
rule: O₀ = R₀ = 出生 3×3 ∪ 0 格 flood 闭包(与 A1 F1 求解器初始态同算子同值——运行期镜像,显式不含外扩 1 环);执行时点 = install_board 事务内一次(板级一次跨轮不重放)
properties: 免费(零 try_spend)· 计入清图进度 · 无奖励(channel=initial、reward_eligible=false——game-concept 定稿;B1×3 强制项:不入奖励库)· 永不触雷(R₀ ∩ M = ∅ 为 A2 侧定理)触雾(A1 排除域 + install 不变式②)
dual_containment_resolution: 双包含两臂在 A2 定稿下**构造性成立**——臂① R₀ ⊆ A1 排除域(子项关系)· 臂② A1 求解器初始态 = R₀(**恰等**)⇒ A1 回退口径(出生 3×3 最小态)不触发、度量保真零降级(board_gen_table.a2_dual_containment 的兑现回执)
install_invariants: 四条结构不变式 fail-fast(B3 无雷 / B3∪R₀ 无变异 / 数字恒真 / **R₀ ≠ S 清图退化板拒绝**——非 A1 clearable 闸复验,A2 状态机良构性守卫);诊断类别封闭枚举 {inv1_mine_in_spawn, inv2a_variant_in_spawn, inv2b_variant_in_r0, inv3_digit_invariant, inv4_r0_equals_s}(2026-09-09 评审补)
degenerate_gap: **A1 修订义务(2026-09-09 登记,systems-index A2 门禁块)**——反例 B(8×8 八雷先布后删幸存距离-2 雷 → 最终板全 0 格连通 → R₀=S 开局免费清图)与 N=1 行 100% 退化,证明 A1 布雷数下限必要不充分、F4 断言 A(inferability=1.0)零拦截:义务 = A1 F5 legality 增 R₀≠S(违例 = 尝试作废重试)+ F4 断言严格零覆盖 + Rule 4 排除域基准措辞钉死"以最终产物板计";A2 侧不变式④为纵深防御
drift_red_lines: 实现期红线——0 格判定读真实数字禁显示值 · 初始展开禁加外扩环/禁只开 3×3 · clears_map ≡ cleared 单一实现禁第二套 · chain_size 不含首格、链不开雷、含链开雾格、**链不越旗**(运行期传播集 = N₈∩S∖G——2026-09-09 评审 GD-1 定稿,G=∅ 域与 A1 算子①逐字同构、双包含不受影响)· A1 R₀/算子修订 = metric_version 跳变 + 本条同步修订
referenced_by: [A1, B1, C3]
- name: terminology
type: glossary
owner: design/gdd/a2-minesweeper-rules.md(各词条以首次定义 GDD 为 owner)
attributes:
purpose: CLAUDE.md 用语纪律(2026-09-09)的登记通道——项目内生术语的白话定义集中地,GDD 首次出现处须附同款定义
terms:
双包含回验: A1 与 A2 互检两条包含关系——臂① A2 实际初始展开域 ⊆ A1 生成期排除域(开局不触雷不触变异);臂② A1 求解器初始可见态 ⊆ A2 实际初始展开域(A1 度量不吃亏)
恰等: 两集合逐格相等(不多开不少开)
零特判: 代码不为变异写任何 if 分支——变异只是随格只读标记透传,行为差异由生成端约束保证
规范序: 事件发射的固定顺序(触发格 BFS、8 邻行主序),同输入必得同顺序
语义序仲裁: 批次内不按提交顺序、按"清图挖 > 停手 > 其余"固定类别顺序结算
双发射源: round_end 有两个合法发射者——棋盘路径由 A2 发、停手路径由 A3 直发,payload 同构
三源拒绝: 拒绝原因三互异来源——棋盘面 board_face / 资源面 resource_face(AP 不足)/ 相位 phase(非 Active)
单意图批: settle_batch 只装一个意图 ≡ 直接调 try_dig 等便捷 API,行为逐项相同
作废(voided): 轮次结束后未获执行的批次意图——零棋盘效果、零扣费、零事件,区别于非法拒绝
连锁不越旗: 连锁展开不经过插旗格(旗格不入链、不作传播源——2026-09-09 评审 GD-1 定稿,经典 flood 惯例)
行为环: 敌种出招的固定顺序表(如攻击→蓄力→重击),按结算轮转、环尾回环首——零随机、可学习(B2 首次定义)
拍: 行为环里的一格行动("这一拍是重击")——B2 首次定义
同步轮转: 同种敌人永远处于同一拍,任何死亡时序都不会让幸存者乱拍(B2 F1 定理)
伏击池: 敌方侧共享的伏击层数——本轮踩几颗雷就几层,轮末清零(side-wide 语义,B2 首次定义)
溢出(伏击): 单轮踩雷超过上限(cap)的部分——转为"溢出未生效"明细行可见、不生效(B2 首次定义)
死亡即不动手: 轮到某敌人行动时它已死 → 这一下不打、招式轮转停格(2026-09-09 用户拍板,B2 首次定义)
资格格: 开出时 reward_eligible=true 的格——A2 事件面上 chain/dig 通道的安全格(含链开雾格);install 期可精确枚举为 S∖R₀(B4 首次定义,F1 消费)
刀: 伤害道具(damage_item)的项目行话,全文同义(B4 Rule 5 首次定义);"烧刀/烧包" = 把无法生效的道具白白消耗掉(选定即承诺的成本,B4 E10/E12 语境)
批尾: 同一批取号中最后消费的一个号——B4 清图奖励身份 = install 批的批尾取号(B4 F1 首次定义)
死行: 被当前内容态判定为零消费的表行——加载不致命、不入参考池,复活走 GDD 修订连锁(B4 F4 首次定义;历史首例 attack_up〔hero atk=0 时代〕已于 2026-09-11 随"基础攻击恒存在"用户裁决复活,当前内容态暂无在册死行)
档位序检查: 雾池最低活档 ≥ 最低活 buff 档的序数比较(原"档位序代理"更名,B4 AC-19)——tier 与当量零耦合,仅序数健全性、非当量保证(B4 F2 注记)
预推进: 测试中为到达 scope=σ 而先行丢弃式消费 σ 个 scope 的构造——RngService 全新实例首个 open_stream 恒为 scope 0,derive_at 不推计数器(B4 AC 前言首次定义)
完美排雷(perfect_sweep): 板级零误标(flag_judged hit=false=0)∧ ≥1 标中 → 清图奖励当量 ×P_perfect(默认 ×2)——与踩雷正交(盲挖踩雷不破坏、标错才破坏)、全有或全无谓词无部分档、板级计数随 install 重置(B1 Core Rule 13 首次定义)
当量: 统一价值单位,1 当量 = 1 点主角 HP 的期望净变化——四源收益单一线性换算的通货(B1 F1 首次定义)
乘区: 伤害公式里相乘的修正段(本作两段:hero 减伤池 × 敌方削弱池——池内加算、clamp [−100,+100]pp、池间乘算、floor 取整)(B1 F2 首次定义)
溢杀: 一刀超出目标剩余 HP 的部分——丢弃、不转移、无负 hp 中间态(B1 F3 首次定义)
免伤轮: 主角该结算承伤为 0 的结算——percent 池地板(−100pp → 乘数 0)的自然结果;现行值链可达路径 = weaken 饱和(敌侧单结算零输出),defense_up 叠满 = 0.4×(−30×2 帽)不再单侧触地板(B1 F2 首次定义;原"defense_up 顶点 −100% 恰在地板边界"例随减伤墙批退役——2026-09-14 B3 接口漂移批同步)
图标键(icon key): "哪个数据行配哪枚图标"的固定对照——数据表主键(effect_id/reward_id/cell_type/enemy_id)直接作图标键,一键一专属纹样、映射全局恒定禁运行时换图(art-bible §4.6 首次定义,2026-09-13 冻结)
徽章(badge): 画在格子上的身份附属小图标(类型/奖励身份预读)——绘制优先级栈位在旗之下、变异纹理之上,不构成格内第二焦点(art-bible §4.6 首次定义;栈位声明源 = proposal-reward-polarity §0)
极性(polarity): 同一类型兑付的正负方向——正 = 收益侧、负 = 代价侧,行为×格型→符号矩阵见极性提案 R2;视觉通道冻结 = 金族(有利)对红族(有害)+ 满框对缺框(art-bible §4.6 首次冻结视觉侧)
命令式回执驱动: 动作调用返回后组合根立刻重查一次只读面来刷新界面、不等通知信号——旗插拔/移动/AP·RAP 读数/状态/库存五类动作零事件外发或零推送,呈现层刷新由此承载(D1 首次定义;ADR-0001 订阅纪律的配对形态)
程序化占位: 用代码按冻结色板与形状规则直接画出的临时图形——参数取自 art-bible §4.1/§3 参数域、icon 按 §4.6 键位映射表挂槽,终稿美术到位后原位替换、数据层零改动(D1 首次定义;样张未定稿不阻塞呈现层开工的承载形态,占位同样受 §1.4 数字可读性第一验收项约束)
叠加层(overlay): A5 自持的板级派生信息集(显影/真视/预读三集)——只改"玩家能看见什么"不改棋盘事实,零回写 A2/B4 状态、随图消亡(A5 首次定义)
真视窄域护栏: 替代推理的道具效果(雷位真视)目标域 ≤3×3、全图级仅限恢复推理原料类(显影/预读)——信息层级护栏,防"扫雷退化为路径优化"(A5 Core Rule 3 首次定义,schema 校验强制)
渗透率: aux 道具期望件数占奖励池的份额——E[N_aux/板] = |U|×Σw_aux/W_total(A5 F1 首次定义;供给面天然限流,P1 护栏的量化形态)
行动: 轮次内挖掘期的原子决策单位——同一事件的三个视角:玩家决策层叫行动、进 A2 的数据形态叫意图(单意图帧整批提交)、A3 计价类别叫动作(action_kind 统一价目);有价行动(挖/插旗/拔旗)1 AP/次、受每轮 AP 预算约束(现行表值 8),移动/停手免费不计 AP(game-concept 术语层级 2026-09-14 收录)
节点: 关卡节点地图上的一个格——关卡内移动的步进单位;层名定稿(2026-09-14 用户裁决:节点 胜 遭遇——成员中立 + C1 注册名/切片 node_* 接口零改动 + 遭遇既有语义 = 战斗不挪用);节点类型分类学与分支机制归 C1 GDD 展开
遭遇: 一次完整战斗事件的同义词——战斗节点触发的那一场仗(既有用法:B1"两场遭遇" / D1"双敌种遭遇""Boss 遭遇变体");不作地图层名(2026-09-14 裁决)
节点奖励: 奖励点节点给的奖励(C1 域)——与安全格奖励(B4,格内开出)区分;节点奖励覆盖层 = 未来 spec design/ux/node-reward.md(battle.md OQ9)——三个"reward"各归各位(2026-09-14 拆名注记)
HP 账本: 冒险域主角血量的唯一记录——C2 持有,每战开始交出、战斗结束收回、恢复点与大奖励入账;关卡切换血条不清零(C2 首次定义;跨战斗 HP 持久性归 C1/C2 已锁事实的 C2 半边兑现)
关卡收束点: 一关就此定局的时点——Boss 战胜利(通关)或英雄死亡(失败);C1 在收束点先调 B1 关卡清库、再向 C2 宣布关卡结束与结果(C2 首次定义;切片 level_runner 先例转正)
关卡大奖励: 清完一关、进入下一关前的一次性兑付——上限提升 + 血回满 + 代币记账三件构成,不进背包不占库存域;末关通关不兑付(C2 首次定义;game-concept"冒险内大奖励"的落地形态)
referenced_by: [A2, B2, B4, B1, D1, A5, art-bible, game-concept, C1, C2]
- name: enemy
type: schema_data
owner: design/gdd/b2-enemy-system.md
attributes:
table: EnemyTable(D2 承载,键 (level_index, node_depth, enemy_id);B2 回填 owner,2026-09-09 定稿回填——进度键 floor(D2 R1)+ 实体键精确匹配)
fields:
enemy_id: String(行集内主键;意图视觉映射键——视觉推测型 D1×4①)
display_name: String(本地化归 D6)
unit_count: int [1,3](knob——**遭遇区间下界**〔2026-09-14 C3 修订批:unit_count 升级区间语义 [unit_count, unit_count_max],B1.begin_battle 实例化期经 RngService encounter 封闭流均匀骰;新敌种首遇/教学位节点固定不加骰〕;默认 1 provisional,多敌语义默认零消费者复验归 C1〔B2 OQ2〕)
unit_count_max: int [unit_count, 3] 可省略(2026-09-14 C3 修订批新增——遭遇区间上界;缺省 = 定值,旧行零迁移)
atk_min/atk_max: 可选配对 int [0,999](2026-09-14 敌方攻击区间批——上阶/下阶区间随机;缺省 = 定值行向后兼容;跨字段:必成对 · **atk = (min+max)/2 中点锚**;roll 时机 = 遭遇骰同流〔encounter 恰一 scope,数量骰先、atk 骰后〕spawn 期**整战持久**〔每拍抖动否决——数字可读性锚〕,B1.begin_battle roll → B2.spawn enemy_atk_override 收确定值〔B2 零随机纪律保持〕;MVP 六行 ±3 provisional 归 C3;验收 = 完美策略档 0 加成通关 ≤40%〔OQ7〕;接口漂移 = B2.spawn 签名 +1 参数〔正式侧 GDD/registry 修订批随 ADR-0009 同批〕)
armor_type: enum {none, a, b} 缺省 none(2026-09-14 护甲克制批转正登记——伤害类型 × 护甲克制,克制矩阵 = settlement_table.armor_effectiveness〔特化 ×150 / 无甲 ×100 / 对位 ×50〕;MVP 映射 goblin=none / bugbear=a / ogre_chief=b;数值 provisional 归 C3)
hp: int [1,999](knob——难度修饰前基线;MVP 18 provisional 出处待查)
atk: int [0,999](knob——attack 行为伤害基值;MVP 4 provisional 出处待查;0 = 纯伏击伤敌种合法)
heavy_multiplier: int [1,16](knob;无 heavy 拍敌种不消费——非校验项,B3 max_stack 先例;MVP 2 provisional)
pattern: StringList(行为环;元素 ∈ {attack, charge, heavy} MVP 校验域——guard/boost/hinder/summon 预留值校验拒绝〔A1 solver_rules 冻结先例〕;环长 [1,8])
advantage_per_round_cap: int [0,16](knob;**MVP 默认 4 定稿**〔2026-09-09——反灾难护栏定位,旧默认 8 溢出协议死码已废弃〕;0 = 免疫伏击合法极端;A3 F1 条款 3 供给表值来源字段)
rowset_rule: 每行集恰一敌种(行集内 enemy_id 唯一 = 表结构校验,违规加载期致命)——多敌种同深度选择规则归 C1/C3(provisional);精英/Boss 编码位预登记 B2 OQ7(键冻结下同深度第二敌种行触发行集致命——改键走 D2 Rule 4 接口漂移,C1 定稿时强制核对)
mvp_content: **恰 3 敌种(2026-09-14 C3 修订批转正——DND 更名批用户指令:grub→goblin / ambusher→bugbear / boss_guardian→ogre_chief;旧两敌种登记由本条替代;B2 AC-16③ 物种集断言随批更新为 {goblin, bugbear, ogre_chief})**:goblin(地精,[attack] 单拍环——L1 D0 24hp/7atk ×[1,2] 教学位固定 ×1、L1 D1 群 13/5 ×[2,3];armor=none)· bugbear(熊地精,[attack,charge,heavy] 三拍环——L1 D2 40/9 ×1、L1 D3 群 18/6 ×[2,3]、L2 D0 锚行 30/7;armor=a)· ogre_chief(食人魔酋长,[attack,attack,charge,heavy] 四拍 Boss 环——L1 D4 150/9 ×1;armor=b);heavy_multiplier=2 全员;出处 = 切片 enemy.tres v3(试玩批次 1 裁决 + 遭遇随机化批),曲线数值归 C3
load_bearing_rules: 多敌模型(1–3 同敌种单位,B3 单敌假设回验不成立——见 status_effect.single_enemy_assumption)· 行为环确定性轮转(零随机;先作用后推进;死亡即不动手——轮到前被杀本拍不打指针冻结;同步轮转定理)· 效果 side-wide(伏击池 = side 共享,B3 零接口变更)· 行值快照抗热重载(B3 EC9 同款)· 零随机零 UI 零事件订阅(A2 事件面不含 B2——事实经 B1 转化)
b1_obligations: 六项(B2 GDD 门禁评审缺项即 blocking)——① 推进每结算恰一次(敌单位专属——主角无环)+ 结算内调用序成文 query_attack→apply_damage→advance ② 雷→伏击恰一次转化 ③ clamp/负值/溢杀与死亡判定时机成文 ④ F1 条款 3 闭合对账(cap 表值 + 量纲 + A1 actuals p10 非 target 参数)⑤ 默认目标消费与单体/AOE 分流 ⑥ 伏击 cap 溢出"溢出未生效"明细行协议。**履行回执(2026-09-10)**:六项已全数落位 B1 GDD(Core Rules 5/6/9/10/12 + Formulas F3/F4——落位映射 = b1 AC 覆盖矩阵)
d1_obligations: 四项(视觉推测型呈现,缺项即 blocking)——① enemy_id→图像线索映射清单成文(预告时序=下一拍预告、挖掘期全程可见;含强度档位/环长直觉编码说明;形状+色相双通道)② 映射全局恒定(enemy_id 键——跨 run 禁重掷)③ 顺位与存活可读 ④ 敌方 side 池呈现口径
rule4_status: 本表是进度成长表(A1 BoardGenTable 同型,无 Rule 4 豁免)
referenced_by: [B1, B4, C1, C3, D1, B5, D5]
- name: hero
type: schema_data
owner: design/gdd/b2-enemy-system.md
attributes:
table: HeroTable(D2 新增 schema 行〔接口漂移回写,2026-09-09 B2〕,单行全局;B2 回填 owner)
fields:
max_hp: int [1,999](knob;MVP 值 provisional 出处待查)
atk: int [1,999](**0 = 加载拒绝**——基础攻击恒存在,"0 基线 × 百分比增益恒零"死锁自 schema 层杜绝〔2026-09-11 用户裁决,原"机制开关 MVP=0、激活裁决归 B4/B1"作废〕;MVP = 6 原型锚 provisional 归 C3;消费面 = 主角战斗段先手攻击——B1 GDD 2026-09-11 增补)
rule4_exemption: 单行全局定义表(主角不随关卡自动成长——成长=天赋 C4/奖励侧;ActionEconomyTable 先例)
hp_persistence: 跨战斗 HP 持久性归 C1/C2(provisional)——B2 单位接口以初始 hp 入参,不定义冒险内持久性
referenced_by: [B1, B4, C3]
- name: reward_table
type: schema_data
owner: design/gdd/b4-reward-item-economy.md
attributes:
table: RewardTable(D2 承载,键 = reward_id;B4 回填 owner,2026-09-09 定稿回填、同日 full 评审增补 display_name——含 use_timing 字段〔game-concept"使用时机"预留的兑现,MVP 单值 pre_settlement 承重,扩枚举走修订〕)
fields:
reward_id: String(表内主键)
category: enum {buff, damage_item, heal_pack, instant_aoe, instant_heal}——MVP 恰五值(2026-09-11 两级奖励批两类交付轴:即时类 {buff, instant_aoe, instant_heal} 当场兑付不进库存 / 可选类 {damage_item, heal_pack} 入库存走窗口),预留值(resource/aux_item 等)校验拒绝 fail-fast # was: {buff, damage_item, heal_pack} 三值 before 2026-09-12
effect_id: String 可空——buff 类必填(StatusEffectTable 精确引用,悬空校验已激活);非 buff 类恒空
display_name: String 非空——玩家可读名(D1 呈现数据源,本地化归 D6;2026-09-09 评审增补,B2/B3 同库惯例)
power: int [0, 999](knob)——item 类加载校验 ≥ 1;buff 类不消费非校验(B2 heavy_multiplier 先例)
power_min/power_max: 可选配对 int [1,999](2026-09-14 伤害量值区间批——上阶/下阶区间随机;缺省 = 定值行向后兼容〔armor_type 先例〕;跨字段:必成对 · buff 行禁止 · **power = (min+max)/2 中点锚**〔A3 条款①期望当量不漂移〕;roll 时机 = 身份预分配批内追加取号〔既有取号序零扰动〕,快照 E14 授予时口径不变、B1/呈现零改动)
weight: int [0, 999](knob)——0 = 该池不出此行(合法极端,取号前剔除)
pool_tag: enum {safe_cell, active_inject, clear_default}(2026-09-14 C3 修订批增补 active_inject——供给控制器注入池〔可选类三行移出格子权重池,由 RewardSupplyController install 期注入:首件保证 + 指数递减〕;clear_<biome> 命名空间预留、校验拒绝——A1 elite_ 同款)
tier: int [1, 8](knob)——A4 雾内档位下界约束载体
use_timing: enum {pre_settlement}——MVP 唯一值,扩枚举走 GDD 修订
cross_field_validation: 加载期致命族——池空(每 pool_tag × 雾/非雾两态各 ≥1 行 weight>0)· clear_default 恒正当量(≥1 活行 ∧ power≥1 ∨ effect_id 非空——A3 条款④"清图奖励>0"的行级兑现口径)· item 行 power≥1 · buff 行 effect_id 必填/非 buff 恒空 · safe_cell 活 buff 行集非空(tier_min_buff 定义前提,F1 对偶)· **floor_supply_missing(K_dmg ≥ 1 ∧ safe_cell 池无 power ≥ P_min 活刀行)· no_damage_row(K_dmg = 0 ∧ 全池零活刀行——零伤害世界后闸,B2 OQ9 并案)〔2026-09-09 评审增补,跨 RewardConfigTable 校验〕**
mechanics: 奖励身份 install 期预分配(roll_board 恰一次、行主序、消费 reward_roll 封闭流恰一 scope 批〔格批 + 清图批尾一号 × F5 草稿数——每稿含清图一号、草稿作废连清图一号一并作废〕;Ready 后只读、无重掷 API)· 授予期零随机(身份恒定跨轮;换图映射消亡)· **库存关卡域(2026-09-11 关内延续——跨战斗/跨图延续、关卡末 clear_inventory 清空;原战斗域 battle_over 全清作废)**· **两类交付轴(2026-09-11):即时类 {buff, instant_aoe, instant_heal} 授予段当场兑付不进库存(默认根 75%)/ 可选类 {damage_item, heal_pack} 入库存走窗口(25%、更强)——category 五值枚举**· **窗口单件制(2026-09-11 拍板——至多选用一件)**· **治疗两级:instant_heal 小额即时 + heal_pack 稀缺强治疗(w 25%→6%、p 4→12)**· 道具伤害恒定表值不吃 percent 修正(2026-09-11 后 attack_up 已复活〔消费面 = 主角先手攻击〕、入池随奖励改造批——原死行口径与"锚参照迁 defense_up"注记退役;A3 条款 2 锚参照对象 = attack_up 当量)· 道具段照常消耗(选定即承诺:无存活敌的已选刀照常 Used + 零效果 + "已消耗未生效"明细行——理由 2026-09-09 评审更正为守卫所有权不对称 + 反抖动,原"敌 HP 不可见"与 B2 血条数字可读矛盾作废)· **窗口锚点 = 授予段后、增益/减益段前(2026-09-09 评审用户拍板:当轮拾取当轮可用;核心段序 buff/debuff > 道具 > 战斗不变)**· 清图槽允许 buff 行(运行时满层零兑付 = 合法例外 + "奖励未生效"行,预警④监控)· F5 保底 = 草稿-校验-提交重 roll(K_dmg=0 / N_draft=32 provisional——**2026-09-14 C3 修订批转正:K_dmg=0"禁区默认值"条款解除**,刀保底语义由供给控制器战斗首件保证取代;no_damage_row 后闸仍托底零活刀行世界)· F2 雾档过滤(T_fog_min 默认 2 provisional;A4 约束①为验收锚非运行时校验——AC-19 档位序检查,B1 对照表落定后升级)· **重复受理幂等(同格重复 grant / 同批次重复 grant_clear → 同一快照/身份 + 诊断;受理/兑付恰一次归 B1×②③)**
api: 封闭枚举 10 入口(provisional,实现期 ADR 定名)——roll_board / query_identity(返回 {reward_id, category, tier} 引用级投影;未开格恒可查——A5 桥接结构前提;清单外坐标 → null + 诊断)/ grant(同格重复受理幂等 + 诊断)/ grant_clear(同批次重调幂等 + 诊断)/ stock(仅受理道具类,未知 item_id/buff 类拒绝;来源 {cell, round} 调用方供给不校验真值)/ use(零游戏态守卫;回执 = 授予时快照投影)/ query_inventory(Used 保留只读;枚举序 = stock 受理序)/ clear_inventory / retire_mapping / equivalence_supply(全活行投影 + tier_min_buff)+ weighted_pick 纯函数面;新增入口 = 接口漂移,**新增入口须随附全输入域语义表(2026-09-09 评审纪律)**
mvp_content: **默认根行集重登记(2026-09-14 C3 修订批——减伤墙批 + 供给控制器批 + clear_blast 换位批转正;值 provisional 归 C3;2026-09-11 两级奖励批旧登记由本条替代)**:格子池四行即时类(attack_up_basic buff→attack_up w20 t2 / defense_up_basic buff→defense_up **w16** t2〔减伤墙批 24→16,attack_up 升池内最高行〕/ spark_aoe instant_aoe p4 w16 t1 / heal_minor instant_heal p4 w15 t1——池合计 67)+ 注入池三行可选类(knife_t1 damage_item p8 **w60 active_inject** t1 / knife_adv damage_item p16 **w30 active_inject** t2 / heal_pack heal_pack p12 **w10 active_inject** t2)+ clear_blast(instant_aoe p40 w1 t2 clear_default——**清图槽换位:原 clear_knife 入库刀由当场兑付全体存活敌的 instant_aoe 替代,不入库不占可选类供给;完美板 ×2 = 80**);tier_min_buff = 2;雾池 = {defense_up_basic, attack_up_basic, knife_adv, heal_pack}(AC-19 对账对 (knife_adv, attack_up_basic) 不变);B1 条款⑤计价基元随换位重推(C = power = 40——clause5_dominance.c3_ruling);**2026-09-14 伤害量值区间批:五行 power 区间化**(heal_minor [2,6] / knife_t1 [5,11] / heal_pack [6,18] / knife_adv [10,22] / clear_blast [25,55]——中点恒等原值,身份批内上阶/下阶随机;验收口径 = 完美策略档 0 加成通关率 ≤40%〔OQ7 完美档基线 100%〕)
direction_precheck: **刀供给方向预检(2026-09-09 评审批登记,B2 clause3_supply 先例)**——击杀需求 18(单敌)/ 54(3 敌,B2 EnemyTable 参考行);刀伤供给期望/板 ≈ |资格格| × 40% × 5 = 2|资格格| → |资格格|=10 保守板:单敌 ≈0.9 板、3 敌 ≈2.7 板("单敌无忧 / 2–3 敌贴近下界"现值有锚);输入缺口 |资格格| 分布待 A1 actuals p10/p50 落地后重跑;治疗对照基准 max_hp=50(原型锚——HeroTable 值出处建议 B2/D2 回写补登)
b1_obligations: 六项(B1 GDD 门禁评审缺项即 blocking,清单全文见 B4 GDD Dependencies;2026-09-09 评审同步)——① 结算段序骨架(授予→**窗口**→增益/减益→道具→战斗→衰减→判定;窗口锚点 = 授予段后;窗口选择序 = 回放输入)② 受理分流 + **每格恰一次** + 满层零兑付"奖励未生效"行(含聚合计数字段)③ clear_reward 授予路径(B3 OQ4 关闭条件)④ 窗口与道具段编排(usable_now 组装/选定序/满血守卫 + 逐件动态守卫/零效果判定"已消耗未生效"行/**击杀结果进流水**/治疗 clamp)⑤ 生命周期编排(battle_over clear_inventory〔清空反馈计数〕/ retire 映射消亡)⑥ roll_board 恰一次。**履行回执(2026-09-10)**:六项已全数落位 B1 GDD(Core Rules 4/5/7/9/编排专章——落位映射 = b1 AC 覆盖矩阵;缺口预检 2 阻塞级 deferral 已随 AC-7/AC-15/16/20 承载)
d1_obligations: 五项(缺项即 blocking;2026-09-09 评审 3→5 扩容)——① 已开格 + 库存身份恒定可读(库存常读条 = 挖掘期规划面)② 道具使用窗口呈现(授予段后弹出/选用/跳过/序/usable_now/触发政策注记)③ 结算明细四类行(道具/"奖励未生效"〔聚合计数〕/"已消耗未生效"/"使用被拒")④ H2 清图奖励行强调呈现 ⑤ battle_over 库存清空可见反馈
pricing_constraints: A4 三条定价硬约束承接——① 雾内档位下界(AC-19 档位序检查夹具对账型,B1 对照表落定后升当量对账)② 清图锚随雾成本上浮(**MVP 结构性不可闭合——clear_default 常量池无法随雾负担变化,非 deferral;激活载体 = clear_<biome> 插槽,B1 检查点仅对常量判 pass/fail**)③ 雾板净当量优势带上界(**MVP 静默绿灯风险——②缺位 + 仅 tier 下界加成下近乎必然平凡通过**;B1 强制检查点 + 预警⑤雾板分层/⑥速杀退化观测对冲)〔②③状态 2026-09-09 评审显式宣告〕
high_glow_nodes: H1 开格拾取瞬间 / H2 清图奖励兑付 / H3 道具抢杀窗口(2026-09-09 评审诚实化:H1/H2 = 奖励侧常规节拍登记,H3 = 创意风险 #2 战斗侧执行兑现;**风险 #2 排雷侧"完美排雷爆发结算"机制本体归 B1 强制检查点、#3 标中旗节拍补偿归 B1——B4 只交付插槽与明细行数据面**;呈现义务 D1×④⑤)
referenced_by: [B1, D1, C3, A5, B5, D5]
- name: reward_config
type: schema_data
owner: design/gdd/b4-reward-item-economy.md
attributes:
table: RewardConfigTable(D2 承载,**单行全局**——2026-09-09 B4 full 评审接口漂移新增:B4 三个标量 knob 的 Rule 1 单一事实源载体,R3 override key 空间随之存在)
fields:
t_fog_min: int [1, 8](默认 2)——F2 雾档过滤门限
k_dmg: int [0, 999](默认 **0**——2026-09-14 C3 修订批转正〔切片 reward_config.tres 现值〕:原默认 1 与"C3 禁区默认值"条款由供给控制器战斗首件保证取代;no_damage_row 加载后闸仍托底零活刀行世界) # was: 默认 1、K=0 = C3 禁区默认值 before 2026-09-14
active_p0: float [0,1](默认 0.4 provisional——供给控制器首件之后每张新板注入概率初值;E[战斗获取] ≈ 1 标定目标,归 C3)
active_decay: float (0,1](默认 0.5 provisional——注入概率指数递减 0.4→0.2→0.1→…永不绝育;加难杠杆候选 0.6 随 C3 OQ7 扫描)
n_draft: int [1, 999](默认 32)——F5 草稿重 roll 上限
p_min: int [1, 999](默认 8 = 默认根最低刀 power——2026-09-11 两级奖励批)——K≥1 供给闸刀力下界(floor_supply_missing) # was: 默认 4 before 2026-09-12
rule4_exemption: 单行全局常量表(HeroTable/ActionEconomyTable 先例)
referenced_by: [B4, C3, B1]
- name: settlement_table
type: schema_data
owner: design/gdd/b1-settlement.md
attributes:
table: SettlementTable(D2 承载,单行全局;B1 回填 owner,2026-09-10 定稿回填;Rule 4 豁免——单行全局常量/结构表,HeroTable/ActionEconomyTable 先例)
fields:
equivalence_ref_damage: int [1,999](knob,默认 12 provisional——当量参考敞口 D_ref,F1 通货;变更触发全对照表 + 条款③⑤对账重跑,禁独立调参)
p_perfect: int {100,200} percent(knob,默认 200 provisional——完美排雷清图奖励**第二份兑付触发**;2026-09-10 B1 评审批修订:真实双份交付载体〔Core Rule 13#2〕——100 = 仅高光、200 = 双份交付,非整数倍数乘数无运行时载体、域外加载致命;上界受护栏 B 约束〔双读数:D_ref 口径 24 / DPS 严格读数 ≈8,裁决归 C3〕)
segment_order: StringList(结构冻结——段序骨架 [grant, item_window, buff_debuff, item, combat, decay, verdict];加载期恒等拍板序校验违例致命,防实现乱序静默漂移)
source_label_map: Dictionary source_class→文案键(结构冻结——P2 归因呈现映射;键集 = B3 source_class ∪ {道具/判定扩展, enemy_action, flag_miss}——2026-09-10 B1 评审批修订;新增键 = 接口漂移)
effect_pool_map: Dictionary effect_id→pool {hero_offense|hero_defense|enemy_output|flat_attach}(结构冻结——F2 效果语义映射,B3 Rule 7 载体;键 ⊆ StatusEffectTable 活行集、悬空加载期致命;新 effect_id 上线须随批登记)
pool_clamp_lo: int pp(结构冻结 −100——percent 池地板域下界,乘数域随之 [0,2];2026-09-10 统一八字段口径)
pool_clamp_hi: int pp(结构冻结 +100——percent 池地板域上界;原"七字段 pool_clamp_lo_hi"措辞作废,D2 GDD 行按收编先例以本条为准)
round_direction: enum {floor}(结构冻结——单一取整规则)
damage_a_per_cell: int ≥0(knob 默认 1 provisional——伤害A 开格充能/格;2026-09-14 护甲克制批转正登记,机制与结算归 B1、C3 投值)
damage_a_cap: int ≥0(knob 默认 8——伤害A 单轮充能封顶,防连锁轮失控;0 = 不封顶)
damage_b_per_flag: int ≥0(knob 默认 2——伤害B 标雷充能/首次标中雷,每雷实例一次去重)
armor_effectiveness: Dictionary 伤害类型×护甲→百分比(键集结构冻结 {base, dmg_a, dmg_b} × {none, a, b};默认 base 全 100 / dmg_a→a=150、b=50 / dmg_b→b=150、a=50——特化 ×150 / 无甲 ×100 / 对位 ×50;数值 provisional 归 C3)
validation: segment_order 违例致命 · effect_pool_map 悬空致命 · p_perfect 域 {100,200}(2026-09-10 载体域——100 = "完美必须 ≥ 不加倍"机制语义下界,200 = 双份交付)——B1 冒烟三行致命 manifest(segorder_violation / poolmap_dangling / pperfect_oob)
mechanics: 结算段序骨架唯一权威载体(授予→道具使用窗口〔授予段后〕→增益/减益→道具→战斗→衰减→判定——用户 2026-09-09 拍板序)· 零随机(rng_service 流封闭不含结算流)· 可回放步骤流(同 master_seed 同意图序列同窗口选择序列 ⇒ 步骤流逐行相同——D2 AC-15 deferred→B1 兑现落点)· 调用序钉死 query_attack→apply_damage→advance · 衰减恒执行含末轮 · 高光双落载体(perfect_sweep P_perfect——2026-09-10 修订为真实双份兑付载体 / 标中旗 highlight 标记)· 流水行协议字段分层(公共 7 字段 + 行类型特有 target/effect_id/pool_value/聚合计数——2026-09-10 评审批修订;行类型封闭枚举 13 类)· **伤害A/B 充能与护甲克制结算规格 = B1 GDD F6(W3 补全,2026-09-14 重算批)**——挖掘期充能/战斗段消费/单轮生命周期、不吃 percent、逐分量 armor_effectiveness 查表 floor 相加
closure_receipt: A3 F1 条款①②③⑤闭合 owner = B1(2026-09-10 F0–F5 首版验算完成——F0 瞬时当量口径 + m_w 值域裁决见 status_effect.anchor_warning;条款③ clause3_supply 闭合回执;条款⑤ clause5_dominance 条目;actuals p10 交付后强制重跑)
referenced_by: [D1, B5, D4, D5, C3]
- name: clause3_supply
type: formula
owner: design/gdd/b2-enemy-system.md
attributes:
rule: B2→B1 挖掘风险不等式(A3 F1 条款 3)供给口径——每结算敌方伏击暴露精确式 = k × L × m_amb(k = 本结算存活敌中攻击/重击拍单位数,确定性可算);每结算结构上界 = unit_count × min(AP 上界, cap) × m_amb(cap > AP 界时 cap 腿松弛——2026-09-09 B2 full 评审收紧);跨结算累计 = 轨迹量非表值
boundary: **单结算自然边界(用户 2026-09-09 定稿)**——"不设(每战)上界:踩雷 debuff 只在一次结算中有效,之后没有 debuff"(dur=1 每结算清零无存量)
variables: [cap, m_amb, unit_count, k_r, L_r]
output_range: 单结算结构上界 ∈ [0, unit_count×min(AP, cap)×m_amb](满配语境 3×min(8,4)×3=36;cap≥8 时真可达上界 72 而非 144;默认行值 unit_count=1 下 12)
account_input: 对账输入 = A1 actuals p10(F4 报告 C)非 target 参数(A1 登记口径);闭合 owner = B1 单一签字人;左臂(安全格 buff 当量)载体 = **B4 F6 当量供给**(2026-09-09 B4 定稿——部分缓解非闭合:窗口使用次数是战斗轨迹量,B2 OQ3 扩项保持;2026-09-11 起基础攻击恒在为左臂提供恒定伤害基底,原"当前内容态结构性不可通关"事实退役——B2 Overview 2026-09-11 改写)
direction_precheck: cap=4 下右臂 ≈7.7;左臂按条款 2 最低档锚(+50pp)计 = 0.36×50 = 18——裕度 ≈2.3×(1:1 百分点代理,provisional;2026-09-09 B2 full 评审更正原 4.7×——该值按 +100 两层叠满取值、与"最低档下界"语言矛盾);量级注记:atk=4 时 attack 拍 L≥2 伏击分量过半(heavy 拍过半点后移、按拍别读取;常态支配修正入口 = C3 atk 曲线 / B4·B1 m_amb 锚,B2 权限外)。**参照迁移注记(2026-09-09 B4 评审;2026-09-11 回迁)**:左臂参照对象曾迁 defense_up 当量(B4 F4)——**2026-09-11 用户裁决"基础攻击恒存在"后 attack_up 复活,参照对象回迁 attack_up 当量**(上式 +50pp 系 attack_up 口径,迁移期结束;复算义务随 B1 对照表落定,见 status_effect.anchor_warning 回迁注记)。**闭合回执(2026-09-10 B1 GDD F4——条款③闭合完成;同日评审批双口径更正)**:统一 HP 当量 + 边际配对重算 → 默认 unit_count=1 下 L1 裕度 ≈2.0× / L2 ≈2.6× **通过**(锚行口径;**跨行期望口径 ≈1.2×/1.5× 同向通过——双口径登记,C3 不得以锚行读数放行 unit_count=2**);**满配语境(unit_count=3)最坏盲点破线 → C3 调参约束登记**(unit_count 轴 + 密度×可推理率轴——unit_count>1 行须降密度或降 m_amb);本条 pp 代理预检(2.3×)退役为历史记录(量纲混用 + 右臂聚合上界与单格决策单位错配)。**重算回执(2026-09-14 B1 重算批——按现行三输入重推:duration=1 × m_d=−30 × C3 v3 曲线 d0.25/t0.88)**:L1 裕度 ≈0.48× / L2 ≈0.47× **破线**(锚行口径;跨行期望口径 E_dig=4.5 → ≈0.60×/0.58× 同向破线——双口径登记);满配语境(unit_count=3)≈0.16× 深度破线;**破线升格为默认曲线级约束——V_safe 侧杠杆(m_d/duration/D_ref)× 板形侧杠杆(密度×ι 联动对)× m_amb 全处"禁独立调参"联动网络(m_w↔D_ref↔m_d↔duration_d),修正方向须 C3 提案 + B1 闭合对账共裁**;上段 ≈2.0×/2.6× 读数系 duration=2 × m_d=−50 × v1 曲线旧值链产物,退役为历史记录;actuals p10 交付后强制重跑(B1 AC-39;ι 判式面保守代理 = 行 target 代,总暴露面无效)
referenced_by: [B1]
- name: clause5_dominance
type: formula
owner: design/gdd/b1-settlement.md
attributes:
rule: A3 F1 条款⑤清图 vs 弃图支配性闭合(B1 单一闭合 owner,B1 GDD F5;**2026-09-10 评审批模型修订:挖穿残余池计价**——E[踩雷] = |M|×n_s/(n_s+1) 均匀交错模型、Δr = ⌈(n_s+E[踩雷])÷AP_r⌉;旧模型按每格独立赌 P(雷) 漏计全池挖掘量、系统性偏乐观)——主判式 Δ_clear = [R_res + C_eff] − [X_res + Δr × s_ref] ≥ 0;E_dig = 默认根加权 7.2 HP(刀 40%/治疗 25%/defense_up 35%);C_eff = C ×(perfect ? P_perfect÷100 : 1)(×2 = 真实双份交付);s_ref = D_ref;**停手侧 RAP 机会收益按零计价(显式假设登记——零价假设下 verdict 已为负,为 RAP 计价只会更负)**;域守卫 n_s < 1 ⇒ 主判式不评估、信息端平凡腿接管
first_pass: **条款⑤未闭合(2026-09-10 模型修订重推——旧"两态通过"读数作废)**:L1 −5.3 / L2 −10.1(完美双份 +2.7/−2.1);满配语境 unit_count=3 深度为负(−49.6/−97.5,与 clause3_supply 破线同向联动);实现率折减口径(E_dig×0.6)更差(−18.5/−39.5);保守地板需求 L1 ≥ 46.1 / L2 ≥ 91.8(vs C=8/完美 16——缺口 −38.1/−75.8)。**C3/B4 约束包**:① C 量级上调整向(护栏 B 口径联动复核)② 或裁"清图非严格支配"为设计态(与 A4 定价硬约束②同向;如裁设计态须同步声明 A3 条款⑤ P1 对冲弱化 + B4 预警⑤加权监控)——①②二选一归 C3 裁;③ 多敌放行判据 = 条款③⑤在全部登记行组合下同时成立。判据函数角色 = 调参约束生成器(AC-40 断言输出与约束包一致)
c3_ruling: **约束包②采信(非支配设计态)+ 计价基元换位重推(2026-09-14 C3 修订批)**——clear_default 槽由 clear_knife(入库刀 C=8/完美 16)换位为 clear_blast(instant_aoe 当场兑付全体存活敌,C = power = 40):保守地板需求缺口重推 = 46.1−40 = 6.1(L1)/ 91.8−40 = 51.8(L2);C 量级不上调 ✓;P1 对冲弱化同步声明(② 条件)+ 弃图率加权监控随 OQ4 持续;本条 first_pass 旧读数(C=8/16 口径)留作模型演进记录;**区间批义务(2026-09-14)**:C 语义改区间 [25,55](期望中点 40 不变——期望口径缺口 6.1/51.8 维持);保守地板口径(min=25)缺口重推 = 21.1/66.8——B1 修订批对齐条款⑤措辞(义务登记,未兑现前 B1 文本 C=40 按期望中点读)。**重算回执(2026-09-14 B1 重算批——v3 曲线 d0.25/t0.88 × E_dig=4.5 重推,参考板形换锚 C3 MVP 行值总表)**:主判式 L1 −28.7/+11.3(完美翻正)、L2 −67.4/−27.4、满配 −153.2/−113.2 与 −257.1/−217.1;保守地板需求 L1 ≥ 110.3 / L2 ≥ 166.8(缺口 70.3/126.8,对 clear_blast);上段 46.1/91.8 需求系 v1 曲线旧值链产物退役;**C3 裁决②非支配设计态维持**(qualitative 结构不变——非完美态负、完美态 L1 翻正、L2 全负);护栏 A 方向性复核 ≈−1.1 越下界(E_dig 修正 + 雾池构成变更)/ 护栏 B C=40 越线——W2 复核三选一裁决随 C3 收口批;actuals 交付后按 clear_blast 语义强制重跑(B1 AC-40 同批口径)
guardrails: 护栏 A 雾板净当量优势带(每链不可达雾格 +2.4 ∈ (0, 3]——A4 pricing_constraints③ 判据;与残余池模型无关读数不变;突破条件 E_fog > 11.7 → C3 雾池联动禁区)· 护栏 B 防钓鱼(**2026-09-10 输入登记更正 + 双读数**:|S|_min = A1 行级 knob 禁写死;|R₀|_max 无登记供给方——登记 A1 产出义务〔R₀ 规模分布上界,报告 C 扩列〕;s_ref=D_ref=12 比真实敌方 DPS 期望松 2.5–3×→ D_ref 口径上界 24〔C_eff=16 ✓〕/ DPS 严格读数 ≈8〔C_eff=16 越〕——两读数裁决归 C3,与约束包①联动;结构承载 = A1 min_safe_count + 布雷数下限 + A2 R₀≠S 三闸的对账复核,非运行期校验)
a4_three_legs: 条款⑤三腿入账核对(雷险消解〔雾区无雷〕+ 信息双向净效应 + AP 腿〔链不可达全价 Δr 增量〕)——variation_table.fog_ap_note 消费面
rerun_obligation: actuals p10 / fog_burden_ratio p50·p90 交付后强制重跑(B1 AC-40);C3 每次调参重跑(D_ref/P_pf/C 联动)
referenced_by: [C3, B4, A1]
# 占位表中的原型参考值(伏击 +3、清图 +10、敌 18HP/4ATK 等)为 provisional,
# 不登记为事实——待各 owner GDD(A4/B3/B4/B1/C3)定稿后由其登记。
# (AP 等七字段已于 2026-09-07 由 A3 三次回填登记为 action_economy 条目;旗上限与折算乘数同日作废删除。)
# 修订记录:2026-09-07 full 评审(design-review)——删除 combat_var 流、去重键改四元组、
# 快照契约补计数器、R2 增实现级规约与 reward_roll 向量(owner=d2-data-config.md 代用户修订);
# 同日 re-review(5 阻塞:missing_type 分类规则/EC14 覆盖/诊断收集器/实体键解析语义/Rule 6 二分)
# + 独立 delta 复核 5/5 PASS → D2 Approved(2026-09-07)。
# 2026-09-07 A3 RAP 结构修订(owner=a3-action-economy.md 代用户修订):action_economy 全条目重写——
# 删 flags_per_round / flag_unit_cost / stop_multiplier / clear_multiplier,增 rap_refresh_cost 与
# rap_rules / flag_rules / downstream_contract 事实;round_end 改双发射源(A2 棋盘路径 + A3 停手路径)。
# 2026-09-07 A3 三轮评审修订(owner=a3-action-economy.md):flag_rules 兑付资格改雷格实例为键(原"放置实例"与
# "拔插不重置"并存矛盾)· rap_rules 增玩家发起/多次受理/new_board 契约义务 · downstream_contract 改五条款
# (增挖掘风险不等式 B1 闭合 + 弃图支配性)· 增 cross_field_validation(任一动作成本 ≤ ap_per_round)。
# 2026-09-08 A4 定稿回填(owner=a4-terrain-variation.md):新增 variation_table 与 variant_pool_gate 条目;
# action_economy.referenced_by 增 A4(清图预算构成注记只读消费 ap_per_round=8,与注册表值一致零冲突)。
# 2026-09-08 A4 full 评审修订(owner=a4-terrain-variation.md,NEEDS REVISION 8 阻塞同日核销):
# variation_table.load_bearing_rule 增结构推论(厚度≤2/f≤8d)· fog_ap_note 改写(全价→链不可达两态;
# 条款 5"消解"→三腿入账两态验算)· variant_pool_gate 增 board_biome 域校验归属与 15 项验收门禁登记——
# 详见 design/gdd/reviews/a4-terrain-variation-review-log.md 阻塞→修复对照表。
# 2026-09-08 A4 re-review 修订(owner=a4-terrain-variation.md,NEEDS REVISION #2 6 阻塞同日核销):
# variation_table 增 cross_field_validation(hide_numbers⇒safe_nonzero 致命)与 pricing_constraints(B4 三
# 硬约束)· counter_item_ids 修正为非 knob · mvp_content 的 knob 活值标注 · referenced_by 补 B1/B4 ·
# fog_ap_note 预算不等式改增量构成("轮数上限"作废)· 厚度≤2 钉死窗口谓词度量。
# 2026-09-09 B3 full 评审修订(owner=b3-status-effect.md,NEEDS REVISION 7 blocking 同日核销):
# status_effect 条目 fields/mvp_content 改逐字段 YAML 键(AC-18 机器对账前提,action_economy 同构)·
# b1_obligations 5→8(⑥ decay 恰一次 ⑦ per-grant 来源标注 ⑧ 溢出行)· 增 single_enemy_assumption 与
# presentation_obligations(D1×4/B5×2/D5/B4)· anchor_warning 增修复空间不对称(总暴露读法被 schema 域禁止)。
# 2026-09-09 A1 full 评审修订(owner=a1-board-generation.md,MAJOR REVISION NEEDED 8 blocking 同日修订):
# board_gen_table 条目同步 B1/B3/B4/B6/B7/B8/R2/R3/R4/R9——inferability_target 域 [0.85,1](P1 绝对锚)·
# fog_target_ratio ≤ min(8d,0.25) 绝对上限 · 布雷数下限 round(d×(W×H−9))≥1 · F2c 成本谓词(att×W×H≤16384
# provisional,禁墙钟逃生)· 达标两项判据(inferability_core = 剔除雾格后的可推理率)· 布雷钉死(先定数后落位/先布后删)·
# 断言 B 收紧达成区占比(A4⑭ 两件套)· σ 打包 2^20·L+2^12·D 防碰撞 · 指标集六→八项 · 第三轴登记约定
# (Boss=Dmax 行 + elite_/boss_ 命名空间 + OQ6 重审门)· 黄金向量 core 整数对(派生不重制)。
# 2026-09-09 A2 定稿回填(owner=a2-minesweeper-rules.md):新增 a2_event_surface / a2_initial_expansion 两条件目
# (三事件回边契约 + 初始展开域与双包含兑现回执 + A1 修订义务〔反例 B〕登记);A2 /design-review 须核对标错惩罚 OQ 在位。
# 2026-09-09 A2 full 评审修订(owner=a2-minesweeper-rules.md,NEEDS REVISION 6 blocking 同日核销):
# a2_event_surface.api_surface 增 ActionOutcome.sub_reason 封闭枚举(UX-1,批前免费窗口)· D1×1→D1×6;
# a2_initial_expansion 增诊断类别封闭枚举 + 链不越旗红线(GD-1——连锁传播集 ∖ G,G=∅ 域与 A1 算子①同构不变);
# 新增 terminology 术语条目(用语纪律登记通道)。详见 design/gdd/reviews/a2-minesweeper-rules-review-log.md。
# 2026-09-09 B2 定稿回填(owner=b2-enemy-system.md):新增 enemy / hero / clause3_supply 三条目(EnemyTable 八字段 +
# 双敌种行 + 每行集恰一敌种校验;HeroTable 单行全局两字段 + atk=0 机制开关〔该口径 2026-09-11 作废,见下〕;条款 3 单结算自然边界供给口径〔用户定稿〕)·
# status_effect.single_enemy_assumption 回验改写(定多敌,side-wide 兼容 + target_ref 扩展位)·
# status_effect 增 ambush_unit_definition(量纲定稿,OQ2 关闭条件)· terminology 增 B2 六词条。
# 2026-09-11 用户裁决批(基础攻击恒存在):hero.atk 域改 [1,999]、0 = 加载拒绝(MVP=6 原型锚 HERO_BASE_ATK,
# 概念原型"每次结算的基础伤害")——"机制开关 MVP=0"与"当前内容态无胜利路径"声明作废;attack_up 复活(消费面 =
# 主角战斗段先手攻击,B1 GDD 同批增补 + source_label_map 增 hero_attack 键);锚参照回迁 attack_up 当量(status_effect.
# anchor_warning / clause3_supply.direction_precheck 两处迁移注记退役为历史);b1_obligations 履行回执 2026-09-10 不变;
# 变更 owner = b2/b4/b1 GDD 2026-09-11 同批修订。
#
# 2026-09-11 用户裁决批(两级奖励 + 关内延续):RewardTable category 扩为五值两类交付轴(即时 75% / 可选 25%)·
# 默认根重登记为八行(attack_up_basic 复活入池 / spark_aoe / heal_minor 新增;heal_pack 稀缺化 w6 p12)·
# status_effect attack_up/defense_up duration 2→1(当次结算语义)· 库存关卡域(跨战斗延续、关卡末清空——
# 原战斗域作废)· 窗口单件制(原任意多件作废)· reward_config p_min 4→8。
# 变更 owner = b4/b1/b3 GDD 2026-09-11 同批修订。
# 2026-09-09 B2 full 评审修订(owner=b2-enemy-system.md,NEEDS REVISION 8 blocking 同日核销):
# enemy.b1_obligations ① 增调用序成文(query_attack→apply_damage→advance)与敌单位专属口径 · d1_obligations
# ① 增预告时序/强度档位、② 改全局恒定 · rowset_rule 增精英/Boss 编码位预登记(B2 OQ7)· clause3_supply
# 结构上界改 min(AP, cap) 形(cap 腿松弛收紧)· direction_precheck 裕度 4.7×→2.3× 更正(最低档锚口径)·
# account_input 增胜利路径声明注记。详见 design/gdd/reviews/b2-enemy-system-review-log.md。
# 2026-09-09 B4 定稿回填(owner=b4-reward-item-economy.md):新增 reward_table 条目(schema 八字段 + 跨字段
# 校验族 + 机制/API 面 + B1×6/D1×3 义务清单 + A4 三约束承接 + 高光节点条目化);接口漂移改写三处——
# rng_service.scope_event_binding 的 reward_roll 语义(每次奖励结算 → 每次 board install 批)、
# status_effect.dangling_ref_policy(首引条件兑现)、clause3_supply.account_input(左臂载体 = B4 F6);
# action_economy.referenced_by 增 B4(F6 当量供给消费条款①②)。并行会话冲突经用户裁决:道具段"照常消耗"
# 拍板为最终语义(覆盖并行草稿"拒绝不消耗"版),清图槽允许 buff 行拍板同批落定。
- name: d1_presentation_surface
type: convention
owner: design/gdd/d1-hud-framework.md
attributes:
kind: 呈现面契约(读图接口清单 + 订阅纪律 + 命令式刷新面 + 载荷 schema 索引——封装收口批〔session-state entry 39/40〕切片事实的 GDD 转正)
read_map: A2 current_board()/reveal_record()/compute_move_path() · A3 getter-only phase/ap/rap/last_round_end · B1 presentation_snapshot()/is_battle_live()/stock_count()/query_reward_identity() + 步骤流信号 · B2 hero_unit()/all_enemies() · **B3/B4 零直读**(经 B1 呈现面与流水投影)· runner(节点链/当前节点/HP 携带)
write_paths: settle_batch(stop 亦经此,禁直调 A3)/ submit_window_selection(窗口条目位置序,非库存句柄) / 刷新意图 → B1 refresh_board 编排 / runner 推进——**全部唯一发生在组合根**
subscription_discipline: 呈现层永不直接订阅 A2/A3——只订 B1 步骤流/快照与 runner 信号(ADR-0001 固化);接线全部在组合根
imperative_refresh_faces: 零事件外发动作的刷新 = 命令式回执驱动(白话:动作调用返回后组合根立刻重查一次只读面刷新界面,不等通知信号)——旗插拔/移动成功(A2)/ AP·RAP 读数(A3 无推送)/ 状态效果(B3 零信号,绑 B1 结算完成时点)/ 库存(B4 查询面)五面成文
payload_schema_index: D1 GDD Core Rule 17 表 13 项——A2 三事件/B1 流水行协议/B4 窗口载荷等均为引用既有 schema;D1 自有成文 = ux 遥测六行(ux_round_input_ratio/ux_round_exit/ux_refresh_attempt/ux_window_choice/ux_reject/ux_hint_shown)+ hint_id 封闭枚举 {fog_first, chord, no_adjacent}
lifetime_visibility_rule: 销毁前捕获(终局/死亡数据 despawn 前已入流水与快照)/ 载荷自包含(行协议自带来源/值/目标,禁按行序反推)/ 禁回读核心生命周期态(唯一观测口 = is_battle_live() 与 phase 投影)——切片缺陷②教训转正
naming_unification: 正式名 request_refresh(A3)/ refresh_cap_per_round(结构位默认 2)——切片 provisional 名 request_refresh_active/can_request_refresh/refresh_max_per_round/during_round 退役(AC grep 断言零残留)
drift_registrations: ① A3 只读观测量缺轮内已用刷新次数(刷新按钮"本轮剩 N 次"读数缺口——A3 修订批补)② 切片 settlement_snapshot 信号 B1 GDD 未登记契约(D1 现行消费 = 步骤流判定行 + presentation_snapshot(),独立信号须回 B1 补登记)③ 极性提案实施批 D1 义务条目(未开格类型图标/极性视觉语言/负向文案族——随批入 systems-index D1 台账)
referenced_by: [B5, D4, D5, A5, D6]
- name: a5_aux_items
type: schema_data
owner: design/gdd/a5-minesweeper-aux-items.md
attributes:
table: AuxItemTable(D2 承载【D2×① 修订批登记】,键 = item_id;A5 回填 owner,2026-09-14 定稿登记;定义表非进度成长表——Rule 4 豁免;生效前提 = B4×①…⑤/D2×①② 修订批兑现)
fields:
item_id: String 主键唯一——B4 RewardTable.effect_id(aux 行)与 VariationTable.counter_item_ids 的引用键
display_name: String 非空(D1 呈现数据源,本地化归 D6——B2/B3/B4 同库惯例)
dimension_tags: StringList ⊆ {info, risk, action, plan, counter} 非空——维度覆盖断言载体(F2:五维度各 ≥1 活行 = "每维度都有对应道具"的机器可查形态)
effect_kinds: StringList ⊆ {fog_reveal, mine_reveal, reward_preview, ap_grant} 非空、无重复(MVP ≤2——稀有多维组合行的 schema 承载)
target: enum {none, fog_region, area_3x3, board_wide}——校验 = target ∈ 各空间 kind 支持域交集(全非空间 ⇒ 恒 none)
magnitude: int [0,999](knob)——仅 ap_grant 行消费(= AP 点数,加载校验 ≥1);空间行不消费非校验项
use_phase: enum {active_dig}——MVP 单值(扩枚举走 A5 GDD 修订;B4 use_timing 扩值 during_dig 同批对齐——B4×③)
mvp_content: 六行(值 provisional 归 C3)——probe_dust 显影尘〔info+counter / fog_reveal / fog_region / w5 t2〕· sapper_order 工兵令〔action / ap_grant / none / mag 2 / w5 t2〕· loot_compass 探宝罗盘〔plan / reward_preview / area_3x3 / w4 t2〕· nest_pendulum 探巢摆钟〔risk / mine_reveal / area_3x3 / w4 t2〕· catacomb_scroll 地穴全图卷〔info+plan / fog_reveal+reward_preview / board_wide / w1 t3〕· blast_kit 爆破工兵包〔action+risk / ap_grant+mine_reveal / area_3x3 / mag 4 / w1 t3〕——四常规单维(t2)+ 两稀有多维高数值(t3;稀有读数 ≈0.17 件/板,F1)
load_bearing_rules: 真视窄域护栏(承重)——mine_reveal 支持域 ≤area_3x3、board_wide 仅 fog_reveal/reward_preview(恢复推理可全图、替代推理必窄域——P1 防塌方;schema 校验强制,夹具 a5_target_violation)· 效果时效随 kind 派生无独立字段(空间 kind 恒本图持续、ap_grant 恒当轮一次性)· 零随机(零 RNG 流消费——信息全部来自 A2 恒真数字/B4 Ready 映射/A3 账本三既有事实源)· 零特判延伸(A2 代码零 A5 分支)· 无效/零信息目标不可用不消耗(可用性门——2026-09-14 用户拍板:板级判据 → 图标灰/入口禁用〔B4 usable_now 先例〕、点击级 → 拒绝零消耗、组合行判据取 OR——爆破包 ap_grant 恒可用、真视零雷恒有效;与 B4 E10 照常消耗区分——挖掘期非结算管线、守卫 A5 本地可判)· area_3x3 边缘窗口 resolved_target = 窗口 ∩ 板内格(2026-09-14 用户拍板——护栏只缩不扩)· 使用零 AP 成本(不经 try_spend)· 库存关卡域(与 B4 库存正交两容器、生命周期同构)· Used 不可逆
overlay_semantics: 板级叠加层三集(A5 自持派生信息层、零回写 A2/B4 状态、随图消亡)——digit_reveal 显影集(D1 显示雾格数字,本体 = A2 恒真数字)/ mine_reveal 真视集(真视≠自动兑付——插旗仍花 1 AP 走既有 flag_hit 路径)/ reward_preview 预读集(徽章数据源 = B1 query_reward_identity 既有读面——A5 零 B4 数据复制)
api: 封闭枚举 8 入口(provisional,实现期 ADR 定名)——add_item(item_id, source) / query_inventory(枚举序 = 受理序,Used 保留只读,逐件含 usable 板级零信息可用性预判)/ validate_use(handle, target?) → 效果投影(只读不消耗;目标校验谓词 = 越板/点击级零信息拒绝 + 边缘窗口裁剪 resolved_target = 窗口 ∩ 板内格)/ apply_overlay(kind, target, mag)(B1 逐 kind 调用)/ consume(handle)(Used 不可逆 + 快照回执)/ query_overlays(三集只读投影)/ retire_overlays(B1 编排——与 B4 retire_mapping 同点)/ clear_inventory(关卡末幂等);负空间 = 无自动使用入口/无重掷/无事件订阅/无 RNG 直连/无 A2/B4 写入口
use_orchestration: B1 use_aux 规范序(唯一调用权)= 相位 gate(Active——A3 phase getter)→ validate_use(目标校验读 A2 只读面——使用目标校验谓词表见 A5 GDD)→ 逐 kind 应用(顺序钉死:空间先、ap_grant 后——effect_kinds 列表序非运行时语义)→ consume——序即原子(validate 拦下全部可失败输入;apply/grant 域内无失败路径 → consume 恒达)
formulas: F1 aux 渗透供给(E[N_aux/板] = |U|×Σw_aux/W_total,默认根 ≈1.7 件/板、稀有 ≈0.17;|U| 分布缺口待 A1 actuals——B4 预检 11 同批重跑)· F2 维度覆盖谓词 coverage(d) · F3 信息价值方向预检(显影 ι↑ → 残余盲猜端 n_s = (1−ι)|S| 收缩 → 盲赌暴露下降 → 期望踩雷↓——P(雷) = |M|/(|M|+n_s) 对 ι 递增,单赌命中率上行属正常,收益在"少赌"非"单赌更安全";与 B1 F4 同式 + n_s<1 适用域守卫;2026-09-14 评审修正原"P(雷)↓"方向误写;定量当量归 B1 条款①对照表扩列——B1×④注记,MVP 不入对照表)
obligations: 21 项跨 GDD 义务清单(A5 GDD Dependencies 全文,对侧修订批逐项核对、缺项即 blocking)——B1×①②③(use_aux 编排/生命周期/授予路由,缺项即 blocking)+ B1×④(对照表扩列注记)· B4×①…⑤(category 扩值 aux_item/effect_id 双表校验+夹具 b4_dangling_aux/use_timing 扩 during_dig/默认根六行+池总权重算/OQ2 收口注记)· A3×①(grant_ap 第 9 API 接口漂移预授权——Active 受理、无上限域、零随机)· A4×①②③(fog.counter_item_ids=[probe_dust] 回填/悬空校验激活+夹具 a5_dangling_counter/未来变异随批配 ≥1 反制)· D1×①…④(库存条/使用交互/叠加层三集呈现/清空反馈)· D2×①②(AuxItemTable 登记/两处表值回填+校验激活)· D5×①(教学候选,非 blocking)· art-bible×①(§4.6 键扩容:item_id 六键+叠加层标记三族)
ux_flag: 有 UI 贡献(库存条/使用交互/叠加层呈现)——Phase 4 前置 /ux-design;asset-spec 候选(art-bible 样张批后)
closures: A4 EC6 显影语义定稿(=fog_reveal,恢复推理原料非排雷;时效 = 本图持续)· A4 OQ2 收口(时效/定价/首引回填/悬空校验)· B4 OQ2 A5 侧收口(呈现深度 = 道具驱动预读;未预读格不呈现、自动寻路不做——终态与否 OQ6)· 创意风险 #1 道具侧兑现(plan 维度预读——结构闭环最后一块,呈现归 D1)
warnings: 预警①…④ playtest 预注册归 C3(道具依赖度/预读覆盖率/AP 转存联动/稀有感知)
referenced_by: [B1, B4, A4, A3, D1, D2, D5, art-bible]
- name: difficulty_table
type: table
owner: design/gdd/c3-difficulty-curve.md
attributes:
kind: 全局修饰结构位(MVP 空表——零行为)
key: (level_index, node_depth)
fields: 修饰乘数(域预登记 [0.1,10],越域 clamp+warning——非 fail-fast,组合事故非配置事故)
application_point: B2.spawn 实例化时、行值快照前套乘(B2 Rule 10 兑现——接口漂移建表随 C3 实现批)
first_use_scenario: 精英节点(C1 分支地图定稿后联动设计——C3 OQ5);Boss 走 Dmax 直填行不走本表
referenced_by: [B2, C3]
- name: difficulty_expectation_table
type: formula_set
owner: design/gdd/c3-difficulty-curve.md
attributes:
kind: 调参目标带(F5)+ 承伤估算(F4)+ 供给平衡式(F6)——设计期工具式,运行时零新增公式(C3 定位声明)
clear_rate_target: L1 基线 **30-50%**(2026-09-14 带锚定稿——旧 40-60% 由本条替代;现扫描 60% 越上界,加难杠杆批内执行 OQ7)/ L2 20-40% / L3+ 10-25%(中高天赋带见 GDD F5 表——区间位移机制承载:atk 翻倍 ≈ K 减半 → 绿档)
supply_balance_band: "**关级供给带 [1.1,2.0] 退役(2026-09-14——其验算 0.54 与实测 60% 通关矛盾)**——由生存链区间模型替代:每战 S/K 区间三档判定(绿 S_min>K_max / 黄 E[S]≥E[K]+1 / 红 S_max≤K_min 禁止入表)+ 关级恒等式(atk×ΣR_survive + Σ奖励输出 ≈ Σ敌hp期望×(1+缓冲),actuals 逐项审计闭合)+ 输出占比带 [15%,40%] + 通关余量带(p90≤13 & p10≥3——'通关只剩一点血'量化)"
tool_carrier: level_monte_carlo.gd / reward_expectation.gd(切片原型→C3 期正式批量工具,A1 F4 排期倒挂解除载体)
calibration_gap: 真人修正系数待 playtest 标定(OQ3——**方向已由试玩批次 1 反向确认:真人显著强于模拟者**〔v2 真人 100% vs 模拟 80%〕;旧"真人预期低于模拟"方向声明由本条替代;带按模拟口径定义,真人系数批次 2 定量)
referenced_by: [B4, B1, C2, C4]
- name: boss_dmax_convention
type: convention
owner: design/gdd/c3-difficulty-curve.md
attributes:
rule: Boss = 各关最大深度 Dmax 行(A1 第三轴登记约定的 GDD 侧兑现)+ LevelTable 末节点必须 Boss(schema 校验)+ 专属行为环含 charge 拍
boss_hp_anchor: F3 = Σ普通战斗hp期望 × r_boss ∈ [0.5, 1.1](现行带——旧带 [0.35,0.55] 与"切片 0.81 越上界"读数由本条替代,OQ2 采信用户"可上调"裁决后修订)· L1 v3 记录值 150/153.5 ≈ **0.98** 带内 ✓(期望口径含 unit_count 区间骰 Σ=153.5——2026-09-14 C3 修订批口径统一,旧固定口径 Σ=142 读数替代)· **加难走廊 [1.1, 1.35] 预登记**(Boss 180–207 候选,OQ7 扫描终裁)
elite_reserved: elite_/boss_ 前缀命名空间预留(A1 B7);精英完整语义归 C1 定稿联动(OQ5/OQ6 强制重审)
referenced_by: [A1, B2, C1, C2]
- name: level_table
type: schema_data
owner: design/gdd/c2-adventure-structure.md
attributes:
table: LevelTable(D2 承载,键 = level_index 行、行内 nodes 节点链数组——切片建表,C2 定稿转正为行集内容 owner)
fields:
level_index: int 行主键(冒险序列序号,从 1 连续递增——线性序列无跳关)
display_name: String(玩家可读层名——L1"第一层 · 苔藓回廊"切片现行;L2 provisional"第二层 · 雾漫巢径",终稿随 L2 内容批)
rest_heal_pct: int [0,100](knob 默认 30——恢复点回复 max_hp_eff 的百分比,随上限加成同步放大防高上限档恢复失效;数值复验归 C3)
nodes: 节点链数组——node_kind ∈ {battle, reward, rest, boss}(切片字段名 type);battle/boss 携带 node_depth;reward/rest 不占深度
rowset_rule: Boss 恒末节点(schema 校验);战斗节点深度 = 前序战斗节点计数、Boss = Dmax(A1 第三轴约定兑现面);MVP 链模板 = battle D0 → battle D1 → reward → battle D2 → battle D3 → rest → boss D4(7 节点 5 战斗深度,L1/L2 同构复用)
cross_table_validation: battle/boss 节点 (L,D) 在 board_gen/enemy 两表存在精确行(D2 跨表校验⑧复用 + C2 AC-7 冒烟断言——序列关数 ⊆ 内容覆盖,越界关卡 = 内容生产缺口)
mvp_content: L1 全行(切片转正——7 节点链、rest_heal_pct=30、全程无雾);L2 行 = N=2 扩展批(同构模板 + C3 深度轴行值同批填充——C2 GDD 生效前提,未落地前冒险以单关行集运行 N=1 合法态)
referenced_by: [C2, C1, C3, A1, D2]
- name: adventure_table
type: schema_data
owner: design/gdd/c2-adventure-structure.md
attributes:
table: AdventureTable(D2 承载,单行全局;C2 回填 owner;Rule 4 豁免——单行全局常量表,HeroTable/SettlementTable 先例;建表走 D2 接口漂移规则)
fields:
level_clear_hp_bonus: int [0,999](knob 默认 10——关卡大奖励 HP 上限提升,冒险内生效经 begin_battle 覆盖值通道传入后续每战;值锚 = C3 区间平移换算率 +10hp ≈ +1 轮,上调须 C3 重扫 L2 通关率带)
token_per_level: int [0,999](knob 默认 10——每通关一关的代币记账值;消费方 C4)
mvp_content: 两字段默认值即 MVP 行(10 / 10,provisional)
extension_reserve: 大奖励形态扩列位(三选一 / 攻击型 / 通关加成——C2 OQ2,随 C4 元进度设计)
referenced_by: [C2, C4, D2]
- name: hero_override_parameter_passing
type: convention
owner: design/gdd/b1-settlement.md
attributes:
kind: 主角战斗入参覆盖值通道(begin_battle 显式参数传递——切片 E4 封装收口批实现,registry 登记缺口由 C2 定稿批补登)
contract: begin_battle 增 hero_hp / hero_atk / hero_max_hp 显式入参 → B2.spawn 增 atk_override / max_hp_override 参数;-1 = 表值兜底(不覆盖);hero 表运行期不可变(D2 单一事实源机制化——表写通道全删)
consumers: HP 账本(C2——跨战斗 HP 持久性 + 大奖励上限提升的传入面)/ 元进度加成(C4 远期预留)/ 切片 TunePanel(调试通道)
adr_status: ADR-0009 候选——正式侧 B1/B2 GDD 修订随 ADR-0009 批;C2 GDD 规则 3/4 为 C2 半边(HP 账本供值)的正式定义源
referenced_by: [B1, B2, C2, C4]
# 2026-09-09 B4 full 评审修订批(owner=b4-reward-item-economy.md 代用户修订,NEEDS REVISION 14 blocking 同日核销):
# 新增 reward_config 条目(RewardConfigTable 单行全局——T_fog_min/K_dmg/N_draft/P_min 的 Rule 1 载体);
# reward_table 增 display_name(九字段)+ 默认根行集登记 + direction_precheck(刀供给)+ 跨字段护栏两条
# (floor_supply_missing / no_damage_row——B2 OQ9 并案)+ 窗口锚点改授予段后(用户评审拍板:当轮拾取当轮可用)
# + 重复受理幂等语义 + B1×6/D1×3→D1×5 义务清单同步;锚参照迁移传播三处(本条 anchor_warning 迁移注记 /
# clause3_supply.direction_precheck 迁移注记 / systems-index A3 OQ5 注记——attack_up 口径历史值与 defense_up
# 数值巧合全等、迁移后预检未重跑事实同批登记);terminology 增 B4 六词条(刀/批尾/死行/档位序检查/预推进/烧刀烧包)。
# 详见 design/gdd/reviews/b4-reward-item-economy-review-log.md。
# 2026-09-10 B1 定稿回填(owner=b1-settlement.md):新增 settlement_table / clause5_dominance 两条件目
# (SettlementTable 七字段 + 三行致命 manifest + 段序骨架/可回放/高光双落载体;条款⑤主判式 + 保守地板缺口 +
# 两护栏 + 三腿入账)· 接口漂移回写四处——status_effect.mvp_content.weaken magnitude −25→−65(F0 裁决,
# 值域 [60,85],终值共裁 B1 OQ2)+ anchor_warning F0 裁决回执(红警关闭:瞬时当量口径/地板层数=2/defense_up
# 参照保持)· clause3_supply.direction_precheck 闭合回执(≈2.0×/2.6× 边际配对、满配破线 C3 约束、pp 代理退役)
# · board_gen_table.inferability_vs_p_safe 消费回执(P(安全) 残余盲猜端代理式);status_effect/enemy/reward_table
# 三处 b1_obligations 履行回执(23 条义务全落位 b1 AC 覆盖矩阵);terminology 增 B1 五词条
# (完美排雷/当量/乘区/溢杀/免伤轮)。
# 2026-09-10 B1 评审批修订(owner=b1-settlement.md,/design-review NEEDS REVISION 同日核销 8 blocking):
# settlement_table——p_perfect 载体域 {100,200}(真实双份交付)、pool_clamp_lo_hi 拆 lo/hi 两字段(八字段口径统一、
# D2 GDD 行按收编先例以本条为准)、source_label_map 键集补 enemy_action/flag_miss、mechanics 补行协议字段分层;
# clause5_dominance——模型修订重登(挖穿残余池计价、条款⑤未闭合 + C3/B4 约束包 + 护栏 B 双读数 + RAP 零价假设);
# clause3_supply——闭合回执双口径更正(锚行 ≈2.0×/2.6× / 期望 ≈1.2×/1.5×、破线约束两轴)。
# 详见 design/gdd/reviews/b1-settlement-review-log.md。
# 2026-09-13 D1 定稿回填(owner=d1-hud-framework.md):新增 d1_presentation_surface 条目(呈现面契约——
# 读图接口清单/订阅纪律/命令式刷新面/载荷 schema 索引/生命周期可见性规则/命名统一/接口漂移登记 ×3);
# terminology 增两词条(命令式回执驱动/程序化占位)+ referenced_by 增 D1。solo 模式出稿待人工复核。
# 2026-09-14 A5 定稿回填(owner=a5-minesweeper-aux-items.md,solo 模式一次会话定稿、出稿待人工复核):
# 新增 a5_aux_items 条目(AuxItemTable 七字段 + MVP 六行【四常规单维 + 两稀有多维,值 provisional 归 C3】+
# 真视窄域护栏承重规则 + 叠加层三集语义 + 8 API 面 + use_orchestration 规范序 + F1–F3 + 21 项跨 GDD 义务清单
# + A4 EC6/OQ2 与 B4 OQ2 收口);variation_table.mvp_content.counter_item_ids 回填 [probe_dust](A4 预授权
# "A5 期回填"兑现——D2 表值与悬空校验激活随 D2/A5 修订批同批落地)+ dangling_ref_policy 首引兑现改写;
# terminology 增四词条(叠加层/真视窄域护栏/渗透率 + referenced_by 增 A5)。
# 生效前提:B4×①…⑤(category 扩值 aux_item/use_timing 扩 during_dig/默认根六行等)与 D2×①② 修订批——
# 未兑现前 RewardTable 含 aux 行会加载致命(B4 Rule 1 预留值拒绝)、A5 GDD AC-12/13 登记 deferral。
# 2026-09-14 跨评审回写批(/review-all-gdds 🔴-1/🔴-2 修复,owner=b3/b1/d2 GDD 代用户修订):
# 批1(D2 漂移批 + B3 接口漂移批)——status_effect.mvp_content.defense_up magnitude −50→−30(减伤墙批
# 2026-09-13 C3 投值的对侧回写落地);rng_service.scope_event_binding 增 encounter 绑定 + referenced_by 增 B1;
# stream_seed_derivation 增 salt_encounter=0x8EBC6AF09C88C6E3 与第 6 常量黄金向量(encounter m=42 scope0)+
# set_master_seed 全流零计数前提;terminology 免伤轮词条随减伤墙批退役旧例。
# 批2(B1 重算批)——status_effect.anchor_warning F0 回执腿读数更新(E_dig 7.2→4.5)+ 参照回迁迁移注记关闭;
# clause3_supply.direction_precheck 增 2026-09-14 重算回执(现行值链破线 ≈0.48×/0.47×、约束升格曲线级——
# 禁独立调参联动网络 m_w↔D_ref↔m_d↔duration_d);clause5_dominance 增重算回执(v3 曲线四态 + 需求 110.3/166.8 +
# 裁决②维持 + 护栏 W2 待重推注记);settlement_table.mechanics 增 B1 F6 充能与护甲克制结算规格登记(W3)。