C3 难度曲线与精英/Boss(Difficulty Curve & Elite/Boss)
状态:In Design · lean 格式
版本:v2 · 2026-09-14 · 作者:DK + design-system
承载支柱:P4 地牢下探的探险氛围(主)· P1 推理的掌控感 / P3 风险与收益同源(难度即压力源)
一句话:C3 定义"难度 = f(关卡序号, 节点深度, 精英/Boss 修饰)"中每一项随进度如何变化——敌人强度曲线、雷图压力曲线、奖励供给曲线与精英/Boss 修饰语义的唯一数值所有者。
复核注记:v1 solo 出稿 → 经 /design-review(lean 单会话)NEEDS REVISION 8 blocking,同日修订核销(本 v2);专员/总监代理未咨询——生产前人工复核保留。
速览
| 关键问题 |
答案 |
| 定位 |
数值 owner 而非机制 owner:表结构归 D2、生成算法归 A1、结算规则归 B1、敌种机制归 B2——C3 以行值与参数驱动已定稿机制,形成"越下越险"的进度体感(P4);玩家不直接感知本系统(Indirect),它是体感背后的统一坐标系 |
| 拥有 |
EnemyTable / BoardGenTable / RewardTable / RewardConfigTable / HeroTable 行值与参数 · DifficultyTable 修饰结构位(MVP 空表)· 难度期望表(按 (L,D) 的期望胜轮带 / 期望承伤占 max_hp 比 / 通关率目标带 / 通关余量带——调参的"正确行为"基准)· 生存链区间模型(替代关级供给带:每战 S/K 区间三档判定 + 关级通关恒等式 + 输出占比带)· 七步调参流程 · P_perfect 乘数调参权 · m_w 调参通道(终值共裁 B4/B1)· B1 对账约束清单的承接与消解 |
| 不拥有 |
表结构(D2)· 生成算法(A1)· 结算规则与护甲克制矩阵机制(B1——C3 投值)· 敌种机制(B2)· 变异机制框架(A4——C3 只投内容行)· 精英节点完整语义(C1 联动)· 元进度天赋数值(C4——C3 是其世界侧对照物)· 呈现(B2/B5/D1)· encounter 掷骰执行(B1 编排)· 供给控制器机制本体(B4——C3 投参数) |
| 上游输入 |
D2 表 schema 与 R1 解析 · B1 条款③⑤对账输出(B1 F4/F5 = 约束生成器)· B2 字段语义与校验域 · B4 联动重算义务与供给控制器机制 · A1 F4 批量红线 · 切片 v3 行集实测数据(含减伤墙批) |
| 下游输出 |
各基表行值(经 ConfigDB 单点读取)· 每战 S/K 区间与三档判定数据面(level_monte_carlo actuals 生产,B4/B1 对账消费)· 难度期望表(C2 难度排布 / C4 天赋标定基准——区间平移换算率:+10hp ≈ +1 轮、atk 翻倍 ≈ K 减半)· unlock_level 投放计划(A4)· "何时变难"数据面(B2/B5/D1 呈现消费) |
| 硬约束 |
运行时零新增公式(C3 侧数值直填基表行;机制本体——encounter 掷骰 / 护甲克制 / 供给控制器——归各 owner GDD,C3 只投行值与参数)· 可推理率 target ∈ [0.85, 1] 绝对锚不可下探 · 条款③⑤与预警⑥约束内调参或显式扩界 · 联动网络六组禁独立调参 · 每次修订强制走七步流程 · 全部值 provisional 起步随 playtest 修正 |
体验锚点
Indirect 体验一句话:玩家不操作本系统,但每一分钟都在感受它——第二层的熊地精比第一层的地精更凶、关底 Boss 的压迫性血量、"这一层开始有雾了"的解锁节奏,本系统是这些体感背后的统一坐标系。
| 支柱 |
关键词 |
机制承诺 |
| P4 越下越险的压迫节奏 |
"这一层开始有雾了" |
每层一个可感知难度台阶:新敌种登场 / 新行为环段 / 新变异解锁 + 基准数值跳升(L 轴)与温和加压(D 轴);台阶可感知但可解释——跃升可归因于可见变化而非纯数字膨胀(后者产生"被坑"感而非"变险"感);可量化形态 = S/K 区间随 (L,D) 的漂移轨迹(绿→黄→红空间分布) |
| P1 攻克的对照物 |
"我变强了" |
首关基线明显吃紧但多数玩家能过(通关率目标带);后续关卡陡升使 C4 天赋提升产生可测量的通关期望改善——区间平移换算率(+10hp ≈ +1 轮、atk 翻倍 ≈ K 减半)使"我变强了"从体感变为可推导结论 |
| P3 压迫的顶点 |
"Boss 房开门前" |
恢复点/囤刀决策压力顶点——供给稀缺性在此处兑现价值;Boss 血量压迫由 Boss 血量锚承载 |
| 锚点时刻 |
"三拍 vs 单拍" |
第二层首遇熊地精——三拍行为环 vs 地精单拍攻击,难度跃升有具体面孔;击杀 Boss——"这层我算下来了"的完成感 |
- 参考感受合成:Peglin 的地图难度爬升 × 杀戮尖塔的 Act 结构(普通→精英→Boss 三段节奏)→ 本作 = 关间大台阶 × 关内小坡度 × Boss=Dmax 关底压轴。
全局流程
难度曲线生成(设计期直填 → 运行时直读)
F7 调参流程(每次行值修订强制走完——七步)
出口分发
| 出口 |
触发 |
动作/去向 |
约束 |
| 调参通过 |
七步全 PASS |
行值生效 → 期望表复算 → 调参日志登记 |
期望偏离必须登记,禁止静默出带 |
| 调参失败 |
任一步 FAIL |
回滚行值或登记 OQ |
禁止带病前进 |
| 红档组合 |
任一战 S_max ≤ K_min |
扫描步拦截,行值禁止入表 |
配置事故——区间模型判定 |
| 期望表偏离 |
调参后越出通关率/余量带 |
回滚或 OQ 登记 |
禁止静默出带(状态表同名行) |
| 投放断档 |
某关无新敌种且无新环段 |
流程投放检查项拦截 |
内容生产缺口——C3 调参无法修补(数值不是内容) |
核心规则
| # |
规则 |
要点 |
依据 |
| 1 |
难度承载结构 = 直填行值主体 + DifficultyTable 修饰结构位 |
全部 (level_index, node_depth) 维度最终数值直填各基表行(EnemyTable / BoardGenTable / RewardTable——切片已验证的工作方式:R1 floor 解析直读、零新机制);DifficultyTable 仅承载"按坐标施加的全局修饰"结构位(键 (L,D)、乘数域;施加点 = B2.spawn 实例化时套乘于行值快照之前)——MVP 不产生任何修饰行(空表结构位;首个使用场景 = 精英节点;Boss 走 Dmax 直填行、不走修饰表) |
D2 接口漂移规则;registry difficulty_table;B2 实例化条款"接口未定"预留由本条兑现 |
| 2 |
难度 = f(L, D) 双轴语义 |
L 维(关间)= 大台阶——每关至少一项新内容投放(新敌种 或 新行为环段 或 新变异解锁)+ 基准数值跳升;D 维(关内)= 小坡度——同敌种数值平缓上移(坡度域见关内深度坡度公式)、板参数温和加压(尺寸/密度小步上调,推理率 target 不低于 0.85 绝对锚);Boss = 各关 Dmax 行(A1 登记约定兑现)——数值大台阶 + 专属行为环 + 专属板形,见 Boss 遭遇语义条 |
B2 投放节奏规则(OQ8);Boss 血量锚公式(F3);A1 第三轴登记约定 |
| 3 |
敌种投放节奏 |
每关至少一个新敌种或既有敌种新环段投放;MVP 投放 = L1 三段(goblin→bugbear→ogre_chief,行值总表);DND 更名批生效:grub→goblin、ambusher→bugbear、boss_guardian→ogre_chief——registry/B2/D1/art-bible 键集随本修订批对齐;多敌种同深度选择规则:MVP 每行集恰一敌种(B2 锁定),C1 分支地图定稿时若需同深度多敌种选择,走预登记改键通道——本 GDD 预留不定义 |
B2 投放节奏规则(OQ8);B2 多敌种共裁项(OQ7);D1 键集冲突② |
| 4 |
切片行集转正为 MVP 默认曲线 |
垂直切片调参登记的行集有实测依据,转正为 MVP 默认值——权威枚举 = 「MVP 行值总表」(v3,出处 = 切片 .tres),旧登记表(grub 时代值)由本表替代;后续 L2+ 曲线数值随关卡内容扩展填充(结构本条已定,数值行随内容扩展) |
MVP 行值总表;L2+ 数值开放问题(OQ1) |
| 5 |
Boss 遭遇语义 |
① Boss = 关卡末节点 = Dmax 行(LevelTable 末节点必须 Boss——schema 校验);② Boss 数值台阶 = hp 取本关普通战斗 hp 期望总和的 0.5–1.1 倍 + atk ≥ 本关普通战最高行 atk(本次重定义——原"高于均值一档"无档位定义;现值 Boss 9 ≥ bugbear 9 ✓)+ 专属行为环(含 charge 拍——玩家可规划的安全挖掘拍);③ Boss 板 = 本关最大板形 + 密度上探(受可推理率 target 绝对锚约束);④ Boss 战胜利 = 关卡通关(C1/C2 域编排) |
Boss 血量锚公式(F3,加难走廊 [1.1, 1.35] 预登记);LevelTable schema 校验;A1 第三轴登记约定 |
| 6 |
精英节点(MVP 不实现,语义预留) |
elite_ / boss_ 前缀字段命名空间预留保留;精英修饰完整语义(独立节点类型/词缀系统/出现规则)归 C1 关卡节点地图定稿后的联动设计——分支地图中"同深度并存精英与普通节点"触发棋盘生成端强制重审(改键走 D2 接口漂移规则);本 GDD 承诺:DifficultyTable 结构位 + 命名空间预留足以承载,不预写语义 |
A1 第三轴登记约定(命名空间预留 + 定稿强制重审) |
| 7 |
A4 全局变异语义(scope=global 兑现) |
scope=global 行 = 该变异施加于整板全部合格格(区别于 region 的区域布置);全局变异仅 Boss/精英图可产生(普通图禁用——加载期校验:global 变异的布置行须伴随 elite/boss 标记;MVP 无标记字段前 = MVP 不产生 global 行,A4 既有 warning 承载);MVP 不定义任何具体全局变异行(岩浆/冰冻无 MVP 容器——A4 锁定),本条只锁定语义框架与禁用面 |
A4 scope=global 预留位条款;A4 例外表 warning 行 |
| 8 |
遭遇随机化(区间 unit_count) |
EnemyTable 行 unit_count 升级为区间语义 [unit_count, unit_count_max](域 [unit_count, 3],B2 上界锁定不变);掷骰经 RngService encounter 封闭流——接口漂移登记完成:registry 流集合含 encounter、B1 begin_battle 掷骰增补、B2 spawn override 参数与 unit_count_max 字段增补、D2 schema 两字段增补;细则见下表 |
registry rng_service(encounter 增流登记);B1/B2/D2 增补条款(X-6~X-8);遭遇随机化细则表 |
| 9 |
调参约束内工作纪律(B1 对账输出承接) |
C3 每次行值修订必须走满七步调参流程,且不得触碰已锁约束边界——四条边界见下表(B1 条款③⑤对账输出与预警⑥ = "禁止独立调参"纪律的量化边界,C3 调参必须在其内工作或显式扩界;registry 回执见依赖节对账登记表) |
F7 七步流程;B1 条款③⑤对账输出;对账登记表 |
MVP 行值总表(权威枚举,出处 = 切片 .tres v3)
| 关卡 |
深度 |
enemy_id |
display_name |
hp |
atk(区间) |
unit_count(_max) |
pattern |
armor_type |
| L1 |
D0 |
goblin |
地精 |
24 |
7 [4,10] |
1 (2) |
[attack] |
none |
| L1 |
D1 |
goblin |
地精一伙 |
13 |
5 [2,8] |
2 (3) |
[attack] |
none |
| L1 |
D2 |
bugbear |
熊地精 |
40 |
9 [6,12] |
1 |
[attack, charge, heavy] |
a |
| L1 |
D3 |
bugbear |
熊地精双雄 |
18 |
6 [3,9] |
2 (3) |
[attack, charge, heavy] |
a |
| L1 |
D4 |
ogre_chief |
食人魔酋长 |
150 |
9 [6,12] |
1 |
[attack, attack, charge, heavy] |
b |
| L2 |
D0 |
bugbear |
熊地精 |
30 |
7 [4,10] |
1 |
[attack, charge, heavy] |
a |
| 表 |
转正行集(登记值) |
| BoardGenTable L1 深度轴 |
D0/D1 10×10 · D2–D4 12×12 · d0.25/t0.88 · attempts 24 |
| HeroTable |
atk = 6 · max_hp = 50 |
| RewardTable 要点 |
格子池四行即时类(attack_up 20 / defense_up 16 / spark_aoe 16 / heal_minor 15)· 注入池三行可选类(knife_t1 60 / knife_adv 30 / heal_pack 10——供给控制器注入)· clear_blast 40(clear_default 槽,instant_aoe 当场兑付,完美 ×2) |
| RewardConfigTable |
t_fog_min=2 · k_dmg=0(保底语义由战斗首件保证取代)· n_draft=32 · p_min=8 · active_p0=0.4 · active_decay=0.5 |
| SettlementTable 增补字段 |
damage_a_per_cell=1 · damage_a_cap=8 · damage_b_per_flag=2 · armor_effectiveness 克制矩阵(base/dmg_a/dmg_b × none/a/b——特化 ×150 / 无甲 ×100 / 对位 ×50)· p_perfect=200 · D_ref=12 |
- 实测依据:期望扫描 N=15–30 × 多种子 + 8 种子密度实验 + 试玩批次 1 + 减伤墙批。
- v3 数值批(试玩批次 1 裁决):atk 4/4/6/4/7 → 7/5/9/6/9(约 +50%,承伤侧主杠杆);D0 24 保持防秒杀(20hp 会被首轮盲挖粉尘秒杀——12+9);Boss 130→150(用户拍板可上调)。
- 区间批(现行):奖励五行 power 区间化(heal_minor [2,6] / knife_t1 [5,11] / heal_pack [6,18] / knife_adv [10,22] / clear_blast [25,55]——身份批内 roll,中点恒等原值)+ 敌方 atk 区间化(上表 [min,max],遭遇骰同流 spawn 期整战持久,±3 provisional)——宽度均 provisional 归本 GDD 测量迭代;A3 条款①当量锚以中点口径维持;验收口径 = 完美策略档 0 加成通关 ≤40%(OQ7)。
- 加难走廊(带锚定稿预登记):L1 基线通关率目标 [30%, 50%],现扫描 60% 越上界——杠杆候选 = r_boss 上探走廊(Boss 180–207,见 Boss 血量锚公式)+ 群战上探 + 供给 decay 0.5→0.6;扫描验证待执行(OQ7——本会话无 godot 运行时),落带前 v3 值维持 provisional-pending-scan。
遭遇随机化细则(Core Rule 8)
| 项 |
语义 |
| 区间语义 |
unit_count 升级为 [unit_count, unit_count_max];unit_count_max 可省略——缺省 = 定值,旧行零迁移 |
| 域 |
[unit_count, 3](B2 unit_count 上界锁定不变) |
| 掷骰时点 |
B1.begin_battle 实例化期(扫雷开始前)按区间均匀骰定本战实际数量(B1 GDD 增补条款) |
| 敌种不变 |
同敌种掷骰——不触碰 B2"每行集恰一敌种"锁定 |
| 随机通道 |
RngService encounter 封闭流(registry 流集合已登记);scope_event_binding = 每次战斗实例化恰一 scope;发生在挖掘决策域之外(P1 合规) |
| 消费方式 |
B1 掷骰 → B2.spawn 以 override 参数接收实际数量(B2 零随机纪律保持——收到的即确定值;B2 GDD 增补条款) |
| 教学位豁免 |
新敌种首遇节点固定数量不加骰(D0 goblin ×1、D2 bugbear ×1 固定——行值总表) |
| 可回放性 |
同种子全程可回放(流取号确定性不变) |
| 设计原则 |
数量是比单体质变更优先的深度表达(关内深度坡度公式 Example 延伸);期望总量对齐关级恒等式检算 |
调参约束边界(Core Rule 9)
| # |
约束边界 |
内容 |
| ① |
条款③满配破线 |
unit_count>1 的行须满足"降密度或降 m_amb"补偿——registry clause3_supply 已登记;切片群战行 hp/atk 下调为合规先例 |
| ② |
条款⑤清图支配性 |
约束包①需求对 clear_blast(instant_aoe,C = power = 40)重推:缺口 = 46.1−40 = 6.1(L1)/ 91.8−40 = 51.8(L2)——登记为非支配设计态 + OQ4 playtest 观测弃图率(原 clear_knife C=8/16 模型由现行登记替代) |
| ③ |
可推理率绝对锚 |
target ∈ [0.85, 1] 不可下探(P1 生成端保证) |
| ④ |
期望表对照 |
调参后期望表必须复算并在 README 调参日志登记偏离 |
枚举
DifficultyTable(新表,MVP 空表——结构位)
| 项 |
值 |
语义 |
| 键 |
(level_index, node_depth) |
按坐标施加的全局修饰 |
| 乘数域 |
[0.1, 10](registry 预登记) |
套乘施加点 = B2.spawn 实例化时、行值快照之前;越域 → clamp 至域界 + warning(registry 登记的显式例外——组合事故非配置事故,非 fail-fast 场景) |
| MVP 行集 |
空(零修饰行) |
首个使用场景 = 精英节点;Boss 走 Dmax 直填行、不走修饰表;建表走 D2 接口漂移规则 |
EnemyTable.unit_count 区间语义(Core Rule 8)
| 字段 |
域 |
语义 |
| unit_count |
int [1, 3] |
区间下界;旧行语义 = 固定数量 |
| unit_count_max |
int [unit_count, 3],可省略 |
区间上界——缺省 = 定值,旧行零迁移;掷骰 = B1 实例化期区间均匀骰 |
RngService 流集合(encounter——已登记)
| 流 |
scope 绑定 |
消费点 |
语义 |
| encounter |
每次战斗实例化恰一 scope |
B1.begin_battle 实例化期(扫雷开始前) |
unit_count 区间均匀骰——同敌种数量随机;发生在挖掘决策域之外(P1 合规);同种子全程可回放 |
A4 变异 unlock_level 门控序列(投放计划归 C3)
| 序 |
内容 |
门控 |
说明 |
| 1 |
普通图(无变异) |
基线 |
— |
| 2 |
雾 |
unlock_level = 2(A4 锁定) |
雾参数 f≤8d / ≤0.25(P1 度量绝对上限) |
| 3 |
岩浆/冰冻 |
随关卡扩展 |
无 MVP 容器(A4 锁定)——投放计划归 C3 |
数值结论与推导
定位声明:C3 是数据系统——运行时零新增公式(数值直填基表行,运行时仅经既有 B1 乘区 / B2 接口 / R1 直读运作)。本节全部公式为设计期工具式(曲线拟合基准、区间估算、对账复算),执行载体 = 调参期批量工具(level_monte_carlo.gd / reward_expectation.gd,见 F7),不进入游戏运行时。全部数值 provisional 起步,随 playtest 修正。
F1 关内深度坡度(D 轴小坡度)
结论:hp_D = round(hp_0 × (1 + s_hp × D))——每档 +5%–20%,Dmax=4 处 1.2–1.8 × D0、Dmax=5 处 1.25–2.0 × D0(同敌种内);MVP 直填行近似此式、不运行时计算;敌种切换(新敌种登场)不受本式约束——台阶值直接定。
推导
Variables:
| Variable |
Symbol |
Type |
Range |
Description |
| 深度基准值 |
hp_0 |
int |
[1,999] |
该敌种 D0 行 hp |
| 坡度系数 |
s_hp |
float |
[0.05, 0.20] |
每深度档增幅 |
| 节点深度 |
D |
int |
[0, Dmax] |
节点深度(Boss = Dmax) |
验算与边界:
| 项 |
内容 |
| Example |
goblin 24hp:D1 理论 24×1.1 ≈ 26——切片实际以"群×2"(13hp ×2–3 只)表达深度压力:数量是比单体质变更优先的深度表达(保持单拍环低威胁读数、总量受控) |
F2 关间台阶(L 轴大台阶)
结论:base(L+1) ≈ base(L).Dmax × k_L、k_L ∈ [1.3, 1.6]——k_L 作用于同敌种基准(敌种延续场景,如 L2 bugbear 延续至 L3);新敌种登场时基准按其环复杂度重定(三拍环单位 hp 低于单拍环同关值——切片先例:bugbear 40/18 < goblin 群总量但威胁更高)。
推导
Variables:
| Variable |
Symbol |
Type |
Range |
Description |
| 关间系数 |
k_L |
float |
[1.3, 1.6] |
下一关 D0 基准 = 本关 Dmax × k_L(数值跳升 + 新敌种/新变异共同构成台阶感) |
验算与边界:
| 项 |
内容 |
| Output Range |
相邻关数值倍率 1.3–1.6;叠加新敌种环复杂度,实际体感台阶更大 |
| 反例 |
L1 Dmax 酋长 150hp → L2 D0 bugbear 基准 ≈ 210 的直推不成立——新敌种登场基准按环复杂度重定,k_L 仅适用于敌种延续场景(L2 锚行 30/7 为内容行非 k_L 直推) |
F3 Boss 血量锚
结论:boss_hp ≈ round(Σ普通战斗hp期望 × r_boss)、r_boss ∈ [0.5, 1.1]——"Boss 是本关最大的单场消耗",量级上探至全关消耗;加难走廊 [1.1, 1.35] 预登记(带锚定稿——L1 通关率压带首选杠杆,扫描终裁后落带)。
推导
Variables:
| Variable |
Symbol |
Type |
Range |
Description |
| 本关普通战斗 hp 期望总和 |
Σ普通战斗hp期望 |
float |
[1,999]×N |
本关全部非 Boss 节点的敌方 hp 期望合计(含 unit_count 区间骰期望——口径与击杀侧恒等式统一) |
| Boss 占比 |
r_boss |
float |
[0.5, 1.1](走廊 [1.1, 1.35]) |
Boss 相对全关消耗的血量锚 |
验算与边界:
| 验算 |
读数 |
判定 |
| L1 v3:Σ = 36(D0 [1,2]×24)+ 32.5(D1 [2,3]×13)+ 40(D2)+ 45(D3 [2,3]×18)= 153.5 → Boss 150/153.5 ≈ 0.98 |
带内 |
✓(口径更正:旧验算 Σ=142 为固定数量口径与旧 Boss 值混算,由本行替代;口径与击杀侧恒等式统一) |
| 走廊验算 |
Boss 180/153.5 ≈ 1.17、200/153.5 ≈ 1.30 ∈ [1.1, 1.35] |
走廊内 ✓ |
| 败北分布 |
向 Boss 集中(4/6) |
符合压迫预期 ✓ |
F4 生存侧:期望承伤与 S 区间
结论:E[承伤/场] ≈ Σ_rounds Σ_enemies E[beat_dmg] × (1 − E[减伤] − weaken覆盖);对照带 ≤20%/普通场、≤50%/Boss 场。派生生存区间 S = [(HP进战 + 治疗下界) ÷ 入伤峰值, (HP进战 + 治疗上界) ÷ 入伤谷值]——区间模型三档判定的生存侧输入。
推导
Variables:
| Variable |
Symbol |
Type |
Range |
Description |
| 每拍期望伤害 |
E[beat_dmg] |
float |
[0,999] |
敌 atk × 拍别乘数(heavy=2)+ 伏击 flat(+3×层数,帽 4)——行为环确定性轮转 |
| 减伤期望 |
E[减伤] |
float |
[0,0.6] |
defense_up 授予率 × 当次减伤(−30×2 层帽 −60%——减伤墙批现行值) |
| weaken 覆盖 |
E[weaken覆盖] |
float |
[0,0.65] |
标中旗 −65% 输出对战斗轮的覆盖期望——生存侧最大单一杠杆(P3 兑现点) |
| 入伤峰值/谷值 |
d_max / d_min |
float |
[0,999] |
峰值 = heavy 齐射尖峰 + 伏击满层、零减伤;谷值 = charge 拍 + 全减伤 |
验算与边界:
| 验算 |
读数 |
判定 |
| D0 goblin ×1(7atk 单拍环)每结算恒 7 × (1−0.22 平均减伤) ≈ 5.5/轮 → 裸 R_survive ≈ 50/5.5 ≈ 9 轮 |
— |
L1 五战 S 区间手算见区间模型验算表 |
| 减伤墙批注 |
defense_scan 实测墙轮 39%、真人 12/12 轮零承伤满血通关 → defense_up −50→−30、石肤权重 24→16 |
承伤带复验责任随批(B3 侧注记已挂) |
F5 通关率目标带(期望表核心)
结论:通关率按 (L, 天赋档) 目标带验收——L1 基线 30–50%(带锚定稿,替换原 40–60%);区间机制解释:+100% atk → K 区间近似减半 → K_max ≈ S_min 转绿档 → ≥95%。真人方向更正:批次 1 实测真人显著强于模拟者(v2 真人 100% vs 模拟 80%)——原"真人预期低于模拟"方向声明由本结论更正;带按模拟口径定义,真人系数批次 2 标定(OQ3)。
推导
Variables(目标带):
| 目标带 |
基线(无天赋) |
中天赋(+100% atk) |
高天赋(+200%) |
| L1(首关) |
30–50% |
≥95% |
100% |
| L2 |
20–40%(provisional,随 OQ1 校准) |
60–80% |
≥90% |
| L3+ |
10–25%(provisional) |
40–60% |
60–80% |
验算与边界:
| 项 |
内容 |
| v3 扫描 |
基线 60%——越 [30,50] 上界 → 加难杠杆批内即调(带锚定稿杠杆:r_boss 走廊 + 群战上探 + decay 0.6 候选);扫描落带前登记 provisional-pending-scan(OQ7) |
| 完美策略档扫描(OQ7;工具 = smoke/auto_player.gd 完美档求解器 + level_monte_carlo 策略轴) |
区间批后复测(2026-09-14,N=30):0 加成通关仍 100%、剩余 HP 均 47.4/50、承伤均 3.9(区间前 3.5)、踩雷 0.00/局——+50%~+200% 恒 100%;承伤带与 F5 带对技能轴上界零分辨力(calibration_gap 定量读数)。实测结论:奖励侧 + 敌方侧数值区间已全部落地仍压不动完美档——其结构性优势(零踩雷直伤 + 全标旗 weaken 顶格 + 快杀)使 47/50 血缓冲吞掉全部值域方差;≤40% 验收线需结构性杠杆(承伤硬地板 / weaken 饱和语义 / 完美度定价)或极端宽度(毁基线与可读性,建议否决)——待用户裁决(OQ7 待拍板主项) |
| 败北分布 |
向 Boss 集中(4/6)✓;+200% 天赋 100% ✓ |
| 机制钩子 |
天赋列由区间位移承载(K 减半 → 绿档),非独立拍脑袋带 |
F6 生存链区间模型(替代关级供给带)
结论:原关级供给带(比值 ∈ [1.1, 2.0])由本模型替代——其验算 0.54"短缺态"与实测 60% 通关矛盾,方向指引反指(对偏易的游戏报"加供给")。现行 = 生存链区间模型:每战 S/K 区间三档判定(绿=稳定通过 / 黄=期望通过 / 红=配置事故禁止入表)+ 关级通关恒等式 + 输出占比带。设计期工具式,运行时零公式。
推导
Variables:
| Variable |
来源 |
Description |
| 入伤 |
表值 + actuals |
敌 atk × 拍别乘数 + 伏击 flat − 减伤 − weaken(F4) |
| 输出 |
表值 + actuals |
基础攻击 6×(1+attack_up) + 伤害A(开格充能 1/格 帽 8,甲A ×1.5/甲B ×0.5)+ 伤害B(标雷充能 2/雷,甲B ×1.5/甲A ×0.5)+ 刀(8/16,不吃 percent) |
| 一次性伤害 |
表值 + actuals |
clear_blast 40×清图数(完美 ×2)、囤刀倾泻 |
| 治疗 |
表值 + actuals |
heal_pack 12 + heal_minor 4(注入/格子池期望) |
| 数量骰 |
表值 |
unit_count 区间 [unit_count, unit_count_max] |
验算与边界:
| 项 |
内容 |
| L1 五战区间手算(≈ 估算,p10–p90 口径) |
D0 goblin×1(教学位固定):S≈[7,12] vs K≈[2,4] → 绿 ✓ · D1 ×[2,3]:S≈[4,10] vs K≈[2,6] → 黄 · D2 bugbear(首遇固定):S≈[4,12] vs K≈[2,6] → 黄 · D3 ×[2,3]:S≈[2,6] vs K≈[2,7] → 黄偏红 · Boss 酋长:S≈[4,15](旗覆盖率主导)vs K≈[7,18](囤刀+甲B 对策)→ 黄红边缘 |
| L1 形态带 |
≥1 绿(教学位)+ 中段黄 + Boss 黄不红——手算形态符合 ✓ |
| 关级恒等式漏项审计 |
原供给 180 的漏项:clear_blast 只算一次(实际 ×清图数 3–4 = 120–160)、伤害A/B 充能、attack_up 增量、RAP 刷新新板追加供给——逐项入账后闭合,"0.54 短缺"消失 |
| 输出占比带 |
奖励侧输出(刀+clear_blast+A/B 充能)÷ 总输出 ∈ [15%, 40%]——<15% 奖励摆设、>40% 供给依赖(AC-14) |
| 口径注记 |
区间两口径:公式包络(必过/必死结论)与 actuals p10–p90(日常判定——B1 actuals p10 纪律同构);HP 持久化耦合各战区间,联合分布由 monte_carlo 裁决 |
| C4 平移换算率 |
+10hp ≈ +1 轮(÷d̄≈8–10);atk 翻倍 ≈ K 减半——区间位移机制承载通关率天赋列,非独立拍带 |
F7 调参流程(每次修订强制走完——七步)
结论:改表值 → smoke_all 全绿 → level_monte_carlo 扫描(通关率带 + 三档判定 + 通关余量 + 占比)→ B4 登记常数与对账重制 → 对账复算(条款③⑤/预警⑥)→ README 调参日志登记——任一步 FAIL → 回滚或登记 OQ,禁止带病前进。
推导
Variables:
| Variable |
Symbol |
Type |
Range |
Description |
| 批量样本量 |
N |
int |
≥256(正式)/ 15–30(切片临时) |
正式批量工具 = level_monte_carlo 扩展(逐行聚合 + N 参数化 + 区间分位/降级统计)——扫描执行本体归 A1 F4 工具交付(A1 OQ1),C3 的 level_monte_carlo 扩展为消费方(所有权澄清:A1 工具产出 actuals → C3 扫描消费,非替代) |
验算与边界:
| 项 |
内容 |
| Output Range |
任一步 FAIL → 回滚或登记 OQ,禁止带病前进 |
| Example |
切片 d0.28 回退先例:d0.28/t0.87 → best≈0.81 降级告警 → 回退 0.25/0.88——第 2 步(A1 生成质量闸)拦截的成功案例 |
| 第④步依据 |
B4 义务 #10:"C3 调参流程若无'登记常数与对账重制'步骤则相关 AC 假失败"(T_fog_min/K_dmg/N_draft/P_min/默认根行值调参 → B4 AC-19 对账对 (knife_adv, attack_up_basic) 漂移检测、AC-6 分支 4、AC-18 重跑) |
状态
| 状态 |
进入条件 |
行为/出口 |
| 未调参行 |
新增 (L,D) 行仅有结构占位 |
经七步流程 → 已调参 |
| 已调参行 |
行值经批量仿真 + 期望表对照 + 对账复算 |
任何修订 → 重走七步流程 |
| SLICE-TUNED 转正 |
切片临时值经本 GDD 背书(行值总表 v3) |
→ 已调参(切片行集转正条款) |
| provisional-pending-scan |
加难杠杆候选值已登记、扫描步未执行 |
扫描落带 → 已调参;越带 → 回滚候选 |
| 期望表偏离 |
调参后期望值越出目标带 |
→ 回滚或 OQ 登记(禁止静默出带) |
不变式:C3 无运行时状态机(数值系统);设计期任一行值恒处于上表五态之一;期望表偏离禁止静默出带。
边界情况
| 条件 |
行为 |
依据 |
| unit_count>1 行与高密度板组合 |
条款③满配语境破线(B1 F4 双轴约束)——该组合禁止入表;切片先例 = 群战行 hp/atk 下调补偿;对账复算在流程第 5 步强制执行 |
Core Rule 9① / B1 F4 |
| 关卡深度轴缺行(如 D3 缺失、D4 存在) |
调参期冒烟断言拦截(跨表存在性检查——C3 调参工具域载体;D2 R1 fail-fast 语义不动);R1 floor 解析静默兜底至低档(难度降而非崩)+ ConfigDB warning 四元组仅作运行时兜底——缺行根因是调参事故而非运行时事件 |
AC-1 / D2 R1 |
| 请求越界关卡(level 999) |
R1 floor 解析至表尾行(难度封顶 = 尾行值)+ warning——冒险结构(C2)应在其内容覆盖范围内生成关卡序列;越界 = 内容生产缺口,非玩家可达态 |
D2 R1 |
| 玩家天赋拉满(atk+200%)打最低难度行 |
速杀退化(预警⑥——战斗 1–2 轮终局、奖励系统饿死自己的高光);处置 = 预警⑥仪表监控(战斗结束未开资格格占比 >70% 警)+ 接受——低难度行被高天赋速杀是 Roguelike 成长兑现的合法形态,无需修复(区间形态:K_min < 2 = 预警⑥观测位) |
区间模型 / 预警⑥ |
| 密度上探压垮推理率(d0.28 案例) |
best inferability ≈0.81 < target 0.87 → 降级告警"接受最优出图";处置 = 回退(切片先例:0.28/0.87 → 0.25/0.88)——密度与 target 是联动对(A1 求解器能力的天花板内联动调参),禁止为难度牺牲 P1 度量达标;流程第 2 步闸拦截 |
F7 / A1 F4 |
| 条款⑤清图支配性反转(弃图率 >30%) |
玩家普遍发现"挖一半就弃图刷 RAP"优于"推到底清图"→ 清图奖励与清图体验被支配;处置 = OQ4 playtest 观测(自动模拟者不弃图,测不到真人策略);届时杠杆 = C 量级上调(B1 约束包①,现值 clear_blast 40)或弃图成本重定价(A3 域)——MVP 接受当前非支配设计态(缺口 6.1/51.8,实测后再裁) |
B1 F5 / OQ4 |
| 投放节奏断档(某关无新敌种且无新环段) |
OQ8 违例——敌信息总量见底,学习曲线枯竭;处置 = 流程投放检查项(每关至少一项新内容——敌种投放节奏条款);违规 = 内容生产缺口,C3 调参无法修补(数值不是内容) |
B2 OQ8 / AC-6 |
| 全部行值调至域上限(hp 999 等) |
数值可行但可玩性崩塌;处置 = 通关率带对照拦截(期望表全面越带 = 配置事故)+ 域校验既有护栏;本场景属调参事故而非玩家可达态 |
F5 / D2 域校验 |
| DifficultyTable 修饰行与直填行值叠加后越域(首个精英节点上线时) |
B2.spawn 套乘后 hp >999 → clamp 至域界 + warning(fail-fast 不适用——修饰乘数是合法配置,越界是组合事故;域界 = 玩法硬顶);MVP 空表无此场景,规则预登记 |
DifficultyTable 乘数域 |
| 通关余量越带 |
p90 >13(赢得从容)→ 生存侧杠杆优先(治疗稀有度下调 / 敌 atk 上探),击杀侧杠杆次之;p10 <3(1–2 血惨胜成常态)→ 治疗供给上浮或 Boss 前恢复点增益——余量是形态指标,与通关率带联合判读 |
AC-13 / 区间模型 |
依赖
上游:
| 系统 |
性质 |
接口要点 |
| D2 |
上游(硬) |
全部基表 schema、R1 解析、ConfigDB 单点读取归 D2;C3 产出 = 行值;DifficultyTable 新表走 D2 接口漂移规则(registry difficulty_table 已登记);禁绕过 ConfigDB 自建 load(D2 Rule 2);RngService encounter 封闭流(registry 已登记);EnemyTable schema +2 字段(unit_count_max、armor_type)——接口漂移已回写 D2 |
| B2 |
上游(硬) |
EnemyTable/HeroTable 行值由 C3 填(B2 拥有字段语义与校验域);修饰施加点 = B2.spawn(实例化时套乘、行值快照之前);spawn override 参数 + unit_count_max 字段语义 + 物种集 {goblin, bugbear, ogre_chief}——接口漂移已回写 B2;投放节奏 OQ8 共担;多敌种同深度选择规则共裁(OQ7——C1 联动) |
| B1 |
上游(soft,事实依赖) |
条款③⑤对账输出 = 调参约束输入(B1 F4/F5 = 约束生成器);P_perfect 乘数调参权归 C3(B1 登记);begin_battle encounter 掷骰增补 + 护甲克制结算(armor_effectiveness/damage_a/damage_b 字段)——接口漂移已回写 B1;期望口径双读数纪律(锚行读数不得用于 unit_count=2 放行);对账复算义务随每次修订 |
| B4 |
上游(soft) |
RewardTable/RewardConfigTable 参数值归 C3;供给控制器机制本体归 B4(转正登记——首件保证 + 指数递减注入,active_p0/active_decay 参数归 C3);clear_blast 换位 + K_dmg=0 转正(B4 保底语义迁移);敌 hp 曲线与奖励供给禁止独立调参(registry 联动重算义务——区间模型恒等式为联合检算工具);调参期批量仿真义务载体 |
| A1 |
上游(类型依赖) |
BoardGenTable 行值归 C3(含 max_gen_attempts 策略);禁反向调用生成(仅经 D2/编排器传值);F4 批量红线(严格零降级)= 调参闸;F4 全量批量工具 = A1 交付物(A1 OQ1),C3 level_monte_carlo 扩展为消费方;d0.28 回退先例 = 密度×target 联动调参的实证;黄金向量/solver_rules 冻结不经 C3 |
| A4 |
上游(soft) |
scope=global 语义由本 GDD 定稿(Core Rule 7);unlock_level 门控序列投放计划归 C3(随关卡扩展);AC-11 未来腿 = elite/boss 标记字段落地时 A4 warning 升闸——已登记为 A4 接口漂移义务 |
| A3 |
上游(soft) |
ActionEconomyTable 联动观测(ap_per_round 双重身份——节奏兼 RAP 转存规模)——联动评估归 C3,调参所有权归 A3(措辞更正:A3 GDD 无调参权授予回执);跨字段校验(动作成本 ≤ ap_per_round)约束内观测 |
| B3 |
上游(soft) |
StatusEffectTable 四行强度(attack_up +50 / defense_up −30 / weaken −65 / ambush +3)provisional 归 C3 联动评估(B1 免伤轮合法性注记——强度评估归 C3 对账联动);减伤墙批(−50→−30)为 B3 侧行值批,C3 承伤带复验随批 |
下游:
| 系统 |
接口要点 |
| C1 |
节点深度语义消费;精英节点形态联动(精英节点预留条款 / A1 定稿强制重审);未设计——Boss=Dmax 约定即为其预留的接口 |
| C2 |
关卡序列的难度排布消费本 GDD 期望表;越界关卡 = 内容生产缺口(边界情况表);未设计 |
| C4 |
下游(远)——元进度天赋数值的"世界侧对照物":通关率目标带(F5)是 C4 天赋强度的标定基准;区间平移换算率(+10hp ≈ +1 轮、atk 翻倍 ≈ K 减半)为 C4 设计输入;未设计 |
| 呈现层(B5/D1) |
Boss 登场仪式感 / 难度台阶可感知性——视觉义务归 B2/B5,C3 仅提供"何时变难"的数据(见呈现与 UI 契约) |
双向一致性核对(registry / systems-index 回执):
| 编号 |
内容 |
对侧 |
状态 |
| X-1 |
systems-index 依赖表 C3 ← D2,B2;B1 块增补"C3 消费 B1 对账输出的事实依赖成立" |
systems-index |
✅ |
| X-2 |
"敌种 hp/atk/pattern 曲线数值、难度修饰 → C3" |
B2 |
✅ |
| X-3 |
"C3 = 条款③⑤约束输入方" |
B1 |
✅ |
| X-4 |
"权重/档位/威力曲线 + RewardConfigTable 参数归 C3" |
B4 |
✅ |
| X-5 |
"每行难度数值与曲线 → C3" |
A1 |
✅ |
| X-6 |
B1:begin_battle encounter 掷骰增补 + 扫描 scope 腿 + B1"零随机"边界扩界注记(encounter 流在结算步流之外) |
B1 |
✅(本次修订批回写) |
| X-7 |
B2:spawn override 参数、unit_count_max 字段语义与实例化记号调和、物种集 {goblin, bugbear, ogre_chief} |
B2 |
✅(本次修订批回写) |
| X-8 |
D2:EnemyTable schema +2 字段(unit_count_max、armor_type);SettlementTable +4 字段(damage_a_per_cell/damage_a_cap/damage_b_per_flag/armor_effectiveness) |
D2 |
✅(本次修订批回写) |
| X-9 |
B4:供给控制器机制承接 + clear_blast 换位 + K_dmg=0 禁区条款解除(保底语义迁移) |
B4 |
✅(本次修订批回写) |
| X-10 |
A4:elite/boss 标记字段落地时 warning 升闸(AC-11 未来腿) |
A4 |
✅(义务登记) |
对账与义务登记(B1 对账输出承接——审计资产):
| 编号 |
内容 |
对侧 |
状态 |
| 条款③ |
满配破线两轴:unit_count>1 行须满足"降密度或降 m_amb"补偿(B1 F4 双轴约束)——registry clause3_supply 登记在案 |
B1 / registry |
已登记——切片群战行 hp/atk 下调为合规先例 |
| 条款⑤ |
清图支配性:46.1/91.8 需求 vs clear_blast C=40 现值(缺口 6.1/51.8,对 clear_blast 重推)——登记为非支配设计态;预留杠杆 = C 量级上调(B1 约束包①)或弃图成本重定价(A3 域) |
B1(B1 F5) |
已登记——OQ4 playtest 持续观测弃图率 |
| 预警⑥ |
快杀退化:战斗结束未开资格格占比 >70% 警——高天赋速杀低难度行 = 合法形态,仪表监控不修复;区间形态钩子 = K_min < 2 观测位 |
B4 / B1 |
已登记 |
| unit_count 约束 |
区间 [unit_count, unit_count_max] ⊆ [1,3];>1 行联动条款③复算(流程第 5 步强制) |
B1 / B2 |
已登记 |
| 期望口径双读数 |
锚行读数(2.0×/2.6× 类)不得作为 unit_count=2 的放行依据 |
B1 |
已登记 |
呈现与 UI 契约
C3 无自有视觉/音频/UI 资产(数值系统)——义务转注如下;无新增资产需求、无 D1 新增义务登记。
| # |
义务 |
归属 |
| 1 |
Boss 登场呈现(仪式感锚点——体验锚点"压迫的顶点");设计输入 = Boss=Dmax 行的数据面(本 GDD 提供) |
B5 战斗表现 / D1 |
| 2 |
难度台阶可感知性:新敌种 = 新图像线索 = 台阶的可视面孔(意图推测型——图像线索档位编码,"这只比上层的硬"可读) |
B2(D1×4 义务) |
| 3 |
变异解锁的"这一层有雾了":图例与首遇提示(已登记义务) |
A4 / D1 |
| 4 |
期望表 / 批量仿真输出 = 调参期开发工具(headless——非游戏内 UI) |
开发工具 |
| 5 |
恢复点/奖励点呈现:C1-lite 切片已实现的节点覆盖层;正式形态归 D1/C1 |
D1 / C1 |
Tuning Knobs
C3 是全项目 knob 保有量最大的系统(数值 owner)。全部值 provisional 起步;域与校验归各表 schema(D2);本表只登记所有权、联动与危险方向。
| Knob |
表 |
域 |
联动 |
过高 |
过低 |
| EnemyTable.hp/atk(逐行) |
enemy.tres |
[1,999] / [0,999] |
与 B4 供给禁独立调参(区间模型恒等式联合检算);cap×atk 禁独立(B2) |
打不死、战斗冗长 |
快杀退化预警⑥ |
| EnemyTable.unit_count / unit_count_max(逐行) |
enemy.tres |
[1,3] / [unit_count,3] |
>1 行须降密度或降 m_amb(条款③);区间骰经 encounter 流 |
条款③破线 |
压力不足/遭遇零随机 |
| EnemyTable.pattern(逐行) |
enemy.tres |
MVP 三值组合 |
OQ8 投放节奏(每关新环段) |
信息过载 |
学习曲线枯竭 |
| EnemyTable.armor_type(逐行) |
enemy.tres |
{none, a, b} |
克制矩阵联动(settlement armor_effectiveness);伤害A/B 充能消费面(B1 域,C3 投值) |
克制失配 |
特化对策失效 |
| HeroTable.atk/max_hp |
hero.tres |
[1,999] |
全部输出式的分母锚(F4/F6) |
奖励价值稀释 |
挫败感 |
| BoardGenTable 尺寸/密度/attempts(逐行) |
board_gen.tres |
域见 schema |
密度×target 联动(d0.28 回退先例);unit_count>1 行联动 |
推理率不达标降级 |
板退化(低密度先布后删) |
| BoardGenTable.inferability_target(逐行) |
board_gen.tres |
[0.85,1] 绝对锚 |
与密度成反耦 |
生成耗时/降级 |
P1 空心化 |
| BoardGenTable 雾参数 |
board_gen.tres |
f≤8d / ≤0.25 |
unlock_level=2 锁定 |
P1 度量空心(绝对上限) |
雾内容缺位 |
| RewardTable.weight/power/tier(逐行) |
reward.tres |
域见 schema |
区间模型恒等式;攻击面稀释;clear_blast 单行槽 |
即时类淹没明细/可选类贬值 |
窗口空转/重 roll 频发 |
| RewardConfigTable.{t_fog_min,k_dmg,n_draft,p_min} |
reward_config.tres |
域见 schema |
k_dmg=0 = 保底断言关闭(禁区条款已解除——保底语义由首件保证取代) |
保底永不触发 |
种子轮盘致命 |
| 供给控制器 active_p0/active_decay |
reward_config.tres |
[0,1] / (0,1] |
E[战斗获取]≈1 目标(B4 机制本体承接);与敌 hp 联动 |
速杀+囤积回归 |
可选类绝育 |
| SettlementTable.{damage_a_per_cell,damage_a_cap,damage_b_per_flag,armor_effectiveness} |
settlement.tres |
域见 schema |
Boss 甲B 对策 = B 充能;A 克制甲A;联动网络 #6 |
Boss 裸打过慢 |
充能失效 |
| ActionEconomyTable.{ap_per_round,rap_refresh_cost,refresh_max_per_round} |
action_economy.tres |
域见 schema |
ap 兼 RAP 转存规模;调参所有权归 A3,C3 联动评估 |
轮次冗长 |
决策密度坍缩 |
| SettlementTable.P_perfect(乘数) |
settlement.tres |
{100,200} |
完美排雷×清图支配性互 feed |
钓鱼线(护栏 B) |
高光缺位 |
| DifficultyTable 修饰乘数(MVP 空表) |
difficulty.tres(待建) |
[0.1,10](registry 预登记) |
精英节点上线时启用 |
越域 clamp+warning |
无修饰 |
DifficultyTable schema(difficulty.tres 待建——D2 接口漂移建表)
| 字段 |
类型/域 |
默认 |
knob |
| level_index + node_depth(复合键) |
int × int |
— |
✗(结构键) |
| 修饰乘数 |
float [0.1, 10](registry 预登记域) |
—(MVP 空表无行) |
✓(精英节点上线时启用;越域 clamp + warning——域界 = 玩法硬顶) |
| elite_ / boss_ 前缀预留字段位 |
命名空间预留(D2 schema 断言期望暴露) |
无 |
✗(预留,随精英节点语义定稿) |
联动网络(禁止独立调参清单)
| # |
联动 |
纪律 |
| 1 |
敌 hp ↔ 奖励供给(registry 已锁) |
单边移动必走区间模型恒等式联合检算 |
| 2 |
unit_count ↔ 密度/m_amb(条款③) |
群战行上线前的强制复算 |
| 3 |
密度 ↔ target ↔ attempts(A1) |
d0.28 回退先例的三元组 |
| 4 |
ap_per_round ↔ RAP 体系 ↔ refresh 上限(A3 + 轮内刷新批) |
跨字段校验闸承载 |
| 5 |
m_w(weaken −65)↔ 锚对照表(B1 F0) |
终值共裁 B4/B1,调参走 C3 提案通道 |
| 6 |
armor_type ↔ 伤害A/B 充能 ↔ 克制矩阵(B1 域) |
敌种甲型变更须复算 Boss/普通战 K 区间 |
验收标准
| AC |
Given |
When |
Then |
| AC-1 |
LevelTable 任一 battle/boss 节点 (L,D);ConfigDB 加载全部表 |
调参期冒烟断言逐节点查两表 |
board_gen 与 enemy 两表存在该 (L,D) 精确行(跨表护栏⑧转正——载体 = C3 调参期冒烟断言;运行时 floor 兜底属 D2 R1 既有语义) |
| AC-2 |
MVP 全部 (L,D) 行 |
逐行扫描 inferability(批量 N=256/行——A1 F4 工具交付后的正式红线) |
全部行 inferability ≥ target ≥ 0.85(P1 绝对锚)且 A1 断言族(退化板/R₀≠S)零违例 |
| AC-3 |
EnemyTable 全部 unit_count>1 行 |
条款③复算(密度 × m_amb 组合) |
无破线组合存在(Core Rule 9①) |
| AC-4 |
MVP 全部行集(区间模型) |
level_monte_carlo 逐战 S/K 区间扫描 |
零红档组合(S_max ≤ K_min 禁止入表);教学位绿档;L1 形态带 = D0 绿 + 中段黄 + Boss 黄不红(F6 三档判定) |
| AC-5 |
期望表目标带(F5) |
level_monte_carlo 全带扫描(基线/+100%/+200%) |
L1 基线通关率 ∈ [30, 50](现值 60% 越上界——加难杠杆批内执行,扫描落带前 provisional-pending-scan);越带须 OQ 登记——禁止静默出带 |
| AC-6 |
L1 全部行集 |
枚举敌种与环段 |
每关至少一项新投放(新敌种或新环段——OQ8;L1 = goblin→bugbear→ogre_chief 三段 ✓) |
| AC-7 |
Boss 行(Dmax) |
F3 检算(期望口径 Σ=153.5) |
r_boss 记录在案(现值 0.98 带内 ✓;越带须 OQ 登记——加难走廊 [1.1,1.35] 走 OQ2/扫描) |
| AC-8 |
每轮刷新 |
计数达 refresh_max_per_round |
第 N+1 次拒绝(表值驱动——A3 域行为,C3 侧验收 = 联动评估记录存在) |
| AC-9 |
任何 C3 直辖 knob 修订 |
检查其联动网络(Tuning Knobs 六组) |
对应联合检算记录存在于调参日志(禁止独立调参纪律的流程面) |
| AC-10 |
DifficultyTable MVP 空表 |
B2.spawn 任一 (L,D) |
无修饰行被消费(结构位不产生行为)且未来首行上线时套乘点 = 行值快照前 |
| AC-11 |
scope=global 变异行 |
MVP 腿:扫描 VariationTable 全行 |
MVP 无 global 行存在(表级约束)且 A4 warning 通道在位;未来腿:elite/boss 标记字段落地时加载/生成期拒绝(A4 接口漂移义务——X-10) |
| AC-12 |
每次调参批 |
检查 README 调参日志 |
七步流程的执行记录齐备(流程纪律的可审计面) |
| AC-13 |
通关余量(新指标) |
level_monte_carlo 通关轨迹采集 |
E[HP_end | 通关] 的 p90 ≤ 13 且 p10 ≥ 3("只剩一点血"量化带——越带按边界情况表杠杆处置) |
| AC-14 |
关级恒等式闭合 |
actuals 逐项审计(流程第③步输出) |
输出侧五项(基础攻击/刀/clear_blast/A+B 充能/attack_up)与输入侧(承伤/治疗/减伤)合计闭合 Σ敌hp期望×(1+缓冲),残差 <5%(provisional 阈值)且奖励输出占比 ∈ [15%, 40%] |
开放问题
| # |
悬案 |
进展 |
owner |
时机 |
| OQ1 |
L2+ 曲线数值——本 GDD 定结构/流程/目标带;具体数值行随关卡内容扩展填充(内容与数值同批——C2 关卡序列定稿后) |
结构已定 |
C3 随批 |
L2 内容扩展时 |
| OQ2 |
Boss 血量占比——v3 记录值更正 0.98(153.5 期望口径,带内 ✓);加难走廊 [1.1, 1.35] 预登记(Boss 180–207 候选);真人实测 Boss 战时长后终裁 |
走廊预登记 |
C3 |
F7 扫描 + playtest 批次 2 |
| OQ3 |
真人修正系数——批次 1 方向确认:真人显著强于模拟者(v2 真人 100% vs 模拟 80%);F5 方向声明已更正落地;真人系数待 v3 试玩采集定量 |
方向已定 |
C3 + playtest |
playtest 批次 2 |
| OQ4 |
条款⑤支配性真人观测——批次 1 初步裁决:真人零弃图倾向 → 非支配设计态成立、C 量级不上调 ✓(B1 约束包②采信);P1 对冲弱化同步声明(B1 ② 条件):本裁决弱化 A3 条款⑤对 P1 失败模式的经济对冲,弃图率观测加权监控随之;维持登记:单一样本 |
初步裁决 |
C3 + B4 |
持续 |
| OQ5 |
精英节点形态——完整语义(独立节点/词缀/出现规则)= C1 分支地图定稿后的联动设计(A1 定稿强制重审随之触发) |
未设计 |
C3 + C1 |
C1 GDD 定稿 |
| OQ6 |
轮内刷新对难度模型的冲击——批次 1 初步读数:刷新零使用,根因是盲猜墙不足(inferability 0.88);杠杆预登记:密度联动上探(d0.28/t0.85——A1 回退先例风险);保持开放 |
初步读数 |
C3 |
playtest 批次 2 |
| OQ7 |
加难杠杆扫描执行 + 完美策略档测量——杠杆候选(r_boss 走廊 180–207 / 群战上探 / decay 0.6)已预登记;执行 = 七步流程第③步 level_monte_carlo 扫描(三档判定 + 通关率带 + 通关余量 + 占比四表对照)。2026-09-14 完美策略档落地(用户拍板):零盲挖/全标旗/卡死刷新技能轴上界测量仪(godot 本机可用已验证)。区间批已落地并复测(同日拍板②——奖励五行 power 区间 + 敌方 atk 区间 ±3):完美档 0 加成仍 100%(承伤 3.5→3.9)——数值区间杠杆族对 ≤40% 验收线无效已实测坐实;主项待裁决 = 结构性杠杆三选(承伤硬地板〔不可减免平伤,B1/B2 域〕/ weaken 饱和语义〔全标旗收益递减,B3/B1 域〕/ 极端区间宽度〔建议否决——毁基线与数字可读性锚〕);落带前 v3 值 provisional-pending-scan |
完美档已测;区间批无效性已证;结构杠杆待裁决 |
C3 |
用户裁决后 |
试玩批次记录
| 批次 |
日期 |
数值基线 |
读数 |
裁决产出 |
| 批次 1(用户本人) |
2026-09-12 |
v2 |
全部满血通关(清图为主/优先标雷/不用道具三策略均通)——基线难度不足定量坐实;Boss 血量 OK 或可上调;刷新零使用;零弃图倾向;治疗包零使用(不掉血伴生);伤害道具无特色(暂保留) |
v3 数值批(atk 4/4/6/4/7 → 7/5/9/6/9;D0 24 保持防秒杀、Boss 130→150)+ DND 命名批(goblin/bugbear/ogre_chief——用户指令)+ 护甲克制批(armor_type none/a/b + 克制矩阵,数值 provisional)+ F3 带修订 + OQ2/3/4/6 读数;v3 扫描:基线 60%、败北向 Boss 集中 4/6、+200% 100%;下一批 = v3 真人试玩(OQ3 定量 + OQ2 终裁) |
| 减伤墙批(defense_scan 触发) |
2026-09-13 |
v3 + 减伤墙批 |
defense_scan 实测墙轮 39%、真人局 12/12 轮零承伤满血通关——减伤墙过强定量坐实 |
defense_up magnitude −50→−30(叠满两层 = −60 帽)+ 石肤权重 24→16(attack_up 升池内最高行)——B3 侧行值批,C3 承伤带(F4)复验责任随批 |
版本历史
| 版本 |
日期 |
改动 |
| v2 |
2026-09-14 |
/design-review 修订批(8 blocking 核销 + 4 项用户拍板):F6 供给带退役 → 生存链区间模型(S/K 区间三档判定 + 关级恒等式 + 输出占比带 + C4 平移换算率——用户设计)· 带锚定稿(通关率 [30,50] / 通关余量 p90≤13 & p10≥3 / L1 形态带)· F3 口径统一 Σ=153.5 / r_boss 0.98(旧验算 142 替代)+ 加难走廊预登记 · F4 升级生存侧(S 区间)· F5 带 [30,50] + 真人方向更正 · MVP 行值总表 v3 转正(切片 .tres 权威源,旧 SLICE-TUNED 表替代)· DND 更名生效(goblin/bugbear/ogre_chief)· 四批转正登记(armor_type / K_dmg=0 / clear_blast 换位 / 供给控制器归 B4——用户拍板)· B1/B2/D2/registry 接口漂移回写(X-6~X-10)· F7 六步→七步(B4 对账重制步)· AC-4/5 重写 + AC-13/14 新增 · 条款⑤重推(C=40,缺口 6.1/51.8)· Boss atk 台阶重定义 · 减伤墙批补录 · OQ7 新增(扫描执行) |
| v1-lean |
2026-09-13 |
格式迁移:legacy 原稿按 lean 样例重排——修订注记出正文收敛至本表;规则/枚举/边界情况/对账登记/AC 转表格;曲线生成与调参流程转字符画;公式、Variables 与验算数据全保留;F3 带按现行 [0.5, 1.1] 成文;语义零变更 |
| 试玩批次 1 / v3 数值批 |
2026-09-12 |
遭遇随机化引入(unit_count 区间语义 + RngService encounter 封闭流——Roguelike 局感引入批,Peglin 对比报告结论 2 的本切片落地项);F3 带修订 [0.35, 0.55] → [0.5, 1.1];v3 数值批(atk 7/5/9/6/9、Boss 130→150、D0 24 保持防秒杀)+ DND 命名批 + 护甲克制批;OQ2/3/4/6 读数登记(条款⑤非支配设计态采信) |
| 初稿 |
2026-09-12 |
solo 模式出稿:九核心规则 + F1–F7 + 12 AC + 六 OQ;SLICE-TUNED 转正声明;Boss=Dmax 约定、DifficultyTable 结构位与 scope=global 语义定稿 |