merge: 迭代18卡⑤混编遭遇首批投放批落籍(纯内容零代码——enemy.tres 首个混编行 (2,5,giant_spider) 巨蜘蛛巢群紧随既有 (2,5,bugbear) 熊地精行=R6 相邻双行行集〔P1 甲 L2 单点试水,d5 案:d7 落集成路径+Σ顶格淘汰〕,行值整行复制 (2,6) 巢群行=P4 甲零数值新增,Σ最坏骰和 1+3=4≤4 静态自证,教学位/Boss d9/既有 19 行零触碰;断言面随迁=expect_pools 三元键池模板+行数 19→20+⑦b 三断言〔行序/Σ≤4/行值同源〕,批末冒烟 814/0+run_all 17 套+探针全绿+doc 三闸零新增+MC 零跑顺延 Alpha 收官批在案;07:174 逐行骰措辞订正+⑱ 目检与读数义务新节;roadmap 卡⑤行换代;worktree iter18-mixenc ad36e35/6272fc8/43b1306/36882e2)

This commit is contained in:
DKChan committed 2026-10-07 06:54:21 +08:00
commit 0dbe3c351b
5 files changed
+199 -4

No files matched your search

+10 -1
View File
@@ -165,10 +165,19 @@
- **红灯信号**:战斗结算后弹奇物;门票进持有集;货架出现专长单件(非门票形态);refresh 件写进角色加成区。 - **红灯信号**:战斗结算后弹奇物;门票进持有集;货架出现专长单件(非门票形态);refresh 件写进角色加成区。
- **结论回流**:呈现面违规改法+档位呈现三路=C1 待裁(呈现批);强度体感归 M-4 带判读(本批 MC 只测不判)。 - **结论回流**:呈现面违规改法+档位呈现三路=C1 待裁(呈现批);强度体感归 M-4 带判读(本批 MC 只测不判)。
### ⑱ 首批混编遭遇目检与读数义务(迭代 18 卡⑤投放随批登记——首个混编遭遇落表)
- **投放内容**:(2,5) 双行行集 = 熊地精重击手(既有行零变更)+ 巨蜘蛛巢群(新行,行值整行复制 (2,6) 巢群行——零数值新增);行序 = 重击手在前(默认目标)·巢群在后(R6 行序契约:文件序 = 声明序 = 生成序)。
- **实机目检三项**(混编遭遇至少触发一次——L2 节点 5):同场两敌种呈现(重击手与蜘蛛同屏);行序与表一致(默认目标 = 重击手,蜘蛛随后);实例总数 ≤4 目视(3-4 只 = 重击手 1 + 蜘蛛 2-3)。
- **难度带读数义务**:L2 含混编后的难度带位移——随 Alpha 收官 M4 数值批统一执行,届时另报批(本批 MC 零跑)。
- **首遇教学位与断言面复核(本批已履行)**:巨蜘蛛首遇位 (2,4)「固定 2 不加骰」零触碰、钩爪恐魔 (3,0)/(3,1) 固定数量零触碰;expect_pools 三元键池模板 + (2,5) 行集构成/行序/静态最坏骰和 ≤4 断言随批入冒烟全绿。
- **红灯信号**:(2,5) 只出一种敌种;敌人数 5 只以上(越 spawn 守卫应不可能——出现即报缺陷);首遇位 (2,4) 数量出现掷骰波动(应恒 2)。
- **Boss 多行(第二批投放)六面读数清单维持**:Boss 名取首行显示 / Boss 遭遇骰逐行区间骰(每行各掷自己区间——卡① Q8 逐行骰换代口径)/ 半血解锁 / 独占技 / 难度带 / 首遇教学位复核——逐项过,随第二批任务书执行。
## 验收读数重测义务(履行留痕 + 现行义务) ## 验收读数重测义务(履行留痕 + 现行义务)
**已履行**(按序换代,旧读数各随其批作废留痕不入本单):①验收读数重测批(2026-09-19——Boss 单独出列/承伤带/通关率基线全量重测,硬化翻倍期·乏力死效果期·充能期旧读数作废);②迭代 5 基线重测(统一随机流后 MC+verifier 双窗);③**数值修复批新尺重测(2026-10-01)**——模拟档位重构后全量重测,新锚 `sim-data/runsum_numfix_final_n200_20261001.jsonl`,全旧带作废只测不判([numfix 报告](../qa/numfix-newruler-readings-2026-10-01.md));④**迭代 10 奖励重构批重锚(2026-10-01)**——四代锚 77000/78000/79000/80000(改前/重构后/共享池后/掷定前置后,各 400 局),普通 L1 41.8%/L2 10.2% 带内([读数报告](../qa/m3-iter10-clear-rate-readings-2026-10-01.md));⑤**T19 真人标定局收口(2026-10-03 用户裁)**——有效局 2(1 通关 1 死于 L3 首战,[读数报告](../qa/t19-real-playtest-readings-2026-10-02.md)),用户裁定**佐证级收口不再补局**;k 预期带同日立(**正常 >0.5、预警 <0.3**),字段随 81000 重锚入库后补算终值。 **已履行**(按序换代,旧读数各随其批作废留痕不入本单):①验收读数重测批(2026-09-19——Boss 单独出列/承伤带/通关率基线全量重测,硬化翻倍期·乏力死效果期·充能期旧读数作废);②迭代 5 基线重测(统一随机流后 MC+verifier 双窗);③**数值修复批新尺重测(2026-10-01)**——模拟档位重构后全量重测,新锚 `sim-data/runsum_numfix_final_n200_20261001.jsonl`,全旧带作废只测不判([numfix 报告](../qa/numfix-newruler-readings-2026-10-01.md));④**迭代 10 奖励重构批重锚(2026-10-01)**——四代锚 77000/78000/79000/80000(改前/重构后/共享池后/掷定前置后,各 400 局),普通 L1 41.8%/L2 10.2% 带内([读数报告](../qa/m3-iter10-clear-rate-readings-2026-10-01.md));⑤**T19 真人标定局收口(2026-10-03 用户裁)**——有效局 2(1 通关 1 死于 L3 首战,[读数报告](../qa/t19-real-playtest-readings-2026-10-02.md)),用户裁定**佐证级收口不再补局**;k 预期带同日立(**正常 >0.5、预警 <0.3**),字段随 81000 重锚入库后补算终值。
**现行义务**:**T7 技能池节奏重测(2026-10-05 技能池执行批挂单)**——≥50 distinct seeds 节奏重测(过涝判读带=Boss 半血后特殊技密度上探;跑批须用户批准;S2 过涝越带→解锁技权重/倍率回调呈报禁自动调;**2026-10-06 联审批注:判读带立单于案C 行为换代前,执行前须按案C 新行为复核「半血后」窗口与密度分母是否仍有效,失权即停机呈报重立带**)→ ~~T19 真人标定局~~(⑤已收口)→ 真人侧读数换 81000 锚补算 k 终值(随迭代 9 出口重锚批出,模拟锚 2026-09-19 判读报告的现行锚地位由 81000 锚+真人两局承接)。工具面:`analyze_playtest.py` / `balance_verifier.py` 冒险段 / JSONL 日志现役。 **现行义务**:**T7 技能池节奏重测(2026-10-05 技能池执行批挂单)**——≥50 distinct seeds 节奏重测(过涝判读带=Boss 半血后特殊技密度上探;跑批须用户批准;S2 过涝越带→解锁技权重/倍率回调呈报禁自动调;**2026-10-06 联审批注:判读带立单于案C 行为换代前,执行前须按案C 新行为复核「半血后」窗口与密度分母是否仍有效,失权即停机呈报重立带**)→ ~~T19 真人标定局~~(⑤已收口)→ 真人侧读数换 81000 锚补算 k 终值(随迭代 9 出口重锚批出,模拟锚 2026-09-19 判读报告的现行锚地位由 81000 锚+真人两局承接)。工具面:`analyze_playtest.py` / `balance_verifier.py` 冒险段 / JSONL 日志现役。
**后续内容批义务(2026-10-06 敌人表行集多行批 P3 丙二裁挂单)**:首个混编遭遇行投放(连同 Boss 多行内容,敌种候选与坐标由内容批裁)——投时 MC 取证先报批(数值验证场景二档起)、难度带读数义务随投登记、首遇教学位纪律与 expect_pools 断言面逐项复核(巨蜘蛛首遇位「固定 2 不加骰」等表注释为准)、Boss 多行投放时 Boss 名取首行显示/Boss 遭遇骰读首行区间/半血解锁/独占技/难度带六面读数逐项过。——**已编入 roadmap 迭代 18 卡⑤混编遭遇首批投放批(2026-10-06 用户令;读数义务维持随批登记,MC 取证跑批顺延 Alpha 收官 M4 数值批统一执行〔未排期,届时另令——数值统一调整殿后〕)** **后续内容批义务(2026-10-06 敌人表行集多行批 P3 丙二裁挂单)**:首个混编遭遇行投放(连同 Boss 多行内容,敌种候选与坐标由内容批裁)——投时 MC 取证先报批(数值验证场景二档起)、难度带读数义务随投登记、首遇教学位纪律与 expect_pools 断言面逐项复核(巨蜘蛛首遇位「固定 2 不加骰」等表注释为准)、Boss 多行投放时 Boss 名取首行显示/Boss 遭遇骰逐行区间骰〔每行各掷自己区间——2026-10-07 卡① Q8 逐行骰换代,旧「读首行区间」口径消解〕/半血解锁/独占技/难度带六面读数逐项过。——**已编入 roadmap 迭代 18 卡⑤混编遭遇首批投放批(2026-10-06 用户令;读数义务维持随批登记,MC 取证跑批顺延 Alpha 收官 M4 数值批统一执行〔未排期,届时另令——数值统一调整殿后〕)。进展:首批已于 2026-10-07 落表((2,5) 双行,目检与读数义务见 ⑱);剩余面 = Boss 多行第二批(六面读数随投逐项过)**
@@ -0,0 +1,132 @@
# 出口报告:混编遭遇首批投放批(迭代 18 卡⑤)
> 成文 2026-10-07。执行 worktree `D:/code/g-plan2-iter18-mixenc`(分支 `iter18-mixenc`,基点 `adadf56`)。任务书 = [任务书-混编遭遇首批投放批-2026-10-07.md](../research/任务书-混编遭遇首批投放批-2026-10-07.md)(v1.2 裁点全裁:P1-P4 全甲)。前置 = 迭代 17 卡①敌人表行集多行批(落籍 `9cc4b8b`,在基线内)。性质 = 纯内容批零代码:只动 `enemy.tres` 数据行 + 表注释 + 冒烟断言面随迁 + 07 清单两处。
---
## §1 T0 开工三查与机制到位复核(2026-10-07 实测)
| 查项 | 结果 |
|---|---|
| 基线冒烟 | `python tools/run_smoke.py` → **811 项检查 0 项失败,三闸全过**(退出码/摘要失败数/脚本错误扫描),无 SCRIPT ERROR——与主控 2026-10-07 实测 master `adadf56` 的 811/0 同数,基线成立 |
| git status 归属 | worktree 树干净(nothing to commit),分支 `iter18-mixenc`,头 = `adadf56`;无并行卡遗留脏文件 |
| 卡①机制①行集校验放开 | `enemy_table.gd` 原「每行集恰一敌种」校验已退役,现为 R6 行序纪律校验(同坐标多行必须文件内相邻,违例报 `rowset_rule`);同坐标同敌种第二行仍由 dup_key(键含 enemy_id)拦截 |
| 卡①机制②每行一骰数量骰 | `battle_orchestrator.gd` 遭遇骰段已逐行化:按行序逐行数量骰、再逐行 atk 骰(区间宽度为零的行不掷 = 定值不骰既有口径);单行行集消费序/次数逐位一致 |
| 卡①机制③expect_pools 新键 | `smoke_all.gd` 池模板断言已换代 `(L,D,enemy_id)` 三元键(19 条目逐行精确比对) |
| 卡①机制④实例总数守卫 | `enemy_table.gd` `ROWSET_INSTANCE_MAX = 4`;`unit_container.gd` spawn 行集受理逐行实例化、各行骰后数量求和 ≤4 fail-fast(超限当场拒启) |
| 07:174 义务对读 | 「后续内容批义务」条在档:MC 取证顺延 Alpha 收官 M4 数值批统一执行(届时另令);「Boss 遭遇骰读首行区间」旧口径在文——本批 T5 订正为逐行骰口径 |
**结论:卡①四件机制全部在 master(=本 worktree 基线)生效,无机制缺口,S1 停机点不触发。**
## §2 T1 设计稿——候选组合 × 坐标全备选案(留痕,白名单内代拍板)
### 2.1 方案族(P1 甲已裁,不再重议)
L2 单点试水,「巨蜘蛛 + 熊地精」双行混编,一处普通节点(d5/d7 候选二选一,属代拍板白名单「候选坐标在同方案族内的微调」)。Boss 多行不入首批(P2 甲);L1 教学段零混编(P3 甲);新行全行值复制同敌种既有行(P4 甲)。
### 2.2 坐标候选全案对照
| 案 | 行集构成(行序 = 文件序 = 生成序) | 静态最坏骰和 Σ(unit_count_max) | 冲突排查 | 裁决 |
|---|---|---|---|---|
| **d5 案**(选定) | 既有 (2,5) 熊地精重击手(固定 1)+ 新增 giant_spider 行(复制 (2,6) 巢群行值:unit_count 2 / max 3) | 1 + 3 = **4 ≤ 4 ✓** | d5 非首遇位(巨蜘蛛首遇位 = (2,4) 固定 2 教学位,不动);非 Boss 位(d9 不动);(2,5,bugbear) 无 dup 冲突(新键 (2,5,giant_spider));**d5 不在 L2 min/max 存储种子集成路径上**(min 0→1→3→7→8→9 / max 0→2→6→7→8→9 均不含节点 5)——冒烟集成跑测零波及 | **选定** |
| d7 案(淘汰) | 既有 (2,7) 巨蜘蛛巢群 [2,3] + 新增 bugbear 行(仅容固定 1 搭档:复制 (2,0) 熊地精 或 (2,5) 重击手行值) | 3 + 1 = 4 ≤ 4 ✓(但零余量顶格) | 淘汰依据:①**d7 同时落在 L2 min/max 两条存储种子集成路径上**(win_min/win_max 通关断言 + 手动驱动选节点 6 开战场面),难度变化直接进入集成跑测的战斗与 RNG 消费面,首批试水波及面最大;②Σ 顶格 4 无余量,静态判据贴守卫上限;③搭档被区间挤到只剩固定 1 一种形态,设计空间最窄;④(2,7) 本就是 L2 最强蜘蛛行(atk 2 / [1,3] / ac 3),再叠伙伴 = 在最难普通节点二次加难,与「单点最小试水」相悖 | 淘汰 |
### 2.3 d5 案内子候选——新行行值来源(P4 甲执行细则,同方案族微调)
| 子案 | 复制来源 | 行值 | Σ 自证 | 裁决 |
|---|---|---|---|---|
| 甲1:复制 (2,4) 首遇教学行 | unit_count 2(固定无 max)/ hp 28 / atk 1 / atk [0,2] / 池 6/2/1 / light / ac 2 | 1 + 2 = 3(全固定,零数量骰) | 淘汰依据:固定数复制会让首批生产内容**完全绕开卡①核心交付面「每行一骰数量骰」**(仅 atk 骰逐行化被触发),单点试水的机制验证价值缩水;且任务书 §4.2 与开工令给的 d5 案演算形态即「固定 1 + 蜘蛛 [2,3]」 | 淘汰 |
| **甲2:复制 (2,6) 巢群行**(选定) | unit_count 2 / unit_count_max 3 / hp 26 / atk 1 / atk [1,2] / 池 6/2/1 / light / ac 2 / display_name 巨蜘蛛巢群 | 1 + 3 = **4 ≤ 4 ✓** | 选定依据:与两份文件演算形态一致(least surprise);**生产内容实打「每行一骰」机制**(重击手定值不骰、蜘蛛掷 [2,3]——同场两种数量语义并存,正是混编试水要验的形态);hp 26 较教学行 28 更低一档,难度噪音并不更大;(2,6) 是文件序上 d5 的下一行,值属同段 progression | **选定** |
| 甲3:复制 (2,7) 巢群行 | unit_count 2 / max 3 / hp 26 / atk 2 / atk [1,3] / ac 3 | 1 + 3 = 4 ≤ 4 ✓ | 淘汰依据:L2 后段强度(atk 2 / ac 3)用于首批单点试水取偏难形态;且复制后 d5/d7 两场蜘蛛面板完全雷同,目检可读性差 | 淘汰 |
### 2.4 行序候选(R6:行序 = 声明序 = 生成序)
| 案 | 生成序 | 裁决 |
|---|---|---|
| **重击手在前、巨蜘蛛巢群在后**(选定) | 默认目标 = 首行重击手(ac 8 精英坦克顶前排),蜘蛛后排输出 | 选定依据:强弱搭配的经典前后排形态;且既有行文件位置零移动,diff 最小、R6 相邻由「新行紧随既有行之后」满足 |
| 巨蜘蛛巢群在前(淘汰) | 默认目标 = 蜘蛛(脆) | 淘汰依据:前排坦克语义倒置;需把新行插在既有行之前,既有行文件位置移动,diff 噪音大 |
### 2.5 禁区与禁令排查(逐项)
- 巨蜘蛛首遇位 **(2,4) 固定 2 不加骰**:零触碰(表注释 :486-487 逐字保持;行集断言「恰一行」语义不受影响——本批不动 (2,4))。
- L2·L3 Boss 位 **d9**:零触碰(P2 甲,Boss 多行不入首批)。
- **跨关混编禁令**(敌种不得早于其首遇位所在关出现):giant_spider 首遇关 = L2、bugbear 首遇关 = L1(L1 d2 教学位)⊂ 投放关 L2 ✓;L1/L3 零触碰 ✓。
- **教学位钩爪恐魔((3,0)/(3,1) 固定数量不加骰)**:L3 零触碰,注释 :518-519 逐字保持。
- 既有 19 行现值(hp/atk/pool/权重/倍率/display_name):零变更,纯插入。
- dup_key:新键 (2,5,giant_spider) 全表唯一 ✓。
### 2.6 执行口径备注(指令摘要与任务书出入留痕)
开工令摘要写「enemy.tres 新增两行」,任务书 v1.2(最高执行依据)T3 写「enemy.tres 新行」且 §4.2 Σ 演算(固定 1 + 蜘蛛 [2,3] → 上限 4)为「既有行 + 1 新行」口径。结构上「同坐标新增两行」不可行:任一 L2 战斗坐标均已有行,双行混编 = 既有行 + 1 新行(若再加一行即成三行行集,超出演算且 (2,5,bugbear) 会撞 dup_key)。**按任务书执行:新增 1 行,行集 = 既有重击手行 + 新巨蜘蛛巢群行,表 19 行 → 20 行。**
### 2.7 选定案白名单依据汇总
坐标 d5(二选一)、行值来源 (2,6) 复制、行序重击手在前——三者均属任务书 §7 代拍板白名单「候选坐标在同方案族内的微调」;敌种组合(P1 甲)、Boss 不入(P2 甲)、教学段保护(P3 甲)、复制行值(P4 甲)全为已裁项,零重裁。
## §3 T3 数据行落地(提交 `6272fc8`)
`game/data/tables/enemy.tres`:新增 1 行 (2,5,giant_spider)「巨蜘蛛巢群」,紧随既有 (2,5,bugbear)「熊地精重击手」行之后(R6 相邻;行序 = 重击手在前、巢群在后);行值整行复制 (2,6) 巢群行(unit_count 2 / unit_count_max 3 / hp 26 / atk 1 / atk_min 1 / atk_max 2 / 池 普攻6·撕咬2·蓄力1 / light / armor_class 2)。表尾追加本批注释块(设计意图/读数预期/Σ 自证/禁区排查)。教学位注释两处(:486-487 巨蜘蛛、:518-519 钩爪恐魔)逐字保持;既有 19 行现值零变更;表 19 行 → 20 行。
## §4 T4 断言面随迁(提交 `43b1306`)
`game/smoke/smoke_all.gd` 四处:
1. expect_pools 增 `"2_5_giant_spider": {"attack": 6, "bite": 2, "charge": 1}`(键 = 卡① (L,D,enemy_id) 三元口径)。
2. 池模板文案「十九行九种」→「二十行九种」,尾部口径改「首批投放 (2,5) 双行……其余坐标仍恰一行」。
3. 混编断言段还原断言 `rows.size() == 19` → `== 20`(表回 20 行零污染)。
4. 新增 ⑦b 三断言:(2,5) 双行且行序 [bugbear → giant_spider](R6 运行面);静态最坏骰和 Σ(unit_count_max,固定行缺省=unit_count) = 4 ≤ 4(守卫同口径);新行行值 = 复制 (2,6)(P4 甲零数值新增)。
首遇位断言逐项复核绿:(2,4) 巨蜘蛛首遇行集「恰一行·固定 2」、L1 D2 固定 1、L3 (3,0)/(3,1) 固定数量——零触碰全绿。
## §5 验证闸数字
| 闸 | 结果 |
|---|---|
| 基线冒烟(T0) | 811/0,三闸全过(与 master 基线同数) |
| 轻闸冒烟(批内两次:T4 后 + 终态复跑) | **814/0 三闸全过**(基线 811 + 3 新断言) |
| probe_gate(ui_input/ui_struct/ui_contrast + 残留清点) | 全绿,本闸残留 Godot = 0 |
| run_all(单元/契约 17 套件) | **all green(17 suites)**——首跑 1 套红(ui_font_asset_test)归 worktree 环境缺口(见 §11),补拷 gitignored 字体 .import 边车后 17 套全绿;与本批改动无关(本批零触碰字体/呈现面) |
| doc 三闸 | 对基线**零新增**:gdd_lint 07 文件 R3 命中 20 = 基线 20(曾自增 1 处=⑱ 标题括号含日期+「批」,当轮改写消除)、R4/R7 与基线逐字同值(存量);doc_link 07 命中 0;doc_term 07 疑似现行 0;全仓存量红(06/03/奇物/design-diagrams 等)均非本批触碰文件 |
| 熵增闸 repo_structure_audit | design/diagrams 越界 1 项 = 存量(基线在案,非本批产生);本批零新文件类别 |
| MC / verifier | **零跑**(顺延 Alpha 收官 M4 数值批,硬约束在案) |
## §6 T5 文档收口(本提交)
1. `design/gdd/07-体验验证清单.md` 两处:
- :174 义务段「Boss 遭遇骰读首行区间」→「Boss 遭遇骰逐行区间骰〔每行各掷自己区间——卡① Q8 逐行骰换代,旧口径消解〕」,并补进展注记(首批已落表,剩余面 = Boss 多行第二批)。
- 新增 **⑱ 首批混编遭遇目检与读数义务** 节:投放内容 / 实机目检三项 / 难度带读数义务(随 Alpha 收官 M4 数值批统一执行、届时另报批)/ 教学位与断言面复核(本批已履行)/ 红灯信号 / Boss 多行第二批六面读数清单维持。
2. `roadmap.md` 卡⑤行状态列换代(✅ 已全批落表 + worktree/提交/闸数字/出口报告指引)——仅动本卡行,符合指令边界。
## §7 实机目检清单(人闸材料——归用户执行,亲口确认方验收)
| # | 目检项 | 通过判据 |
|---|---|---|
| 1 | 混编遭遇呈现(L2 节点 5,至少触发一次) | 同场两敌种:熊地精重击手 ×1 与巨蜘蛛巢群同屏 |
| 2 | 行序与表一致 | 默认目标 = 重击手(前排坦克 ac 8 先接战),蜘蛛随后 |
| 3 | 实例总数 ≤4 目视 | 场上 3-4 只(重击手 1 + 蜘蛛 2-3;蜘蛛数量骰 [2,3] 两形态均正常) |
| 4 | 首遇教学位回归 | L1 d2 熊地精恒 1 只;L2 d4 巨蜘蛛恒 2 只(无掷骰波动);L3 d0 灰矮人恒 1 / d1 钩爪恐魔恒 2 |
| 5 | Boss 位不变 | L2 d9 蛛化卓尔精灵单独出场(无护卫行) |
| 6 | 红灯信号(任一出现即报缺陷) | (2,5) 只出一种敌种;敌人数 ≥5;首遇位数量波动 |
## §8 台账条目草稿(预配号 391——供主控誊入 active.md,本批禁碰 active.md)
> 391. 混编遭遇首批投放批完成(迭代 18 卡⑤,worktree g-plan2-iter18-mixenc 分支 iter18-mixenc 基点 adadf56,批内提交 ad36e35/6272fc8/43b1306/⑤T5 收口批,全部在 worktree 未合并):首个混编遭遇行落表 = (2,5) 双行行集〔熊地精重击手(既有零变更)+巨蜘蛛巢群(新行行值复制 (2,6),P4 甲零数值新增),R6 行序 = 重击手在前〕;设计稿全案留痕(坐标 d5/d7 对照选 d5——d7 落 min/max 集成路径淘汰;行值来源三子案选复制 (2,6)——生产内容实打「每行一骰」;行序重击手在前 = 前排坦克默认目标)。闸 = 冒烟 814/0(基线 811/0,+3 断言)+run_all 17 套+probe_gate 全绿+doc 三闸/熵增存量红零新增(07 ⑱ 标题曾自增 R3 一处、当轮改写消除);一次环境缺口 = worktree 缺字体 .import 边车致 ui_font_asset_test 红,自主区补拷边车(gitignored 不入库)后 17 套全绿,与本批无关。07 收口 = ⑱ 目检与读数义务新节+:174 逐行骰措辞订正;MC 零跑(顺延 Alpha 收官 M4 数值批在案);roadmap 卡⑤行状态列已换代。**下一步待用户 = 实机目检三项+首遇位回归(出口报告 §7),过闸后主区合并落 master。**
## §9 快照草稿(供主控誊入 active.md 顶部快照节)
> 迭代 18 卡⑤混编遭遇首批投放批已实施完成(worktree iter18-mixenc,四提交,未合并):(2,5) 双行混编落表(重击手+巨蜘蛛巢群复制行值,零数值新增)、断言面随迁 814/0、07 ⑱ 义务登记、全闸绿(run_all 17 套/doc 三闸零新增/熵增存量);待用户实机目检三项(§7)后主区合并;Boss 多行第二批与 MC 取证(难度带读数)分别顺延第二批任务书与 Alpha 收官 M4 数值批。
## §10 提交清单
| 提交 | 卡 | 内容 |
|---|---|---|
| `ad36e35` | ⑤T1 | 出口报告落档(T0 三查 + T1 设计稿全案留痕),纯文档 |
| `6272fc8` | ⑤T3 | enemy.tres 新行落表 + 表尾注释块(R6 相邻/行序纪律) |
| `43b1306` | ⑤T4 | 冒烟断言面随迁(expect_pools 模板 + 行数换代 + ⑦b 三断言) |
| 本提交 | ⑤T5 | 07 两处 + roadmap 卡⑤状态列 + 出口报告收尾回填 |
## §11 停机点与偏差记录
- **停机点:无**(T0 机制四件全在位,S1/S2/S3 未触发;全程零 MC 零跑批零机制代码)。
- **偏差一(§2.6)**:开工令摘要「新增两行」与任务书「新行」(单数 + Σ 演算口径)出入——按任务书执行为既有行 + 1 新行 = 双行行集,已留痕。
- **偏差二(环境缺口,非本批缺陷)**:worktree 缺 `game/assets/fonts/ui_font_fusion_pixel_zh_hans.ttf.import` 边车(gitignored,主控建 worktree 拷缓存时漏此件),run_all 首跑 ui_font_asset_test 红("No loader found")。处置 = 自主区只读补拷边车(不改动主区;边车不入 git),复跑 17 套全绿。归 L1 环境自救,与批内容零关联(本批零触碰字体/呈现面)。
+37
View File
@@ -206,6 +206,29 @@ rows = [{
"armor_class": 8 "armor_class": 8
}, { }, {
"level_index": 2, "level_index": 2,
"node_depth": 5,
"enemy_id": "giant_spider",
"display_name": "巨蜘蛛巢群",
"unit_count": 2,
"unit_count_max": 3,
"hp": 26,
"atk": 1,
"atk_min": 1,
"atk_max": 2,
"pool": [{
"skill_id": "attack",
"weight": 6
}, {
"skill_id": "bite",
"weight": 2
}, {
"skill_id": "charge",
"weight": 1
}],
"armor_type": "light",
"armor_class": 2
}, {
"level_index": 2,
"node_depth": 6, "node_depth": 6,
"enemy_id": "giant_spider", "enemy_id": "giant_spider",
"display_name": "巨蜘蛛巢群", "display_name": "巨蜘蛛巢群",
@@ -587,3 +610,17 @@ rows = [{
; 「危险来自雷,不来自杂兵」:杂兵垫刀减半,雷直伤 6/8/8 维持痛感;L2/L3(atk 3 系)本刀不动。 ; 「危险来自雷,不来自杂兵」:杂兵垫刀减半,雷直伤 6/8/8 维持痛感;L2/L3(atk 3 系)本刀不动。
; 全旧带读数随新尺作废重测归本批。 ; 全旧带读数随新尺作废重测归本批。
; 调参二补充:上述八行 atk 区间 1-3→0-2(中点恒等期望当量锚不变式——atk=1 需区间中点同步 1;0=掷点空刀,保随机手感)。 ; 调参二补充:上述八行 atk 区间 1-3→0-2(中点恒等期望当量锚不变式——atk=1 需区间中点同步 1;0=掷点空刀,保随机手感)。
;
; 混编遭遇首批投放批(2026-10-07 迭代 18 卡⑤——任务书 v1.2 裁点全裁 P1-P4 甲;机制前置=敌人表行集多行批
; 已落籍 9cc4b8b):首个混编遭遇行落表 = (2,5) 双行行集〔R6 行序契约:同坐标两行文件内相邻、
; 行序=声明序=生成序——resolver 返回序/生成序/断言面全依赖文件行序〕:
; 行 1 = 既有 熊地精重击手 (2,5,bugbear)(行值零变更);
; 行 2 = 新增 (2,5,giant_spider) 巨蜘蛛巢群——行值整行复制 (2,6) 巢群行(P4 甲零数值新增:unit_count 2/
; unit_count_max 3/hp 26/atk 1/atk [1,2]/池 普攻6·撕咬2·蓄力1/light/armor_class 2),
; 行序=重击手在前(默认目标=前排坦克 ac 8,蜘蛛后排输出——强弱搭配形态)。
; 设计意图(P1 甲单点试水):「巨蜘蛛+熊地精」同场混编——生产内容实打卡①「每行一骰数量骰」交付面
; (重击手定值不骰、蜘蛛掷 [2,3],同场两种数量语义并存);静态最坏骰和 = 1+3 = 4 ≤ ENEMY_ROWSET_INSTANCE_MAX
; (spawn 期守卫内)。
; 读数预期:(2,5) 场敌人 3-4 只(3=重击手 1+蜘蛛 2,4=蜘蛛掷 3);L2 难度带位移读数随 Alpha 收官 M4 数值批
; 统一执行(07 在册义务——MC 取证跑批届时另报批,本批零跑)。禁区排查:巨蜘蛛首遇位 (2,4)「固定 2 不加骰」
; 零触碰、Boss d9 零触碰、跨关混编禁令过(两敌种首遇关均 ≤L2)、既有 19 行现值零变更。
+19 -2
View File
@@ -3060,6 +3060,7 @@ func _smoke_skill_pool_data() -> void:
"2_0_bugbear": {"attack": 6, "lunge": 1, "heavy": 2}, "2_0_bugbear": {"attack": 6, "lunge": 1, "heavy": 2},
"2_1_bugbear": {"attack": 6, "lunge": 1, "heavy": 2}, "2_1_bugbear": {"attack": 6, "lunge": 1, "heavy": 2},
"2_4_giant_spider": {"attack": 6, "bite": 2, "charge": 1}, "2_4_giant_spider": {"attack": 6, "bite": 2, "charge": 1},
"2_5_giant_spider": {"attack": 6, "bite": 2, "charge": 1},
"2_5_bugbear": {"attack": 5, "lunge": 2, "heavy": 2}, "2_5_bugbear": {"attack": 5, "lunge": 2, "heavy": 2},
"2_6_giant_spider": {"attack": 6, "bite": 2, "charge": 1}, "2_6_giant_spider": {"attack": 6, "bite": 2, "charge": 1},
"2_7_giant_spider": {"attack": 6, "bite": 2, "charge": 1}, "2_7_giant_spider": {"attack": 6, "bite": 2, "charge": 1},
@@ -3083,7 +3084,7 @@ func _smoke_skill_pool_data() -> void:
got[String(entry.skill_id)] = int(entry.weight) got[String(entry.skill_id)] = int(entry.weight)
if got != expect_pools[rk]: if got != expect_pools[rk]:
pools_ok = false pools_ok = false
check(pools_ok, "十九行九种池模板 = 建议池行值((L,D,enemy_id) 三元键逐行精确比对——2026-10-07 行集多行批口径;L1 地精 9/1 · 熊地精 6/2/2 · 酋长 6/2/2;L2 熊地精 6/1/2 · 蜘蛛 6/2/1 · 重击手 5/2/2 · 蛛化卓尔精灵 6/2/2/2〔(2,9)——商店房批 Boss 重编号〕;L3 灰矮人 6/2/2 · 钩爪恐魔 6/2/1 · 重装手 5/2/2 · 石君王 6/2/2〔earth_pulse·(3,9)〕——全部 provisional;三 Boss 池尾 +1 门控条目〔quake_smash/venom_curb/rockslide 权重 2+unlock_hp_pct 50——迭代14④ T5〕;混编行集同坐标多行各一池合法,零内容期每坐标仍恰一行)") check(pools_ok, "二十行九种池模板 = 建议池行值((L,D,enemy_id) 三元键逐行精确比对——2026-10-07 行集多行批口径;L1 地精 9/1 · 熊地精 6/2/2 · 酋长 6/2/2;L2 熊地精 6/1/2 · 蜘蛛 6/2/1 · 重击手 5/2/2 · 蛛化卓尔精灵 6/2/2/2〔(2,9)——商店房批 Boss 重编号〕;L3 灰矮人 6/2/2 · 钩爪恐魔 6/2/1 · 重装手 5/2/2 · 石君王 6/2/2〔earth_pulse·(3,9)〕——全部 provisional;三 Boss 池尾 +1 门控条目〔quake_smash/venom_curb/rockslide 权重 2+unlock_hp_pct 50——迭代14④ T5〕;混编行集同坐标多行各一池合法——首批投放 (2,5) 双行〔迭代 18 卡⑤:重击手+巢群,新行行值复制 (2,6)〕,其余坐标仍恰一行)")
var basic_count_ok := true var basic_count_ok := true
for row in _db.enemy.rows: for row in _db.enemy.rows:
var n := 0 var n := 0
@@ -3548,6 +3549,22 @@ func _smoke_level_graph() -> void:
l2_boss_ids[String(r.get("enemy_id", ""))] = true l2_boss_ids[String(r.get("enemy_id", ""))] = true
check(l2_boss_ids.has("drider") and l2_boss_ids.size() == 1 and String(l2_boss_set[0].get("armor_type", "")) == "ward", check(l2_boss_ids.has("drider") and l2_boss_ids.size() == 1 and String(l2_boss_set[0].get("armor_type", "")) == "ward",
"蛛化卓尔精灵 Boss 行集 (2,9) = {drider} 恰一行且首行魔法甲(护甲类型重配批 2026-09-18:关卡 2 唯一非轻甲;商店房批重编号 (2,8)→(2,9);P4 乙 Boss 行集多行合法——零内容期仍单行)") "蛛化卓尔精灵 Boss 行集 (2,9) = {drider} 恰一行且首行魔法甲(护甲类型重配批 2026-09-18:关卡 2 唯一非轻甲;商店房批重编号 (2,8)→(2,9);P4 乙 Boss 行集多行合法——零内容期仍单行)")
# ⑦b 定点:首批混编遭遇行集 (2,5)(2026-10-07 迭代 18 卡⑤投放——R6 行序契约运行面:
# 行集两行文件内相邻、行序 = 声明序 = 生成序;静态最坏骰和 Σ(unit_count_max,固定行缺省 = unit_count) ≤ 4)
var l2_mix_set: Array = _db.resolve_enemy_rowset(2, 5)
var mix_shape_ok: bool = l2_mix_set.size() == 2 \
and String(l2_mix_set[0].get("enemy_id", "")) == "bugbear" \
and String(l2_mix_set[1].get("enemy_id", "")) == "giant_spider"
check(mix_shape_ok,
"首批混编行集 (2,5) = 双行且行序 [bugbear 重击手 → giant_spider 巢群](R6 行序契约——文件序 = 声明序 = 生成序,首行默认目标 = 前排坦克;迭代 18 卡⑤投放)")
var mix_sum_max := 0
for r in l2_mix_set:
mix_sum_max += int(r.get("unit_count_max", int(r.get("unit_count", 1))))
check(mix_sum_max <= 4,
"首批混编行集 (2,5) 静态最坏骰和 = Σ(unit_count_max,固定行缺省=unit_count) = %d ≤ 4(行集实例总数守卫同口径——重击手固定 1 + 巢群 [2,3])" % mix_sum_max)
check(int(l2_mix_set[1].get("unit_count", 0)) == 2 and int(l2_mix_set[1].get("unit_count_max", 0)) == 3 \
and int(l2_mix_set[1].get("hp", 0)) == 26 and int(l2_mix_set[1].get("armor_class", -1)) == 2,
"首批混编新行 (2,5,giant_spider) 行值 = 复制 (2,6) 巢群行(P4 甲零数值新增——2-3 只/hp 26/atk [1,2]/light/ac 2;既有 19 行现值零变更)")
# ---- 第三关内容批(2026-09-20)L3 灰矮人矿城断言段 ---- # ---- 第三关内容批(2026-09-20)L3 灰矮人矿城断言段 ----
# ⑧ L3 行集结构(复用 L2 九节点图模板——6 战 + Boss + 奖励 + 恢复,真实岔路 4 处) # ⑧ L3 行集结构(复用 L2 九节点图模板——6 战 + Boss + 奖励 + 恢复,真实岔路 4 处)
var l3 := {} var l3 := {}
@@ -3635,7 +3652,7 @@ func _smoke_level_graph() -> void:
_db.enemy.rows.remove_at(_db.enemy.rows.size() - 1) _db.enemy.rows.remove_at(_db.enemy.rows.size() - 1)
_db.enemy.rows.remove_at(_db.enemy.rows.size() - 1) _db.enemy.rows.remove_at(_db.enemy.rows.size() - 1)
_db.enemy.rows.remove_at(_db.enemy.rows.size() - 1) _db.enemy.rows.remove_at(_db.enemy.rows.size() - 1)
check(int(_db.enemy.rows.size()) == 19, "混编断言段注入行全量还原(表回 19 行——后续断言面零污染)") check(int(_db.enemy.rows.size()) == 20, "混编断言段注入行全量还原(表回 20 行——首批混编投放后基线行数,迭代 18 卡⑤;后续断言面零污染)")
# 冒烟隔离用全新 RngService(同 master 种子——回放确定性纪律) # 冒烟隔离用全新 RngService(同 master 种子——回放确定性纪律)
+1 -1
View File
@@ -70,7 +70,7 @@
| 迭代 17 | **④生涯界面设计立项(2026-10-05 用户令编入本迭代;只做设计提纲不做实装)**:事实源=06「『生涯』界面——冒险中数据回看的唯一承接处」条(P-C7 裁:M9 已退役局内结算明细回看,历史数据现无承接面=用户知情裁决)。考证在册:回看退役已落码(battle_end_overlay/battle_log_view/ui_assembler 三处注记)+settlement_review_overlay.gd 遗留件在盘+跨局持久面=save v5 meta 域+recent_summaries 现役逐局留痕(cap=10,save_manager.gd SUMMARY_CAP——2026-10-06 联审勘误:原记「无历史冒险记录面」系事实错误;真实缺口=cap 扩容+用时埋点+总局数/通关局数 lifetime 计数域〔涉存档 schema〕+营地既有最近冒险清单的去留设计)。任务书形态=设计提纲版:信息架构+承载内容清单(跨局汇总/历史冒险回看/图鉴承接)+与既有界面关系+三期实装建议+待裁点,标注「实装批另行立项」。任务书=`design/research/任务书-生涯界面设计立项-2026-10-05.md`(**v1.1 2026-10-06 联审修订**:F4 改正 recent_summaries 现役/P2 甲口径重述=扩容+用时埋点/总局数通关局数标注涉 schema/营地清单去列入设计稿必答项/N 候选补「维持 10」;T0-T2≈1.25d 纯文档零测试;**✅ 裁点全裁(2026-10-06 用户令全按推荐:P0甲/P1甲/P2甲〔N 实装期定〕/P3甲/P4甲/P5甲);开工=U0**) | 迭代 15 出口 | ✅ **设计提纲已成文待用户评审(2026-10-06 卡④设计批完成,worktree iter17-career-20261006,纯文档零代码零测试)**:提纲=design/gdd/systems/跨局循环/生涯.md v0.1(范围草案——信息架构/承载内容清单/界面关系/分期建议/待裁点五节,P0-P5 已裁结论落文,新发现待裁点 P6 营地最近冒险条带去留随评审一并裁);02 根索引补行+06 状态行换代「设计提纲已成文待评审」。**人闸=用户评审提纲**;评审通过后期一/二/三实装批另行立项(不预占排期。原估 T0-T2≈1.25d 软盒内) | | 迭代 17 | **④生涯界面设计立项(2026-10-05 用户令编入本迭代;只做设计提纲不做实装)**:事实源=06「『生涯』界面——冒险中数据回看的唯一承接处」条(P-C7 裁:M9 已退役局内结算明细回看,历史数据现无承接面=用户知情裁决)。考证在册:回看退役已落码(battle_end_overlay/battle_log_view/ui_assembler 三处注记)+settlement_review_overlay.gd 遗留件在盘+跨局持久面=save v5 meta 域+recent_summaries 现役逐局留痕(cap=10,save_manager.gd SUMMARY_CAP——2026-10-06 联审勘误:原记「无历史冒险记录面」系事实错误;真实缺口=cap 扩容+用时埋点+总局数/通关局数 lifetime 计数域〔涉存档 schema〕+营地既有最近冒险清单的去留设计)。任务书形态=设计提纲版:信息架构+承载内容清单(跨局汇总/历史冒险回看/图鉴承接)+与既有界面关系+三期实装建议+待裁点,标注「实装批另行立项」。任务书=`design/research/任务书-生涯界面设计立项-2026-10-05.md`(**v1.1 2026-10-06 联审修订**:F4 改正 recent_summaries 现役/P2 甲口径重述=扩容+用时埋点/总局数通关局数标注涉 schema/营地清单去列入设计稿必答项/N 候选补「维持 10」;T0-T2≈1.25d 纯文档零测试;**✅ 裁点全裁(2026-10-06 用户令全按推荐:P0甲/P1甲/P2甲〔N 实装期定〕/P3甲/P4甲/P5甲);开工=U0**) | 迭代 15 出口 | ✅ **设计提纲已成文待用户评审(2026-10-06 卡④设计批完成,worktree iter17-career-20261006,纯文档零代码零测试)**:提纲=design/gdd/systems/跨局循环/生涯.md v0.1(范围草案——信息架构/承载内容清单/界面关系/分期建议/待裁点五节,P0-P5 已裁结论落文,新发现待裁点 P6 营地最近冒险条带去留随评审一并裁);02 根索引补行+06 状态行换代「设计提纲已成文待评审」。**人闸=用户评审提纲**;评审通过后期一/二/三实装批另行立项(不预占排期。原估 T0-T2≈1.25d 软盒内) |
| 迭代 18 | **③武器锻造系统设计提案批(2026-10-06 用户令入迭代 18;纯文档零代码——提案源=playnote 2026-10-06)**:用户提案=攻击力提升改造为「武器锻造」——剑(普攻)锻造升级加攻击、满级附带额外效果;后续增列长枪/法杖,攻击类型分别走穿刺/魔法;护甲由轻甲起级(先只提 AC)→解锁重甲/魔法甲(基础 AC 各异、可续升、满级各带额外效果)——武器/护甲差异化。产出=系统设计提案文档(与奇物属性值提升分类/护甲克制轴/营地柜台/锻造经济边界对齐,数值框架 provisional 终值归 Alpha 收官 M4 数值批统一调整〔未排期〕),裁点呈用户裁决;实装批另行立项。06 已登记专条。任务书=`design/research/任务书-武器锻造系统设计提案批-2026-10-07.md`(提纲版 v1.0——设计裁点在提案产物内全备选呈裁,任务书零待裁点;开工=U0) | 🔨 提案已成文交付(2026-10-07)待盘问裁决(异步不阻塞) | T0-T2≈1.5d(一轮呈裁基线,盘问轮次扩展另计) | | 迭代 18 | **③武器锻造系统设计提案批(2026-10-06 用户令入迭代 18;纯文档零代码——提案源=playnote 2026-10-06)**:用户提案=攻击力提升改造为「武器锻造」——剑(普攻)锻造升级加攻击、满级附带额外效果;后续增列长枪/法杖,攻击类型分别走穿刺/魔法;护甲由轻甲起级(先只提 AC)→解锁重甲/魔法甲(基础 AC 各异、可续升、满级各带额外效果)——武器/护甲差异化。产出=系统设计提案文档(与奇物属性值提升分类/护甲克制轴/营地柜台/锻造经济边界对齐,数值框架 provisional 终值归 Alpha 收官 M4 数值批统一调整〔未排期〕),裁点呈用户裁决;实装批另行立项。06 已登记专条。任务书=`design/research/任务书-武器锻造系统设计提案批-2026-10-07.md`(提纲版 v1.0——设计裁点在提案产物内全备选呈裁,任务书零待裁点;开工=U0) | 🔨 提案已成文交付(2026-10-07)待盘问裁决(异步不阻塞) | T0-T2≈1.5d(一轮呈裁基线,盘问轮次扩展另计) |
| 迭代 18 | **④生涯界面实装批(2026-10-06 用户令入迭代 18)**:按迭代 17 卡④设计提纲(design/gdd/systems/跨局循环/生涯.md v0.1,master 44328b1)实装「生涯」界面——跨局汇总/历史冒险回看/图鉴承接;提纲在册要点=recent_summaries 现役 cap10 扩容+用时埋点/总局数与通关局数(涉存档 schema)/营地最近冒险清单去留(P6 必答项随评审定);分期建议随提纲。任务书=`design/research/任务书-生涯界面实装批-2026-10-07.md`(v1.0——范围=提纲期一〔汇总页+主菜单入口+终身计数域存档 v6〕,期二/期三零触碰;裁点 P1 通关局数口径/P2 汇总条目集/P3 模态登记序待裁;提纲评审若改期一范围则任务书升版) | **✅ 提纲期一追认+裁点全裁(2026-10-07 用户令代解/全甲;P6 随期二)**——开工=U0 | T0-T5≈2.5d | | 迭代 18 | **④生涯界面实装批(2026-10-06 用户令入迭代 18)**:按迭代 17 卡④设计提纲(design/gdd/systems/跨局循环/生涯.md v0.1,master 44328b1)实装「生涯」界面——跨局汇总/历史冒险回看/图鉴承接;提纲在册要点=recent_summaries 现役 cap10 扩容+用时埋点/总局数与通关局数(涉存档 schema)/营地最近冒险清单去留(P6 必答项随评审定);分期建议随提纲。任务书=`design/research/任务书-生涯界面实装批-2026-10-07.md`(v1.0——范围=提纲期一〔汇总页+主菜单入口+终身计数域存档 v6〕,期二/期三零触碰;裁点 P1 通关局数口径/P2 汇总条目集/P3 模态登记序待裁;提纲评审若改期一范围则任务书升版) | **✅ 提纲期一追认+裁点全裁(2026-10-07 用户令代解/全甲;P6 随期二)**——开工=U0 | T0-T5≈2.5d |
| 迭代 18 | **⑤混编遭遇首批投放批(2026-10-06 用户令入迭代 18;纯内容批——机制前置=迭代 17 卡①敌人表行集多行批)**:07「后续内容批义务」落地——首个混编遭遇行+Boss 多行内容投放(敌种候选与坐标=本批裁点);首遇教学位纪律与 expect_pools 断言面逐项复核(巨蜘蛛首遇位「固定 2 不加骰」等表注释为准);难度带读数义务随批登记 07,MC 取证跑批**顺延 Alpha 收官 M4 数值批统一执行**〔未排期,届时另令——2026-10-06 用户令:数值统一调整殿后;投放本身不阻塞〕。任务书=`design/research/任务书-混编遭遇首批投放批-2026-10-07.md`(v1.0——纯内容批零代码,机制面全由卡①承载,机制缺口=L3 停机;裁点 P1 首批投放方案〔荐甲=L2 单点试水〕/P2 Boss 多行不入首批/P3 教学界保护待裁) | 迭代 17 卡①落籍(✅ 已满足 9cc4b8b)+**✅ 裁点全裁(P1-P4 甲,2026-10-07)**——开工=U0 | T0-T5≈1.75d(MC 取证顺延另计) | | 迭代 18 | **⑤混编遭遇首批投放批(2026-10-06 用户令入迭代 18;纯内容批——机制前置=迭代 17 卡①敌人表行集多行批)**:07「后续内容批义务」落地——首个混编遭遇行+Boss 多行内容投放(敌种候选与坐标=本批裁点);首遇教学位纪律与 expect_pools 断言面逐项复核(巨蜘蛛首遇位「固定 2 不加骰」等表注释为准);难度带读数义务随批登记 07,MC 取证跑批**顺延 Alpha 收官 M4 数值批统一执行**〔未排期,届时另令——2026-10-06 用户令:数值统一调整殿后;投放本身不阻塞〕。任务书=`design/research/任务书-混编遭遇首批投放批-2026-10-07.md`(v1.0——纯内容批零代码,机制面全由卡①承载,机制缺口=L3 停机;裁点 P1 首批投放方案〔荐甲=L2 单点试水〕/P2 Boss 多行不入首批/P3 教学界保护待裁) | 迭代 17 卡①落籍(✅ 已满足 9cc4b8b)+**✅ 裁点全裁(P1-P4 甲,2026-10-07)**——开工=U0 | T0-T5≈1.75d(MC 取证顺延另计)——**✅ 已全批落表(2026-10-07,worktree g-plan2-iter18-mixenc 分支 iter18-mixenc 基点 adadf56,批内提交 ad36e35(T1 设计稿)/6272fc8(T3 落表)/43b1306(T4 断言)/⑤T5 收口批;出口报告=[iter18-mixenc-exit-report](design/qa/iter18-mixenc-exit-report-2026-10-07.md))**:(2,5) 双行混编落表〔重击手+巨蜘蛛巢群(行值复制 (2,6),P4 甲零数值新增),R6 行序=重击手在前〕;d5/d7 候选与行值来源全案留痕(d5 案选定);断言面随迁(expect_pools 三元键新池模板+行集构成/行序/Σ≤4 断言);首遇教学位 (2,4)/(3,0)/(3,1) 零触碰;07 ⑱ 目检与读数义务登记+:174 逐行骰措辞订正;闸=冒烟 814/0(基线 811/0,+3)+run_all+doc 三闸/熵增零新增(批末重闸数字见出口报告);实机目检三项归用户(同场两敌种/行序/总数 ≤4);MC 零跑(顺延 Alpha 收官 M4 数值批在案) |
| 迭代 18 | **⑦新冒险种子随机化+调试浮窗升级(2026-10-07 用户令入迭代 18,同日两裁点全裁+浮窗目标态已定)**:**(a) 种子随机化**——现状考证 main.gd:1210 `_seed_value()` 调试种子框为空时硬编码返回 42=每次新冒险同一种子全程可复现;改法=玩家界面入口(主菜单开新冒险)默认分支随机生成;**✅ 裁点全裁(2026-10-07 用户令):①首次冒险维持固定种子(教学态可复现)/②测试脚本与调试接口维持显式指定种子(冒烟·MC·探针全链显式传种子零影响,锚零作废)/③种子不进玩家 UI**;断点续玩零影响(存档已载 master_seed 回填,main.gd:447 现役);与⑥收官批零耦合、排序自由。**(b) 调试浮窗升级**(承载「调试浮窗可查当局数据」裁点=种子的唯一查看位;**本项修订迭代 15 卡① P3 甲「仅开始菜单可开·对局不可达」裁决**)——目标态三件:独立于整体界面的**最高层浮窗**(对局中也可开)/DS_DEBUG=1 调试态下**默认打开**/新增**当局数据只读区块**(当前局种子/关卡/节点/HP/GP/钥石等——玩家 UI 不展示、调试浮窗可查)。考证在册(2026-10-07 实查):现行=开始覆盖层角标入口〔main.gd:292-293,DS_DEBUG=1 点亮〕+main.gd:1189 门禁「仅开始菜单可开」+Dialog 形态走 ModalStack 模态栈登记〔非最高层〕+visible=false 初始非默认开+五区块(胜利演出/种子输入/数值滑条/批量模拟/两层调试)无当局数据面。任务书待裁点:最高层与模态栈登记制的关系〔置顶/登记序末+move_child 或独立层〕/输入吞噬边界〔浮窗矩形外透传游戏输入〕/对局发起「随开随收」逻辑改向/ui_tune_probe 断言面换代/入口形态(角标宿主迁移或热键)。任务书=`design/research/任务书-种子随机化与调试浮窗升级批-2026-10-07.md`(v1.0——实装级裁点 P1 遮挡语义〔荐甲=维持登记制〕/P2 入口形态〔荐甲=角标迁宿主〕/P3 默认打开范围〔荐甲=启动即开〕/P4 当局数据字段集〔荐甲=六项〕/P5 首局种子值〔荐甲=沿用 42〕待裁;估时勘误 1d→2.0d 含探针换代与收口) | **✅ 裁点全裁(2026-10-07 用户令全按推荐:P1-P6 甲)**——开工=U0 | T0-T5≈2.0d | | 迭代 18 | **⑦新冒险种子随机化+调试浮窗升级(2026-10-07 用户令入迭代 18,同日两裁点全裁+浮窗目标态已定)**:**(a) 种子随机化**——现状考证 main.gd:1210 `_seed_value()` 调试种子框为空时硬编码返回 42=每次新冒险同一种子全程可复现;改法=玩家界面入口(主菜单开新冒险)默认分支随机生成;**✅ 裁点全裁(2026-10-07 用户令):①首次冒险维持固定种子(教学态可复现)/②测试脚本与调试接口维持显式指定种子(冒烟·MC·探针全链显式传种子零影响,锚零作废)/③种子不进玩家 UI**;断点续玩零影响(存档已载 master_seed 回填,main.gd:447 现役);与⑥收官批零耦合、排序自由。**(b) 调试浮窗升级**(承载「调试浮窗可查当局数据」裁点=种子的唯一查看位;**本项修订迭代 15 卡① P3 甲「仅开始菜单可开·对局不可达」裁决**)——目标态三件:独立于整体界面的**最高层浮窗**(对局中也可开)/DS_DEBUG=1 调试态下**默认打开**/新增**当局数据只读区块**(当前局种子/关卡/节点/HP/GP/钥石等——玩家 UI 不展示、调试浮窗可查)。考证在册(2026-10-07 实查):现行=开始覆盖层角标入口〔main.gd:292-293,DS_DEBUG=1 点亮〕+main.gd:1189 门禁「仅开始菜单可开」+Dialog 形态走 ModalStack 模态栈登记〔非最高层〕+visible=false 初始非默认开+五区块(胜利演出/种子输入/数值滑条/批量模拟/两层调试)无当局数据面。任务书待裁点:最高层与模态栈登记制的关系〔置顶/登记序末+move_child 或独立层〕/输入吞噬边界〔浮窗矩形外透传游戏输入〕/对局发起「随开随收」逻辑改向/ui_tune_probe 断言面换代/入口形态(角标宿主迁移或热键)。任务书=`design/research/任务书-种子随机化与调试浮窗升级批-2026-10-07.md`(v1.0——实装级裁点 P1 遮挡语义〔荐甲=维持登记制〕/P2 入口形态〔荐甲=角标迁宿主〕/P3 默认打开范围〔荐甲=启动即开〕/P4 当局数据字段集〔荐甲=六项〕/P5 首局种子值〔荐甲=沿用 42〕待裁;估时勘误 1d→2.0d 含探针换代与收口) | **✅ 裁点全裁(2026-10-07 用户令全按推荐:P1-P6 甲)**——开工=U0 | T0-T5≈2.0d |
| 迭代 19+ | **M4 数值批(**Alpha 收官位·未排期**——2026-10-05 用户令编入迭代 17 卡②;2026-10-06 用户令移出独立成批并定序「Alpha 阶段最后——内容补全先行、统一数值调整殿后」〔当日曾被编入迭代 18 为收官卡,2026-10-07 用户令撤回〕;2026-10-07 用户令:**暂不启动**,移出迭代 18,保持 Alpha 收官位待用户发令)**:四件数值欠账合一批——①削弱档位终值(weaken 现值 −65/duration 2/refresh 考证在册;叠层改续时语义已定案,差 duration 终值+当量锚复算)②调参批数值点评(06 条目现行登记五条——任务口径「八条」与条目五条不符,任务书 §2.2 已呈报差异以条目为准)③迭代 10 奖励重构联动欠账①②(钥石产出重标 boss_keystone 首杀 3/3/3·复杀 2/2/3 provisional + 通关率带重扫〔通关回血 20%+AP 件首轮 +1〕)④元进度定价剩余面(forge base 20/比 150 考证在册——06 条目文本「base 10」滞后于 2026-09-22 对齿批已呈报;Boss 两档终值)。读数义务随批=迭代 14 两件后置复算(T6 MC 四带复算+T7 技能池节奏重测,均挂 07);顺路修复 damage_probe A1 改前既有红灯(判式换代批出口报告 §四.7 在册)。**硬约束:一切 MC/verifier 跑批发起前须用户批准;调参联动禁独立调参网络(β 带 [1.2,2.5] 逐 u 检算)**。任务书=`design/research/任务书-M4数值批-2026-10-05.md`(**v1.2 2026-10-06 案C 增补+联审修订**:v1.1 三事实与第五推算件照旧;联审=P3 转正顺延至重扫读数后/检算工具 WEAKEN_PCT 入同步面/F11 两句死文本全刷/T3·T5 四带复算并账一次跑批双认账/R5 改前锚=本批新立案C 锚/估时段一勘误 4.25d;案C 增补内容照旧=§2.6 三事实〔行为换代/锚全作废/难度预判〕+T0 推算稿第五件=对拍锚按新序重推导+T6 四带复算按案C 新行为首采;T0-T8≈6.25d,天然切分点 T4 末;🔴 契约 5 条含跑批批准制;**✅ 裁点全裁(2026-10-06 用户令:P1甲=维持 2 场·magnitude [60,85] 带内当量锚复算、具体值随出口 provisional 追认/P2甲 不对称有意/P3甲 3-3-3·2-2-3 维持、转正顺延至重扫读数到账且带内(Q4 二裁)/P4甲 不立直购价);开工=U0**) | 迭代 18 全部内容卡(③④⑤⑦)出口+全部内容批行为变更落定+**用户发令(未排期)**——重锚窗口须收尽全部内容批行为变更 | T0-T8≈6.25d(超软盒预挂,段一 T0-T4≈4.25d〔v1.2 勘误,原 4.5 系加总错误〕/段二 T5-T8≈2.0d) | | 迭代 19+ | **M4 数值批(**Alpha 收官位·未排期**——2026-10-05 用户令编入迭代 17 卡②;2026-10-06 用户令移出独立成批并定序「Alpha 阶段最后——内容补全先行、统一数值调整殿后」〔当日曾被编入迭代 18 为收官卡,2026-10-07 用户令撤回〕;2026-10-07 用户令:**暂不启动**,移出迭代 18,保持 Alpha 收官位待用户发令)**:四件数值欠账合一批——①削弱档位终值(weaken 现值 −65/duration 2/refresh 考证在册;叠层改续时语义已定案,差 duration 终值+当量锚复算)②调参批数值点评(06 条目现行登记五条——任务口径「八条」与条目五条不符,任务书 §2.2 已呈报差异以条目为准)③迭代 10 奖励重构联动欠账①②(钥石产出重标 boss_keystone 首杀 3/3/3·复杀 2/2/3 provisional + 通关率带重扫〔通关回血 20%+AP 件首轮 +1〕)④元进度定价剩余面(forge base 20/比 150 考证在册——06 条目文本「base 10」滞后于 2026-09-22 对齿批已呈报;Boss 两档终值)。读数义务随批=迭代 14 两件后置复算(T6 MC 四带复算+T7 技能池节奏重测,均挂 07);顺路修复 damage_probe A1 改前既有红灯(判式换代批出口报告 §四.7 在册)。**硬约束:一切 MC/verifier 跑批发起前须用户批准;调参联动禁独立调参网络(β 带 [1.2,2.5] 逐 u 检算)**。任务书=`design/research/任务书-M4数值批-2026-10-05.md`(**v1.2 2026-10-06 案C 增补+联审修订**:v1.1 三事实与第五推算件照旧;联审=P3 转正顺延至重扫读数后/检算工具 WEAKEN_PCT 入同步面/F11 两句死文本全刷/T3·T5 四带复算并账一次跑批双认账/R5 改前锚=本批新立案C 锚/估时段一勘误 4.25d;案C 增补内容照旧=§2.6 三事实〔行为换代/锚全作废/难度预判〕+T0 推算稿第五件=对拍锚按新序重推导+T6 四带复算按案C 新行为首采;T0-T8≈6.25d,天然切分点 T4 末;🔴 契约 5 条含跑批批准制;**✅ 裁点全裁(2026-10-06 用户令:P1甲=维持 2 场·magnitude [60,85] 带内当量锚复算、具体值随出口 provisional 追认/P2甲 不对称有意/P3甲 3-3-3·2-2-3 维持、转正顺延至重扫读数到账且带内(Q4 二裁)/P4甲 不立直购价);开工=U0**) | 迭代 18 全部内容卡(③④⑤⑦)出口+全部内容批行为变更落定+**用户发令(未排期)**——重锚窗口须收尽全部内容批行为变更 | T0-T8≈6.25d(超软盒预挂,段一 T0-T4≈4.25d〔v1.2 勘误,原 4.5 系加总错误〕/段二 T5-T8≈2.0d) |