fix(terrain-variation): 变异布置基数修正——数量公式百分比基数由总格数改候选池格数(2026-09-21 用户拍板)

初始展开平均占全板 56–67%,总格数基数使变异在剩余可挖格中的有效密度膨胀 4–6 倍
(实测:L1 10×10 板配置 5% 实际 30.1%,极端板可挖格 100% 覆盖;L2 25.8%/L3 23–26%)。
修正后 percent 语义 = 占可挖安全格比例,关卡递增由 per_level_bonus 绝对格数承载;
表值 percent=5/per_level_bonus=2 不动(provisional 归难度曲线与Boss 调参批)。

- battle_orchestrator._place_variants:公式基数 candidates.size();头注同步
- smoke:布置公式上限断言同步候选池基数;非零金丝雀改条件式(L1 无加成极小池
  round 至 0 = 合法零布置,与池空同口径)
- 文档五处同步:GDD 地形变异正文公式行+调参表、registry variation mvp_content、
  variation.tres 尾注、variation_table schema 头注

验证:冒烟 550 项 0 失败(run_smoke 三闸过);同种子 36 局(24 普通+12 完美)A/B——
变异触发 8.08→4.83 次/局(-40%),荆棘触发 177→51,变异占主角承伤 31.9%→19.6%;
全冒险通关 3/36→17/36(同种子窗小样本,正式重基线归调参批)。
This commit is contained in:
DKChan committed 2026-09-21 19:23:03 +08:00
1 parent d8023037d5
commit 6e8babdcfd
6 files changed
+26 -12

No files matched your search

@@ -81,7 +81,7 @@
变异在战斗初始化末段布置:初始展开完成、地图战斗资源格设置之后,由战斗结算的编排段执行。候选池非空时从池内均匀选一类型,按布置参数生长连通片写入格子快照:
- 数量 = round(总格数 × percent_of_cells / 100) + (关卡序号 − 1) × per_level_bonus(当前 5% + 每关 +2——图规模百分比兼顾大小图,关卡递增承载"越深越险";provisional 归难度曲线与Boss)。
- 数量 = round(候选池格数 × percent_of_cells / 100) + (关卡序号 − 1) × per_level_bonus(当前 5% + 每关 +2——百分比的基数是候选池格数而非总格数:初始展开通常占全板过半,按总格数取数会使变异在剩余可挖格中的实际密度远超配置值(2026-09-21 用户拍板基数修正);percent 承载"占可挖格比例",关卡递增由 per_level_bonus 绝对格数承载"越深越险";provisional 归难度曲线与Boss)。
- 形状 = 全连通生长(8 邻),单片 ≤ pack_max(当前 4:2×2 / 1×4 / 1×3+1 等形;2026-09-19 用户拍板)。
- 候选格域 = 安全格 − 初始展开区,且排除雷格。
- 布置取数走专用随机流(variant_place,一板恰一 scope),换图/轮内刷新图各取号一次,确定性可复放。
@@ -124,7 +124,7 @@
| 参数 | 现行值 | 归属 |
|---|---|---|
| 布置数量基数 percent_of_cells | 5(总格数百分比) | 难度曲线与Boss(provisional) |
| 布置数量基数 percent_of_cells | 5(候选池格数百分比,2026-09-21 基数修正) | 难度曲线与Boss(provisional) |
| 关卡递增 per_level_bonus | +2 格/关 | 难度曲线与Boss(provisional) |
| 连通片上限 pack_max | 4 | 定稿值(2026-09-19 用户拍板形状约束) |
| 直伤量 effect_value | 荆棘丛 1 / 岩浆 2 / 落石 3 | 难度曲线与Boss(provisional,加法核 [1,9]) |