奇物批任务书 + 编入 roadmap 迭代 15
用户令:概念层裁定已完成,代码与配置改动不做,整理成任务书编入迭代 15 作为该迭代的一个需求。任务书须满足 loop engineering 要求。 新增:design/research/任务书-奇物词族对齐与渠道分离批-2026-10-05.md 按 roadmap §批次 loop 规范八件成文(缺件不开工): ① 目标与完成定义(7 条可验)② 现状事实(代码级,T0 复核) ③ 设计契约(11 条,6 条 🔴 停机级)④ 范围边界(含"收到即停"清单) ⑤ 任务卡 T0-T8(逐卡估时 ≈4.5d,两段切分预案,切分点=T3 出口) ⑥ 验证闸(轻闸/重闸 + **12 条批末专属验收断言** A1-A12) ⑦ 异常分级(含本批预判的 3 个 L3 高风险点) ⑧ 代拍板白名单 5 项 外加:待用户裁点 4 项(不占本批自裁范围)+ 附录**设计裁定链 v1.0→v2.6** (把 6 轮用户裁定的要点列全,供执行者回溯,不用回头翻 9 次提交) 三批内容:①三套旧词族对齐(feature_*→curio_* 103处/relic_*→feat_* 162处/ 运行层 bonus_*→curio_* 160处;**硬约束 reward_* 已被占用不可用**) ②三条渠道按分类分离(现共用 98 张池、三类混编)③两个新种类入池 (刷新次数 + 专长门票四口径)附带 shop.tres 补回复与 charge 补至 ≥4 件。 roadmap 新增迭代 15 行(M-4 里程碑表内),标注: - 与在途 M-4 各批(判式换代/全局变异/配比预设)**撞同一批文件** (adventure_table.gd / level_runner.gd / adventure.tres), **开工门 = 须确认不并行或用户明示插队**——这是本批最实际的调度约束 - 门 = 迭代 14 出口;估时 T0-T8≈4.5d 可两段切分 🔴 红线里最要紧的两条(都是本会话教训固化): - 兑付频率:奇物不是打一场战斗给一份,关底 Boss 击败=通过这一关是 同一个时刻;专长不得挂在"战斗结算后"(v2.6 用户纠错) - 两条轴互不决定:禁止"因为要进商店所以另立分类"这种反向推导
This commit is contained in:
1 parent
3c5515aec4
commit
483cf2a39b
2 files changed
+244
No files matched your search
@@ -0,0 +1,243 @@
|
||||
# 任务书:奇物概念收口与词族对齐批(迭代 15)
|
||||
|
||||
- 日期:2026-10-05
|
||||
- 设计事实源:[奇物.md](../gdd/systems/冒险循环/奇物.md) v2.6(概念唯一定义,2026-10-05 用户逐轮裁定)
|
||||
- 登记台账:[06-待办清单](../gdd/06-待办清单.md) 三条目(渠道分工目标态 / 资源类两个新种类入池 / 奇物命名统一后续)
|
||||
- 实体登记:[entities.yaml](../registry/entities.yaml) `curio` 条目
|
||||
- 状态:**定稿待发令**——用户 2026-10-05 令:本批只改文档,代码与配置改动整理成任务书编入迭代 15
|
||||
- **loop 计划书八件对照**:①目标与完成定义=§一 ②现状事实(代码级,开工自行复核)=§二 ③设计契约(🔴 触碰=L3 停机)=§三 ④范围边界=§四 ⑤任务卡 T0..Tn=§五 ⑥验证闸=§六 ⑦异常分级=§七 ⑧代拍板白名单=§八
|
||||
- **本任务书已有约束**:范式为"设计契约先行、代码后跟"——概念已由用户逐轮裁定定稿(v1.0→v2.6 共 6 轮),本批不做二次设计,只做**落地对齐**。任何在执行中冒出的"要不要改设计"念头,一律记 06 不在本批解决
|
||||
- 数值全 provisional:本批只改标识符与结构,**不调任何平衡数值**;档位配额 70/25/3=98 是结构锚(schema validate 硬断言),本批零改动
|
||||
|
||||
---
|
||||
|
||||
## 一、目标与完成定义
|
||||
|
||||
一句话目标:把 v2.6 已定稿的「奇物」概念从**文档层**贯彻到**代码层与数据层**——三套旧词族(`feature_*` / `relic_*` / 运行层 `bonus_*`)全部对齐到统一词族,渠道分工与两个新种类入表,使代码与文档不再各说一套。
|
||||
|
||||
**为什么现在做**:用户 2026-10-05 的原始诉求是"这导致我们的代码实现和文档描述是分开的"。概念层已裁定完(6 轮),但代码层仍是三个旧词族 + 渠道未分离,**债已经欠了 9 次提交**。顶层已改名「奇物」而代码仍叫 `feature_*`,正是用户最初抱怨的"文档与代码分开"的临时态。
|
||||
|
||||
完成定义(逐条可验):
|
||||
|
||||
1. **词族对齐完成**:`feature_*` → `curio_*`(103 处 / 7 文件)、`relic_*` → `curio_*` 或 `feat_*`(162 处 / 12 文件)、运行层 `bonus_*` → `curio_*`(160 处 / 8 文件)全部改完,`game/` 下 `grep -c "feature_\|relic_\|_bonus_\|pick_bonus\|BonusInteract\|BonusPick"` 归零(存档键 5 个除外,见 T2 裁点)
|
||||
2. **渠道分工落地**:三条渠道按分类分离——关底 Boss 击败=通过这一关 → 只出机制类;奖励节点 / 商店 → 只出属性提升类 + 资源类,机制类在此只以门票形式出现;三渠道不再共用同一个池
|
||||
3. **两个新种类入表**:刷新次数、专长获取门票进入 `adventure.tres`,各自带全参数
|
||||
4. **商店货架补回复**:按默认原则,回复必须在商店货架内(现行缺)
|
||||
5. **数据缺陷修复**:`relics.tres` 的 charge 标签补至 ≥4 件(档二要求同标签 ≥4,现仅 3 件,永远达不到)
|
||||
6. **冒烟与三闸全绿**:批末 run_smoke 全量 + 三探针 + doc 三闸对基线**零新增** + 熵增闸 PASS
|
||||
7. **断点存档往返幂等**:改词族不破存档——旧档能读、新档能续(若 T2 裁点选"换名+迁移",须验 v→v+1 往返)
|
||||
|
||||
## 二、现状事实(代码级,T0 开工须自行复核)
|
||||
|
||||
> 以下是 2026-10-05 读出的事实。开工时按 loop 规范 T0 复核,不以本节为准。
|
||||
|
||||
### 2.1 词族占用实况
|
||||
|
||||
| 词族 | 处数 | 文件数 | 主要落点 |
|
||||
|---|---|---|---|
|
||||
| `feature_*` | 103 | 7 | `adventure_table.gd` / `adventure.tres` / `adventure_runner.gd` / `level_runner.gd` / `config_db_cross_validator.gd` / `bonus_interact_controller.gd` / `smoke_all.gd` |
|
||||
| `relic_*` | 162 | 12 | `relic_table.gd`(+`.uid`)/ `relics.tres` / `relics_engine.gd` / `config_db.gd` / `battle_orchestrator.gd` / `damage_controller.gd` / `action_economy.gd` / `level_runner.gd` / `battle_narrator.gd` / `adventure_runner.gd` 等 |
|
||||
| 运行层 `bonus_*` | 160 | 8 | `_bonus_deck` / `_bonus_taken` / `pick_bonus` / `BonusInteractController` / `BonusPickOverlay` / `bonus_interact_controller.gd` / `level_autoplay.gd` / `breakpoint_resume_test.gd` 等 |
|
||||
|
||||
**🔴 硬约束(不可撞车)**:`reward` 词族**已被占用**——`reward_pick`(rng 封闭流 scope)/ `reward_node`(`grant_aux_item` 的 context 字符串)/ `reward_preview`(道具效果 kind)。**统一词族不得使用 `reward_*`**,本批定为 `curio_*`(`treasure` / `trove` / `curio` / `haul` 零占用,2026-10-05 查证)。
|
||||
|
||||
### 2.2 封闭词表与结构锚(改动即触碰红线)
|
||||
|
||||
- `AdventureTable.FEATURE_KINDS: Array[String]` = `["attack", "max_hp", "armor", "gp", "ap", "heal"]`——**封闭六项**。断点附随件与牌库剔除态依赖它,扩种类须走 schema + registry 同步修订
|
||||
- `AdventureTable.TIER_QUOTAS := {"common": 70, "rare": 25, "rarest": 3}`(合计 98)——**结构锚**,schema `validate()` 内有硬断言:"档位配额结构失锚……改总量须重裁"。本批**入新种类须占配额**,若配额总量不够,**只能在本批内重裁并说明**,不得调参绕过
|
||||
- `adventure.tres` 现有 22 个键与 schema 的 22 个 `@export` 一一对应(2026-10-05 脚本校验通过),改名须同步两侧
|
||||
- 节点类型是**封闭枚举五种**(战斗 / Boss / 奖励 / 恢复 / 商店)——本批**零扩类**(专长挂 Boss 节点兑付面)
|
||||
|
||||
### 2.3 渠道与池的现状
|
||||
|
||||
- 现行**三渠道共用同一个 98 张固定配额令牌池**(普通 70 / 稀有 25 / 罕见 3),三类混编
|
||||
- 机制类(专长)只占稀有/罕见档,与属性大件混编;商店货架靠"零机制类挤掉一张普通卡"保底
|
||||
- 商店货架 = 池 ∖ {GP 袋}(`shop.tres` 的 `pool_shelf` 行族,现为 attack / max_hp / armor_class / ap 四项,**缺回复**)
|
||||
- 奖励节点与通关三选一**共享同一池、同权重同上限**(`node-reward` v2.4)
|
||||
|
||||
### 2.4 数据缺陷(独立于渠道结构,须单独修)
|
||||
|
||||
- `relics.tres` 的 **charge 标签只有 3 件**,而档位激活要求同标签 ≥4 件——**charge 流派永远达不到档二**,即使获取次数无限
|
||||
- 一局确定性专长兑付次数 = 终局前 Boss 个数(三关 = 2 次),而档一阈值是同标签 ≥2——档一刚好够,档二(≥4)须靠门票补齐。**此项用户已定延后复裁**(触发=第四关内容批落地后实测),本批只登记不改
|
||||
|
||||
### 2.5 断点与存档键(5 个)
|
||||
|
||||
`bonus_deck` / `bonus_taken` / `bonus_pending` / `bonus_result` / `bonus_aux_carry`——为存档兼容沿用历史名。`adventure_runner.gd` 内同时有 `_node_bonus_pending`(奖励节点停点态)。**是否随存档版本迁移换名须本批裁**(见 T2)。
|
||||
|
||||
## 三、设计契约(违反即返工,🔴 触碰 = L3 停机)
|
||||
|
||||
1. 🔴 **兑付频率不可改**:奇物**不是打一场战斗给一份**。关内普通战斗节点打完不给任何奇物;一关之内只兑付一次,触发点是**关底 Boss 被击败**——按 [冒险结构](../gdd/systems/冒险循环/冒险结构.md) 定义"通关一关 = 该关关底 Boss 被击杀",**这两件事是同一个时刻,不是一条链上的两步**。任何把专长挂到"战斗结算后"的实现即为 L3
|
||||
2. 🔴 **两条轴互不决定**:分类轴(给的是什么:机制类 / 属性提升类 / 资源类)与渠道轴(从哪来:奖励节点 / 商店 / 关底 Boss 击败)**不得互相推导**。禁止"因为它要进商店所以另立一分类"这类反向推导(= 06 已登记的"两轴缠回去")
|
||||
3. 🔴 **Boss 渠道独占机制类**:关底 Boss 击败=通过这一关**只出机制类**,属性提升类与资源类在此不出现。这是渠道轴的定位决定,不是例外,不需另找理由。末关的 Boss 击败后不给(无后续关卡可消费)
|
||||
4. 🔴 **专长门票四条口径不可改**:①**拿到即开、不可囤积**(不进持有集,选中/买下同一时刻开专长三选一);②**罕见只在概率、不在价格**(货架价与其他商品相当);③**一局限购一次**;④**计步保底**——连续 5 次三选一展示未出现 → 第 6 次必定出现(计数=**展示次数**,刷新后的重展计入,奖励节点与商店共享计数,触发后清零,限购用满后不再触发)
|
||||
5. 🔴 **统一词族不得用 `reward_*`**(已被 `reward_pick` / `reward_node` / `reward_preview` 占用,见 §2.1)
|
||||
6. 🔴 **档位配额结构锚不可绕过**:`TIER_QUOTAS` 的 70/25/3 有 validate 硬断言。改总量须重裁并留说明,不得调参绕过
|
||||
7. 🔴 **不新增节点类型**:`关卡节点地图` 的节点类型封闭枚举五种不变,机制类挂 Boss 节点兑付面
|
||||
8. 🔴 **魔法道具边界不位移**:奇物**当局清零、跨局带走的是魔法道具**(判据走生命周期,不走"带在身上")。本批任何改动不得让奇物进同调位,也不得让魔法道具进当局随机渠道
|
||||
9. 🔴 **层级纪律**:奇物只走当局随机渠道(奖励节点 / 商店 / Boss 兑付),不进元进度天赋树
|
||||
10. **本批不改平衡数值**:所有 `feature_value_*` / `feature_quota_*` 的**值零变更**。入新种类属结构改动(占配额),非调参
|
||||
11. **零战斗期新动词**:机制类表达全部经"扫雷决策 → 自动结算"间接生效,不新增手动闪避 / 主动施法
|
||||
|
||||
## 四、范围边界(以下均不在本批,收到即停、不顺手做)
|
||||
|
||||
- **任何平衡数值的调参**——档位阈值、门票四参数的具体取值(概率 / 配额 / 限购次数 / 保底步数)、token 配额重裁方案。门票四参数本批只**建结构与字段**,取值走 provisional + 曲线调参批
|
||||
- **第四关内容**——用户已定"后续还会有第四关,到时候试完觉得配合太少再调整"。档二可达性复裁触发条件是第四关落地后实测
|
||||
- **charge 补件的内容设计**——本批只把 charge 补到 ≥4 件以打开档二通路,**补哪几件是内容裁决**,走独立内容批;本批若判断内容不可自决,则只做"档二对 charge 不可达"的显式登记(数据缺陷留痕),不硬补
|
||||
- **玩家可见面违规改法**(06 独立条目:内部分类禁写入玩家可见面 + 档位呈现三路待裁)——属呈现面设计裁决,须用户拍板,本批不碰
|
||||
- **教学引导相关**——用户 2026-10-04 裁改排 Beta
|
||||
- **资源配比预设 / 判式换代 / 全局变异等 M-4 在途批**——与本批词族改名**撞同一批文件**(`adventure_table.gd` / `level_runner.gd` / `adventure.tres`),**须在 roadmap 排期上确认不与在途批并行**,本批开工门 = 相关在途批出口或用户明示插队
|
||||
- **存档键换名的迁移实现**(若 T2 裁"换名")——须与存档版本迁移单独裁定,本批可只做"代码侧改名 + 兼容读旧键",迁移写 v+1 归存档批
|
||||
|
||||
## 五、任务卡(T0..T8 逐卡估时)
|
||||
|
||||
> **估时合计**(provisional,工作日)≈ 4.5 日,在 ≤3 日软时间盒边缘。**切分预案**:T0-T3 一段(词族对齐)≈ 2 日;T4-T8 二段(渠道分离 + 入表)≈ 2.5 日。切分点 = T3 出口。超限即按 loop 规范切迭代(L3 汇报)。
|
||||
|
||||
### T0 开工(≈0.3d)
|
||||
|
||||
- 建 worktree(分支名建议 `curio-wordfamily-20261005`),**主工作区只作合并落点**
|
||||
- 基线复读记档:冒烟全量数字 / 三探针(`ui_input_probe` 十一断言)/ doc 三闸 / MC 对拍基准 / `git status` 归属核对(并行遗留只标旗不碰)
|
||||
- **复核 §2 全部事实**(词族处数、封闭词表、配额锚、存档键清单),与本节不符以实测为准并回写本任务书
|
||||
- 输出:worktree 名 + 基线数字 + 事实复核差异表
|
||||
|
||||
### T1 词族对齐第一批:`feature_*` → `curio_*`(≈0.7d)
|
||||
|
||||
- 范围:`FEATURE_KINDS` → `CURIO_KINDS`、`feature_quota()` → `curio_quota()`、`feature_value()` → `curio_value()`、`feature_candidate_count` → `curio_candidate_count`、`feature_quota_{kind}_{tier}` → `curio_quota_*`、`feature_value_{kind}_{tier}` → `curio_value_*`
|
||||
- 涉及:`adventure_table.gd` + `adventure.tres`(键名)+ 6 个引用文件
|
||||
- **值零变更**(只改键名与常量名)
|
||||
- ⚠️ `FEATURE_KINDS` 是封闭词表、断点附随件与牌库剔除态依赖它 → 改名须与 `entities.yaml` 同批同步
|
||||
- 轻闸:冒烟全量绿 + 存档往返测试绿
|
||||
|
||||
### T2 词族对齐第二批:运行层 `bonus_*` + **存档键裁点**(≈0.7d)
|
||||
|
||||
- 范围:`_bonus_deck` / `_bonus_taken` / `pick_bonus` / `BonusInteractController` / `BonusPickOverlay` / `bonus_interact_controller.gd` / `level_autoplay.gd` / `breakpoint_resume_test.gd`
|
||||
- **文件改名须同步 Godot `.uid` 与 `.tscn` 引用**(非文本层,无法靠 grep 自证)
|
||||
- **裁点(本任务书内唯一待裁,批内自裁可行但须台账留痕)**:
|
||||
- 五个**断点存档键**(`bonus_deck` / `bonus_taken` / `bonus_pending` / `bonus_result` / `bonus_aux_carry`)换不换名?
|
||||
- 甲=**不换**(保存档兼容,仅改代码侧变量名)——推荐
|
||||
- 乙=换 + 兼容读旧键(旧键读入映射到新键,写出用新键)
|
||||
- 丙=换 + 存档版本迁移到 v+1(**范围外**,本批不做)
|
||||
- 建议甲或乙;若判断丙才对,回写本任务书并转 06
|
||||
- 轻闸:冒烟全量 + **断点存档往返测试绿** + `ui_click_probe`(触碰 presentation)
|
||||
|
||||
### T3 词族对齐第三批:`relic_*` → 机制类(≈0.8d)
|
||||
|
||||
- 范围:`relic_table.gd`(+`.uid`)/ `relics.tres` / `relics_engine.gd` / 及 9 个引用文件
|
||||
- 目标词族:`feat_*`(机制类 = 专长 Feat,**与顶层 `curio_*` 区分**:顶层是容器,内层分类各有各的词族——`curio_*` 是总称、`feat_*` 是机制类、`asi_*` 是属性提升类、`res_*` 是资源类)
|
||||
- **文件名与 `class_name` 改名须同步 `.uid` 与 `.tscn`**(非文本层)
|
||||
- **不新增节点类型**;MINE_HOOKS 红线校验逻辑零改动
|
||||
- 轻闸:冒烟全量 + 全探针(三)
|
||||
- **T3 出口 = 切分点**:段落一(词族对齐)完成,出阶段报告
|
||||
|
||||
### T4 渠道分离:池的拆分(≈0.8d)
|
||||
|
||||
- 目标:三个渠道各按分类白名单取候选,不再共用同一个 98 张池
|
||||
- 关底 Boss 击败 → 只出机制类
|
||||
- 奖励节点 / 商店 → 机制类**只以门票形式出现** + 属性提升类 + 资源类
|
||||
- ⚠️ **配额结构锚处置**:机制类抽离共享池后,属性与资源类的配额总量是否维持 98?**若须改 `TIER_QUOTAS` 总量,走重裁流程并在本任务书回写理由**(不得调参绕过 validate 硬断言)
|
||||
- 商店货架 = 池 ∖ {GP 袋}(**计价物不自售**规则:凡以某渠道计价物为内容的奖励不进该渠道货架)
|
||||
- 轻闸:冒烟全量 + 探针 + **MC 逐位对拍**(涉核心,必须)
|
||||
|
||||
### T5 专长门票入表(≈0.7d)
|
||||
|
||||
- 新增门票项到 `adventure.tres`,四参数全部建字段、**取值 provisional**:
|
||||
- 出现概率 / 配额 / 限购次数(=1)/ 保底步数(=5 展示)
|
||||
- 机制:**拿到即开、不可囤积**(不进持有集)→ 选中/买下同一时刻开专长三选一
|
||||
- **计步保底计数器**:计数=展示次数、刷新后重展计入、奖励节点与商店**共享**计数、触发后清零、限购用满后不触发
|
||||
- 稀有档处置须说明:门票进哪一档(罕见?),占多少配额
|
||||
- 轻闸:冒烟全量 + 探针 + MC 逐位对拍
|
||||
|
||||
### T6 刷新次数入表 + 商店补回复(≈0.5d)
|
||||
|
||||
- `FEATURE_KINDS` 扩项须走 schema + registry 同步修订(封闭词表,红线 §3.6)
|
||||
- ⚠️ **必须先划清边界**:既有「商店独立刷新机制」是**进店后的免费次数 + GP 刷新**(商店自身的服务),本项是**作为奇物授予的**重抽次数——**两者不是一回事**,入表前须在 registry 里把边界写死,防止后续混淆结算
|
||||
- 刷新次数的作用对象是**三选一界面而非角色**——不进加算区(§2.2 加算区四轴不含它)
|
||||
- 补 `shop.tres` 的 `pool_shelf` 货架含回复(按默认原则:除已登记规则外,分类内成员都要在它该出现的渠道池子里)
|
||||
- 轻闸:冒烟全量 + 探针 + MC 逐位对拍
|
||||
|
||||
### T7 档位通路与数据缺陷(≈0.4d)
|
||||
|
||||
- 复核 charge 标签件数。若本批能自决则补至 ≥4 件;若内容不可自决,则**只做显式登记**("档二对 charge 不可达,数据缺陷留痕,转内容批")——**不硬补、不塞占位件**
|
||||
- 档二可达性复裁:**本批只做静态推演与登记**,实测归第四关内容批(用户已定)
|
||||
- 轻闸:冒烟全量
|
||||
|
||||
### T8 批末闸与人闸材料(≈0.4d)
|
||||
|
||||
- 重闸:全量轻闸 + doc 三闸(对基线**零新增**)+ 熵增闸 + MC 逐位对拍(涉核心)+ 素材批机检断言(本批无素材则免)
|
||||
- 人闸材料包(`design/qa/`):真人目检清单(重点 = 奇物列表呈现、档位激活反馈、门票弹出三选一面)+ 代拍板追认清单 + 三渠道兑付点目检指引(**专长兑付发生在关底 Boss 击败那一刻,不是战斗结算后**——这条要单列一个检查项)
|
||||
- 收口五步:①`active.md` 快照 ②台账条目(查撞号)③里程碑移动更新 roadmap ④`stage.txt` 阶段变更 ⑤闸序列全绿留痕
|
||||
|
||||
## 六、验证闸
|
||||
|
||||
### 6.1 轻闸(每轮必跑,headless)
|
||||
|
||||
- `run_smoke` 全量
|
||||
- `ui_input_probe`(十一断言)
|
||||
- 触碰 presentation 时加跑 `ui_click_probe` + `ui_layout_probe`(T2 / T3 触碰)
|
||||
|
||||
### 6.2 重闸(批末 T8)
|
||||
|
||||
- 全量轻闸 + `doc_link` / `gdd_lint` / `doc_term` 三闸**对基线零新增**
|
||||
- 熵增闸 PASS
|
||||
- MC 逐位对拍(T4 / T5 / T6 涉核心,必须;T1-T3 纯改名可免但须在报告说明理由)
|
||||
|
||||
### 6.3 本批专属验收断言(概念与代码一致性)
|
||||
|
||||
| # | 断言 | 判据 |
|
||||
|---|---|---|
|
||||
| A1 | 词族归零 | `game/` 下 `feature_\|relic_\|_bonus_\|pick_bonus\|BonusInteract\|BonusPick` 命中数 = 0(存档键除外) |
|
||||
| A2 | 禁词未用 | `game/` 下无 `reward_pick` / `reward_node` / `reward_preview` **新增**(既有三处不动) |
|
||||
| A3 | 兑付频率正确 | 专长兑付点 = 关底 Boss 击败;**关内普通战斗节点不产奇物**(代码级断言 + 人闸目检双查) |
|
||||
| A4 | 渠道分离 | 三渠道候选池按分类白名单过滤;机制类在非 Boss 渠道只以门票形态出现 |
|
||||
| A5 | 门票拿到即开 | 门票不进持有集;选中/买下同帧开专长三选一(断言:持有关卡推进后仍无门票残留) |
|
||||
| A6 | 保底计数 | 连续 5 次展示未出 → 第 6 次必出;刷新重展计入;限购用满后不触发 |
|
||||
| A7 | 值零变更 | T1-T3 全部改名的键,值与基线**逐位相等** |
|
||||
| A8 | 存档往返 | 旧断点可读、可续;存档键按 T2 裁点结论验证 |
|
||||
| A9 | 池配额锚 | `TIER_QUOTAS` validate 硬断言绿;若改总量须有重裁说明 |
|
||||
| A10 | 节点类型零扩类 | 节点类型仍为封闭枚举五种 |
|
||||
| A11 | 玩家可见面无分类名 | 奇物列表 / 三选一面 / 弹窗**不出现**"机制类/属性提升类/资源类"字样(与 06 独立条目协同,本批只做**断言检查**,不改法) |
|
||||
| A12 | 档二通路 | charge 标签 ≥4 件,或已有显式登记"不可达 + 转内容批" |
|
||||
|
||||
## 七、异常分级(loop 规范)
|
||||
|
||||
- **L1 自救**:一次重试(改名后编译错、`.uid` 未同步等机械错)
|
||||
- **L2 记录继续**:连续 3 次同红灯升级,写台账继续推进
|
||||
- **L3 停机写报告**:触碰 §3 任一 🔴 红线 / 配额结构锚无法自洽 / 发现概念层自相矛盾 / MC 逐位对拍出现无法归因的漂移
|
||||
|
||||
**本批预判的 L3 高风险点**:
|
||||
1. `relic_table.gd` 改名连带 `.uid` / `.tscn` 非文本层引用失败(T3)
|
||||
2. 机制类抽离共享池后配额结构锚失锚,需重裁(T4)
|
||||
3. 存档键换名导致旧断点读不出(T2)
|
||||
|
||||
## 八、代拍板白名单(批内可自裁,台账留痕)
|
||||
|
||||
1. **词族细分名的具体拼写**——`curio_*` / `feat_*` / `asi_*` / `res_*` 的下划线与单复数形式,在不撞既有占用(`reward_*` 等)的前提下自定
|
||||
2. **重命名时的中间态命名**——允许分步改(先改引用再改定义),只要批末归零
|
||||
3. **T2 存档键裁点的甲/乙选择**(不选丙)
|
||||
4. **T7 charge 是否硬补**——若内容不可自决,走"只登记不硬补"(本任务书已授权此判断)
|
||||
5. **provisional 取值的第一版数字**——门票四参数、刷新次数件值,取 working value 即可,**须标 provisional 且归曲线调参批**,不进终值
|
||||
|
||||
## 九、待用户裁点(不在本批自裁范围)
|
||||
|
||||
| # | 待裁 | 阻塞面 | 建议 |
|
||||
|---|---|---|---|
|
||||
| C1 | 玩家可见面三处违规的改法 + 档位呈现三路 | 06 独立条目;A11 断言只检查不修 | 单独开呈现面批 |
|
||||
| C2 | 第四关内容与档二可达性复裁 | T7 实测、charge 补件 | 第四关内容批后 |
|
||||
| C3 | 门票四参数的终值 | T5 provisional 定稿 | 曲线调参批 + MC 采集 |
|
||||
| C4 | 存档键换名的正式迁移 | T2 裁点丙案 | 存档版本迁移批 |
|
||||
|
||||
---
|
||||
|
||||
## 附:本任务书引用的设计裁定链(v1.0 → v2.6,供执行者回溯)
|
||||
|
||||
| 版本 | 用户裁定要点 |
|
||||
|---|---|
|
||||
| v1.0 | 立《特性》:一次冒险内角色自身得到的提升;命名统一(此前三个名字:流派件 / 数值件 / 本关强化) |
|
||||
| v1.1 | 分类重构为「属性提升 ASI / 专长 Feat」;刷新次数作用对象是选择界面而非角色,作为例外登记 |
|
||||
| v1.2 | 专长渠道落定=关底 Boss 击败后;**不新增节点类型**(挂 Boss 节点兑付面) |
|
||||
| v2.0 | 顶层改名「奖励」;分类扩为三类;重构为**两根轴**(分类轴 × 渠道轴);边界判据改走**生命周期**(当局清零的是奖励,跨局带走的是魔法道具) |
|
||||
| v2.1 | Boss 渠道只出专长(独占);终局 Boss 不给;金币不进商店写成「计价物不自售」**规则**而非特例 |
|
||||
| v2.2 | 非 Boss 渠道给**门票**形式(拿到即开、不可囤积);渠道约束重构为**三层**(分类白名单 / 可计算谓词 / 显式例外清单);立**默认原则**——除已登记规则外分类内成员都要在池子里 |
|
||||
| v2.3 | 门票四条口径细化(含**计步保底**:连续 5 次展示未出第 6 次必出,刷新重展计入);修正默认原则表述——**只管分类内部**,"渠道出哪些分类"是渠道轴自己的定位决定 |
|
||||
| v2.4 | 顶层定名**「奇物」Wondrous Item**(DND 魔法物品九分类的兜底杂类);落选 Treasure(偏财物)/ Relic(用户否决)/ 全部自造词;**代码词族定为 `curio_*`**(`reward_*` 已被占用) |
|
||||
| v2.5 | 第三类定名**「资源类」**(偏泛,故在 1.3 写死判据句);**回复留在资源类**不拆第四类 |
|
||||
| v2.6 | **修正核心循环图**——奇物不是打一场战斗给一份;关底 Boss 击败=通过这一关是同一时刻;兑付频率写进文首 / 2.1 / 待办 / registry |
|
||||
Reference in new issue
Block a user