diff --git a/AGENTS.md b/AGENTS.md index 48f65ded..84dfeef5 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -12,41 +12,41 @@ ## Engine Version Reference -@design/dev/engine-reference/godot/VERSION.md +@design/engineering/engine-reference/godot/VERSION.md ## 运行与验证(工作目录 = 含 project.godot 的切片目录) - **交付前验收 = 跑 `tools/run_all_gates.sh`,按本批改动域选档(`--code` 只跑代码域/`--docs` 只跑文档域/不带参数=两域全量),所选域全绿才合回 master**——它是全部验证闸的唯一入口与唯一清单,**域划分也只写在它这一个地方**,闸件增减与分域调整都只改它,文档禁另列清单。一次改动同批混触 `game/` 与文档面时跑全量档。跑完写回执 `game/tests/.gates/receipt.json`(含 `domain` 字段),合回时由 worktree-guard 按 diff 路径推出该验哪个域再校验回执(缺回执/quick 模式/回执 commit ≠ HEAD/域不覆盖本次改动/含新增红,五况一律拦截) - 单件直跑(调试期最窄确认用,**不构成验收**):系统级断言面 `python tools/run_smoke.py`(名带 smoke 但不止存活检查,术语见 `game/tests/README.md`)· 场景探针 `…console.exe --headless --path . res://smoke/ui_probe.tscn` · 单元 `… --script res://tests/run_all.gd` - 调参批量:`--script res://smoke/adventure_monte_carlo.gd`(全冒险期望)· `res://smoke/reward_expectation.gd`(奖励期望);通关率/难度类测量一律走全冒险 -- 数值验证:`python tools/balance_verifier.py`(采集端 `res://smoke/verifier_batch.gd`,报告落 `design/qa/`) +- 数值验证:`python tools/balance_verifier.py`(采集端 `res://smoke/verifier_batch.gd`,报告与原始数据落 `sim-data/`) - 熵增闸(新类别 = 同批修订 Project Layout + 白名单):`python tools/repo_structure_audit.py` ## Project Layout - `design/gdd/` — 现行设计文档树(根索引 `02-系统清单.md`,文档增删必须同步;`gdd/ux/` 战斗画面与交互规格) -- `design/art/` — 美术纯文档(圣经/清单/提示词卡 + references/);评估调研归 `design/research/`;不放图片 -- `design/dev/` — 工程规范(五份规约 + architecture + engine-reference) -- `design/qa/` — 验证报告 + QA 呈现产物图;`design/research/` — 调研/提案/评估/历史验收 +- `design/art/` — 美术文档(圣经/角色设计/两份清单/路径图/提示词库与生图操作单);只放 .md 与 `references/` 参考图,审计报告与调研归 `design/research/` +- `design/engineering/` — 工程规范(五份规约 + architecture + engine-reference) +- `design/research/` — 调研/提案/评估/历史验收(中间文档暂存地,入内文件到期即死;**需求卡片不在此,落 `reports/`**);`design/qa/` 已退役,验证截图不进 `design/`(判据见 doc-conventions §11) - `artwork/` — 在途图像素材唯一工作区(文档归文档/在途图归一处/终稿归游戏);整目录不入 git(.gitignore 强制),收口归档 `archive/` - `game/assets/art/` — 已验收终稿(入包被游戏加载);`game/` — 游戏工程本体(代码 + smoke/ 冒烟 + tests/ 单元集成) - `sim-data/` — 机器读数据产物;数据件不入 git(入库例外 = README+analyze.py+growth_model.py);MC 锚与读数常驻留盘,无数值调整禁重跑 - `tools/` — python 工具脚本;`archive/` — 收口归档 zip(gitignored) -- `reports/` — 迭代批产出物(实现报告/代拍板追认单/GDD 反哺点清单);**实现批唯一可写目录**,只放 .md,不是事实源(细则见 `reports/README.md`) +- `reports/` — 过程件容器:**需求卡片**(写卡段产出,实现批的输入合同)+迭代批产出物(实现报告/代拍板追认单/GDD 反哺点清单);**实现批唯一可写目录**,只放 .md,不是事实源(细则见 `reports/README.md`) - 根目录:`README.md`(纯指路牌:设计/流程/当前位/待办四个链接,零规则重述)、`roadmap.md`(里程碑+迭代总表六列+顶部「当前位」节=现在做什么)、`stage.txt`/`review-mode.txt`(运行开关);仓库根禁止再设会话状态文件(2026-10-18 用户裁,细则见 doc-conventions 第 10 节) ## 规范导航(动手前先查表) | 时机 | 权威文档 | |---|---| -| 批次开工 / 流程纪律 | `design/dev/process-conventions.md`——worktree 铁律、五段流水线、批次清单、测试两入口与 MC/闸机细则、像素纪律 | -| 流水线段入口 | 技能对照——doc-design=文档设计(兼任反哺点落文)/asset-ingest=美术录入/req-card=写卡/iter-plan=迭代编排/iter=实现(五者均装于项目 `.zcode/skills/`);登记不立技能;批后收尾与中间文档退役=batch-closure(同一目录);格式与状态机权威=`design/dev/doc-conventions.md` §12 | -| 写代码 / 改代码前 | `design/dev/code-conventions.md`——结构/契约/语言/数值/流程五类硬纪律(反例库 = 同目录 code-conventions-cases.md) | -| 写测试 / 改测试前 | `design/dev/test-conventions.md`——探针标配 / 回归断言 / 全量验证 / 验收清单落码 / 变异验证 | -| 写文档 / 改文档前 | `design/dev/doc-conventions.md`——白话写作 / 载体分工 / 用语 / 结构骨架 / 会话记录与生命周期 | -| 概念切分与互链 | `design/dev/concept-conventions.md`——概念封装 / 跨文档引用 / 归档与事实源 | +| 批次开工 / 流程纪律 | `design/engineering/process-conventions.md`——worktree 铁律、五段流水线、批次清单、测试两入口与 MC/闸机细则、像素纪律 | +| 流水线段入口 | 技能对照——doc-design=文档设计(兼任反哺点落文)/asset-ingest=美术录入/req-card=写卡/iter-plan=迭代编排/iter=实现(五者均装于项目 `.zcode/skills/`);登记不立技能;批后收尾与中间文档退役=batch-closure(同一目录);格式与状态机权威=`design/engineering/doc-conventions.md` §12 | +| 写代码 / 改代码前 | `design/engineering/code-conventions.md`——结构/契约/语言/数值/流程五类硬纪律(反例库 = 同目录 code-conventions-cases.md) | +| 写测试 / 改测试前 | `design/engineering/test-conventions.md`——探针标配 / 回归断言 / 全量验证 / 验收清单落码 / 变异验证 | +| 写文档 / 改文档前 | `design/engineering/doc-conventions.md`——白话写作 / 载体分工 / 用语 / 结构骨架 / 会话记录与生命周期 | +| 概念切分与互链 | `design/engineering/concept-conventions.md`——概念封装 / 跨文档引用 / 归档与事实源 | | 系统设计 / 增删文档 | `design/gdd/02-系统清单.md`——根索引 + 中文规范名↔英文代号对照 | -| 架构(唯一事实源) | `design/dev/architecture/architecture.md`——历史决策沿革查 git commit log,不另设决策文档 | +| 架构(唯一事实源) | `design/engineering/architecture/architecture.md`——历史决策沿革查 git commit log,不另设决策文档 | | 术语与已锁数值 | 规范名与定义 = `design/gdd/术语表.md`(全库唯一对照表,仅 owner 文档可修订);现行数值 = `game/data/tables/*.tres`;规则与取值域 = 各系统 owner 文档。冲突须显式提出,禁默默改值 | | 现在做什么 / 待办与待裁 | 根 `roadmap.md` 顶部「当前位」节+迭代总表六列 · 待办唯一登记处 `design/gdd/06-待办清单.md` · 批次过程与结论查 git 提交信息与 `reports/` | @@ -62,13 +62,14 @@ - 闸机轮次纪律:新码先孤立验证 → 出红只跑红件最小单元 → 长批先最小参数试车 → 开工扫坑册(process-conventions §6) - 变异验证——新增/改写验收函数必须变异变红才算验收成立;无变异红记录只写「已实现,拦截能力未证」(test-conventions §6) - 中间产物吸收即死——结论先吸收进权威文档、未决先迁 06,文件即删且永不提交(doc-conventions 第 11 节) +- **禁写变更记录**——文档与代码文件内一律禁设「版本历史/修订记录/变更记录/修改记录/更新记录/更新日志」节或表格,禁写「本版改了哪些条款」式逐版本叙述与 `# 2026-xx-xx 缺陷修批——` 式行内修订注记;沿革只进 git commit log。版本号可作文档现行身份标记留在文首状态行与正文引用中(doc-conventions 第 5 节,机检闸 gdd_lint R4 反转拦截) - 用语红线——一切对用户输出禁自造黑话,需要作者解释的词必须展开成完整白话句(doc-conventions 第 4 节三形态表) - 呈报六问——What 现状差异 / Why 动机与不做代价 / How 方案与全部备选 / Where 影响面 / 验收判据 / 不确定点单列收尾;Who/When 不进正文;仅首次描述需求/bug/方案适用 - 真人检测只登记不阻塞——登记进 07 清单/实现报告即完成义务,禁以等目检为停工理由或收口前置 - 文件头 = `##` 文档注释,介绍本模块,≤8 行两类白名单(①职责摘要 ②使用约束;禁一切文档反向链接;code-conventions §1.4.1,规范权威 = Google pyguide §3.8 + PEP 257;机器闸 tools/audit_file_headers.py) - 数值单一事实源——玩法数值只存 `data/tables/`(.tres)经 ConfigDB 单点读取;禁数值字面量与自建 `load()` 表路径 - RNG 单点——禁 `randomize()`/自建 RandomNumberGenerator,随机只经 `RngService` 统一流 -- 架构事实唯一源——架构事实只认 `design/dev/architecture/architecture.md`;禁立第二架构文档或决策文档体系,历史决策记录只进 git commit log +- 架构事实唯一源——架构事实只认 `design/engineering/architecture/architecture.md`;禁立第二架构文档或决策文档体系,历史决策记录只进 git commit log - Core 层零 UI 依赖——完整战斗必须可 `--headless --script` 跑通;fail-fast——数据校验错误一律致命中止,无软回退 - spec-AC 一致性——规约与验收标准不得在同一输入上给出不同答案;评审隔离——`/design-review` 必须独立会话跑(与 `/design-system` 隔离) - 像素结构件——先抄后造、验收写成像素级判据、±1px 坐标推导(process-conventions 第 7 节) diff --git a/README.md b/README.md index 983b5123..c9ee03ea 100644 --- a/README.md +++ b/README.md @@ -7,6 +7,6 @@ | 想知道 | 去看 | |---|---| | 这个游戏设计成什么样 | [design/gdd/02-系统清单.md](design/gdd/02-系统清单.md)(GDD 根索引) | -| 开发流程怎么走(五段流水线/批次纪律/验收闸) | [design/dev/process-conventions.md](design/dev/process-conventions.md)+[AGENTS.md](AGENTS.md) 规范导航表(每段一个技能入口) | +| 开发流程怎么走(五段流水线/批次纪律/验收闸) | [design/engineering/process-conventions.md](design/engineering/process-conventions.md)+[AGENTS.md](AGENTS.md) 规范导航表(每段一个技能入口) | | 现在做什么 | [roadmap.md](roadmap.md) 顶部「当前位」节 | | 待办与待裁 | [design/gdd/06-待办清单.md](design/gdd/06-待办清单.md) | diff --git a/design/art/art-assets-checklist.md b/design/art/art-assets-checklist.md index 3d849f32..fb18c2f6 100644 --- a/design/art/art-assets-checklist.md +++ b/design/art/art-assets-checklist.md @@ -1,7 +1,7 @@ # 美术资源依赖清单(Art Assets Checklist) > **性质**:表现层升级批与战斗表现批的生产侧清单——把散在战斗表现 / HUD框架 / 关卡节点地图 / 敌人系统里的资产需求收拢成一张可执行的工单视图,**兼资产维度单一登记处**。**规范效力归各 owner 文档**(战斗表现、美术圣经、04-美术音频方向),本文只补「生产视角的需求规格」,冲突时以 owner 文档为准。 -> **建立**:2026-09-18 场景一(战斗画面呈现)讨论产物。**2026-09-22 GDD 过期账清偿批**:原 asset-checklist.md 并入本文后删除,本文自此为两份清单合并后的唯一清单;同批修正敌人键集/徽章数量/样张状态等过期事实(详见 art-bible 版本历史 v1.3)。**2026-09-22 §5 角色设计落地批**:剪影引用迁 art-bible §5.1、护甲区分方案落 §5.3(清偿两处待设计项)、提示词卡 v2.0 重生成(详见 art-bible 版本历史 v1.6)。**2026-09-23 复用盘点批**:立素材站复用渠道与复用闸(§0);新增 §3.4–3.6 三条此前漏登记的需求(增益状态效果图标 / 营地与元进度件 / 字体);各条目标注来源渠道。**2026-09-23 §5 抽离批**:角色设计内容迁独立文档 `character-design.md`(art-bible §5 自此为引用存根,小节号不变),本文 §5.x 剪影/护甲引用经存根仍可达;主角特征批(直剑→挖掘铲、加旗朱背旗)顺带,主角形象锚见 character-design.md §5.4。**2026-09-23 §6–9 补全批**:art-bible 四章成文(§6 环境/§7 UI/§8 资产规范/§9 参考与反参考);本文 §0 交付格式与像素尺寸行、参考图行、§6 依赖链顺带改指 §8/§9 现行。 +> **建立**:2026-09-18 场景一(战斗画面呈现)讨论产物。**2026-09-22 GDD 过期账清偿批**:原 asset-checklist.md 并入本文后删除,本文自此为两份清单合并后的唯一清单;同批修正敌人键集/徽章数量/样张状态等过期事实(详见 art-bible 的 git 提交史)。**2026-09-22 §5 角色设计落地批**:剪影引用迁 art-bible §5.1、护甲区分方案落 §5.3(清偿两处待设计项)、提示词卡 v2.0 重生成(详见 art-bible 的 git 提交史)。**2026-09-23 复用盘点批**:立素材站复用渠道与复用闸(§0);新增 §3.4–3.6 三条此前漏登记的需求(增益状态效果图标 / 营地与元进度件 / 字体);各条目标注来源渠道。**2026-09-23 §5 抽离批**:角色设计内容迁独立文档 `character-design.md`(art-bible §5 自此为引用存根,小节号不变),本文 §5.x 剪影/护甲引用经存根仍可达;主角特征批(直剑→挖掘铲、加旗朱背旗)顺带,主角形象锚见 character-design.md §5.4。**2026-09-23 §6–9 补全批**:art-bible 四章成文(§6 环境/§7 UI/§8 资产规范/§9 参考与反参考);本文 §0 交付格式与像素尺寸行、参考图行、§6 依赖链顺带改指 §8/§9 现行。 > **更新纪律**:各条目「现状」行顺带更新(未开始 / 候选已出 / 已裁决 / 已交付);做完不删条目,改状态。与 06-待办清单的联动:本文是资产维度明细,06 只留指路存根。 ## 0. 生产渠道、规格与风格宪法 @@ -11,7 +11,7 @@ | 渠道 | 出什么 | 先例 | |---|---|---| | ♻ **素材站复用(轻改)** | UI 九宫格面板与按钮、字体、通用粒子与光效、通用图标、无缝纹理底噪 | 无(2026-09-23 本批立渠道);来源偏好 CC0(如 Kenney 全站、OpenGameArt 标 CC0 件、itch.io 免费包) | -| ✦ **ComfyUI(用户自跑)** | 角色、插画级素材;每个敌种/主角建议出 **2–3 版候选**供裁决,不直接出终稿 | 主角站姿样张(2026-09-16 脚本管线产物,源文件已清理);提示词规格卡 comfyui-prompts.md **v2.0 已重生成**(2026-09-22,美术圣经 §5 落地后正序重生;v1.0 移除决策归状态记录 125) | +| ✦ **ComfyUI(用户自跑)** | 角色、插画级素材;每个敌种/主角建议出 **2–3 版候选**供裁决,不直接出终稿 | 主角站姿样张(2026-09-16 脚本管线产物,源文件已清理);提示词规格卡 art-prompts.md **v2.0 已重生成**(2026-09-22,美术圣经 §5 落地后正序重生;v1.0 移除决策归状态记录 125) | | ⚙ **脚本管线(代理出)** | 图标、格面、样张类精度资产 | 格面占位渲染与程序化徽标(现行) | **通用规格纪律**: @@ -59,7 +59,7 @@ ## 2. P1 —— 角色级(样张通过后开工,ComfyUI) -> 提示词规格卡 comfyui-prompts.md 已于 2026-09-22 按「圣经 §5 落地后重生成」拍板重写为 **v2.0**(主角三态+八敌种,逐资产自包含完整提示词,整段可直贴);v1.0 移除决策归状态记录 125 完成登记(production/session-state/active.md)。 +> 提示词规格卡 art-prompts.md 已于 2026-09-22 按「圣经 §5 落地后重生成」拍板重写为 **v2.0**(主角三态+八敌种,逐资产自包含完整提示词,整段可直贴);v1.0 移除决策归状态记录 125 完成登记(production/session-state/active.md)。 ### 2.1 主角战斗小人 @@ -199,9 +199,3 @@ ### 复用四闸(状态记录 130,现行) 色板量化 / 禁入带吸色 / 灰度可辨 / 授权干净(SA 不可、来路不明不可)。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v0.1 | 2026-10-10 | 补建版本表(本文件此前无版本表)+首笔登记:§3.5 柜台场景贴图括注「道具工坊」改「秘宝匣」(2026-10-10 天赋树设计会话裁) | diff --git a/design/art/art-bible.md b/design/art/art-bible.md index 535becf5..8c20509c 100644 --- a/design/art/art-bible.md +++ b/design/art/art-bible.md @@ -1,6 +1,6 @@ # 美术圣经(Art Bible)— Dungeon Sweeper -> 项目:Dungeon Sweeper(扫雷 × 自动战斗 闯关 Roguelike)· 状态:**第 1–9 节定稿**(§6 环境/§7 UI/§8 资产规范/§9 参考与反参考已于 2026-09-23 v1.8 按 D1/D2/D4/D5 框架成文;D3=§5 角色已于 v1.6 落地、v1.7 抽离独立文档;框架 2026-09-22 用户拍板,原登记于中间产物修订指导,经裁决不入库,明细归状态记录 125);历次修订明细见文末版本历史(现行为 v3.15) +> 项目:Dungeon Sweeper(扫雷 × 自动战斗 闯关 Roguelike)· 状态:**第 1–9 节定稿**(§6 环境/§7 UI/§8 资产规范/§9 参考与反参考已于 2026-09-23 v1.8 按 D1/D2/D4/D5 框架成文;D3=§5 角色已于 v1.6 落地、v1.7 抽离独立文档;框架 2026-09-22 用户拍板,原登记于中间产物修订指导,经裁决不入库,明细归状态记录 125);现行为 v3.16,历次修订明细见 git 提交史 > > **Art Director Sign-Off (AD-ART-BIBLE)**:历次批均 SKIPPED(v1.8 §6–9 补全亦 SKIPPED)— Lean/Solo mode(非 PHASE-GATE;§6–9 已成文,full 门禁签核时机待用户表态) > 风格基调(2026-09-10 用户定稿):地牢题材但**非暗黑风**——轻快明亮的幻想冒险风,全年龄;像素风;角色 2~3 头身 @@ -42,9 +42,7 @@ *设计测试:当新图类型或新变异格需要新视觉时,先换色板加形状,再谈新资产;当格子多样化与"好看/有雷"之辨冲突时,砍装饰,不动逻辑通道。* -### 1.3 修订记录(已迁出) -早期"对 brainstorm 视觉锚的修订记录"整节并入文末**版本历史**(v1.0/v1.1/v1.2/v1.3 条目承载);本节留号占位,正文只描述现行规则(状态记录 109 纪律)。 ### 1.4 格子样张测试(验收标准,2026-09-13 成文) @@ -165,8 +163,8 @@ - **地砖**:一切环境体由同一圆角方形衍生:未开=完整凸砖,已开=同形缺角碎裂,雷=碎裂加巢穴纹(危险格玩家说法见《排雷玩法》);只以"完整度"叙事,不为状态新造形。←原三;P4 - **装饰变体(未开格氛围层)**:覆尘完整砖之上叠加裂纹/碎石斑/物件级点缀等装饰;2026-09-29 v3.0 物件级解禁——物件级装饰(小石块/陶片/骨殖等)须走**专属装饰形状家族**(与信息元素形状语言隔离、灰度下不与任何逻辑元素同形),数量配额按图类型定(候选 3–5 种,样张 v3 冻结),一律残缺、内凹、低对比而自然后退(§3.4);零信息纪律(分布随机、与雷/安/类型零相关、灰度下禁止制造新分类特征、分布每板一次跨轮不复掷)以原则三为准,此处不赘。←原三 - **结果整格表达(已开格)**:已开格按当格结果整格表达(结果清单见原则三);画法——产资源格的家族物件纹样用 §3.1 道具点剪影语言(直线几何体)角嵌于砖缘,砖心与数字字形占位区留白(已开格仍承载数字);危险格巢穴纹较已开格更凶一档,形状+颜色双通道不变。←原三;P3 -- **未开格预读通道(微光单通道)**:类型预读 = 类型微光单通道(色相+明度双码,色带 §4.2);色弱类型主通道 = 微光明度梯度(组粒度——组间互辨;§2 微光明度例外);格内零角嵌/箭头/加号类附加形(2026-09-28 用户裁「微光格只留微光」,退役史见版本历史 v2.12)。←原一;原三 -- **旗(封印印记)**:插旗动作的叙事呈现 = **封印**(玩家可见专名,术语定义见 [术语表](../gdd/术语表.md)「封印」条;插旗动作面见《排雷玩法》)——旗 = 封印印记;封印色(§4.1,现行封印黑)与格内优先级栈位(§1.2)不变。封印特效(施印瞬间 + 印记常显形态)资产归清单 §4 演出类;旗印记纹理已落位、字形占位退役(迭代 9 卡⑬兑现;原 06 债务条目已完成移除)。←原一;P2;术语批 2026-09-25;封印紫批 2026-09-26;封印黑批 2026-09-28 +- **未开格预读通道(微光单通道)**:类型预读 = 类型微光单通道(色相+明度双码,色带 §4.2);色弱类型主通道 = 微光明度梯度(组粒度——组间互辨;§2 微光明度例外);格内零角嵌/箭头/加号类附加形(2026-09-28 用户裁「微光格只留微光」,退役史见 git 提交史)。←原一;原三 +- **封印印记**:封印动作的叙事呈现 = **封印**(玩家可见专名,术语定义见 [术语表](../gdd/术语表.md)「封印」条;动作面见《排雷玩法》)——封印动作落在格上的印记称封印印记;封印色(§4.1,现行封印黑)与格内优先级栈位(§1.2)不变。封印特效(施印瞬间 + 印记常显形态)资产归清单 §4 演出类;封印印记纹理已落位(现行件=`seal_mark.png`,32×32 可选件)、字形占位退役(迭代 9 卡⑬已实现;原 06 债务条目已完成移除)。←原一;P2;术语批 2026-09-25;封印紫批 2026-09-26;封印黑批 2026-09-28 - **可挖域接触带微光(交互反馈层,2026-09-25 用户拍板)**:挖掘期,英雄格周界与可挖域(概念见《排雷玩法》动作合法性节;呈现义务见《HUD框架》可挖域指示)的接触面画呼吸微光——正交邻墙=该侧整条边,斜向邻墙=共享角点+向两侧各延伸半条边;光只画英雄格(空间)一侧、不进墙格(与装饰变体零冲突,数字砖心不涉);微光=空间的灯光边界(画法口径)。色相=蓝族浅一档(§4.2 蓝条;与主角蓝框的分层归样张批);呼吸=§2.1 挖掘期唯一在动元素,减动效停格。角点为斜墙与正交墙共享、不逐格归因,逐格指认=悬停金框(呈现交互归《HUD框架》悬停指示域)。←§2.1;§4.2;P1 - **墙体**:圆角砌块堆叠,禁尖刺装饰——尖刺专属危险语义,装饰禁止伪装逻辑差异。←原三 - **高墙瓦片体系(2026-09-26 定稿,样张批追认)**:未挖格=**一整块 32×32 自含凸起岩体**(方案甲核心定义);素材语义名——未开格素材=**墙瓦片**,已开格素材=**地面瓦片**(术语 2026-09-26 用户立)。**边界=墨线纪律**:墙瓦片与相邻格分界一律 1px 深墨线、直线贴格边、零锯齿;墨线职责=分隔,不追求与地面融合(Tiny Dungeon 样图实证调研后否决出局——TD 拼块套不进方案甲自含岩体定义,2026-09-25 终局维持方案甲;记录=git 提交 70d2320)。**光照=单一北受光**:北缘=墨线内侧 1px 微亮棱(就地取色提亮,禁宽亮带);西/东缘=墨线后直进纹理、不加修饰;南缘=墨线+立面窄暗条(约 1/3 格高,横层理叠石、禁竖条纹栅栏感)。**凹角**:角点单像素落线;南立面侧凹角加 1px 立面收头——带身与转角竖线同列收尾,禁悬空、禁突出(v9.1/v9.2 两版返工实证)。现行定稿=`game/assets/art/board/terrain_*`(16 唯一墙瓦片+5 地面瓦片变体;词表与查表逻辑见 `高墙瓦片词表(已落码 board_world.gd 查表,文件已退役)`)。**高墙感 D 投影档+整板悬崖(样张 v2 定稿 2026-09-28,用户 2026-09-27 四变体挑档)**:南临空墙格=立面口沿高光 2px `Color8(196,172,132)`+双段暗带(0.16/0.25 格边,黑罩 α0.60/0.82);北邻墙地面格=三段渐隐投影(顶带 0.22 格边,α0.28 起);整板悬崖=板底/右侧 `DEPTH_PX 8px` 暗面+列分隔竖缝+岩层横纹+口沿高光+接触 AO+底线收边+悬浮影(游戏 `board_world.gd` 同款结构件,样张脚本与游戏渲染常量同源——机检 F7 承载)。←原三;状态记录 164;样张 v2 批 2026-09-28 @@ -487,7 +485,7 @@ - **显示档登记例外(2026-10-06 UI 设计对齐批 P6 甲——64 源 0.5×,待素材批消除)**:柜台四枚 `icon_forge/workshop/atlas/keystone`(64×64 源)显示档统一 **32px = 0.5×**;状态九枚(32×32 源)mini(站桩)档 **16px = 0.5×**。两处均系「显示尺寸侧唯一可调、素材一字节禁改」红线下的人工检整数半倍档,登记为**待消除例外**——素材批出 32px 源后回归 1×。常规档显示一律 1×(状态九枚 32px、手绘十枚 20px/40px 双档、BCard 图标槽 40px=2×)。 - **乙类·角色与单位精灵**(有机形体、非文字):允许运行时非整数倍缩放(NEAREST 过滤不变),容忍轻度像素宽窄不均;判据 = 实机目检,可感不适即回整数档。乙类今后免逐案豁免(豁免蔓延断根)。 - **站桩立绘槽位=高定宽随(2026-10-04 原型审计教训落规)**:立绘/精灵槽位只定「高度的整数倍档」,宽度随源图宽高比自适应——**禁止把全部立绘塞进统一方框强拉**(纵横倍率必须恒等)。实例=UI 原型 88×92 方框把 23×48 地精源横拉 3.83×/纵拉 1.92×、26×48 熊地精 3.38×/1.92× 压扁发花,46×48 主角近方恰等比故独活——方框是按主角比例定的,窄条生物(细长本体裁掉透明边)进主角的框必变形。乙类的非整数豁免只覆盖**等比**缩放,不含纵横异倍变形。 - - **1920×1080 档策略(2026-09-30 三裁决案甲落定——三案呈报见 design/qa/m3-iter9-t8-rulings-2026-09-30.md)**:全局等比(stretch=canvas_items+aspect **keep**)——16:10 设计在 16:9 窗口=等比 1.35×+左右黑边各 ~96px,构图与 1280×800 基准档完全一致(逻辑布局 1920/1280 逐键一致实测);甲类 1.35 非整数缩放例外注记:轻度宽窄不均系本档位接受代价(像素游戏 shipped 常态),实机目检可感不适→回乙案(1920 独立 2× 基准)重议;乙类同前款。 + - **1920×1080 档策略(2026-09-30 三裁决案甲落定——三案呈报原件已随中间文档退役,删除批见 commit 8e02dcf0)**:全局等比(stretch=canvas_items+aspect **keep**)——16:10 设计在 16:9 窗口=等比 1.35×+左右黑边各 ~96px,构图与 1280×800 基准档完全一致(逻辑布局 1920/1280 逐键一致实测);甲类 1.35 非整数缩放例外注记:轻度宽窄不均系本档位接受代价(像素游戏 shipped 常态),实机目检可感不适→回乙案(1920 独立 2× 基准)重议;乙类同前款。 - **画布基准(2026-09-23 用户暂定值)**: - **主角人设原图 = 48×72**(1× 基准,暂定;与站姿降采样可读性验证一致); - **主角战斗状态图(含 B 区站桩侧向)= 48×72**(同上暂定;v1.9 待决注记「主角立绘档空缺」由此完成); @@ -500,7 +498,7 @@ - **归档纪律(2026-10-06 P0-1 用户口径写入文档)**:图片素材**不入 git 版本管理**——仓库只保留运行时引用资产(game/assets);生成链路原始产物(AI 原图/中间产物/候选版本)归档至 `archive/` 并择机上对象存储备份;主文档(圣经/GDD/清单)**禁引用 artwork/ 散文件路径**——定稿成图以 game/assets 为唯一事实源,过程稿引用一律用归档包路径或描述性出处。 - **入包与对账检查器(2026-10-06 P2 固化挂点——本批只立挂点,实现随 PRD 工具批)**:①**色板检查器**——扫描新素材色板,报新增色/近色告警/超 §4.1 上限(48)拦截,挂素材流入包步(asset-path-map §2 第 3 步);②**路径核对器**——扫描 asset-path-map 声明的全部路径,悬空/退役未清即报,随大批与审计例行跑(2026-10-06 三处悬空即此类失守);③**standee_asset_check 硬闸升级规格**(审计 §07-2/3)——按 §8.2 逐键定档校验体量与档高(现「宽 1–75」虚设区间退役)、像素域色数 ≤32、无非整数倍缩放痕迹、描边亮度达标(亮描边明度档,§8.2 描边层级);把 v3.6「高定宽随」教训变成代码闸而非文字。 - **交付格式**:PNG 透明底;动画 = 序列帧或引擎精灵表(SpriteFrames),帧尺寸恒定、横向等宽排列(候选)。 -- **命名规范(候选草案)**:`<域>_<对象键>_<状态|变体>[_<序号>].png`,全小写 snake_case;**对象键 = 数据表主键**(effect_id/reward_id/cell_type/enemy_id——图标键契约 §4.6 的文件侧延伸:资产文件名键 = 图标键,全局恒定禁运行时换图);图类型变体后缀 = board_type 键(`_dungeon`/`_underdark`/`_deep_underdark`);候选评审件与终稿分目录(`candidates/` 承载评审件)。 +- **命名规范(候选草案)**:`<域>_<对象键>_<状态|变体>[_<序号>].png`,全小写 snake_case;**对象键 = 数据表主键**(effect_id/reward_id/cell_type/enemy_id——图标键契约 §4.6 的文件侧延伸:资产文件名键 = 图标键,全局恒定禁运行时换图);图类型变体后缀 = board_type 键(`_dungeon`/`_underdark`/`_deep_underdark`);候选评审件与终稿分目录(`artwork/candidates/` 承载评审件)。 ### 8.4 帧数规格(样张 v2 冻结 2026-09-28) @@ -543,50 +541,3 @@ | **传统扫雷 1–8 八色分色** | §4.1 数字墨三档 | 八色必撞红/金/蓝/紫赤语义色段;数字只走墨族三档色温,字形为唯一数值载体 | --- - -## 版本历史 - -- **v3.15(2026-10-17)未开格类型微光明度档 provisional 值登记(迭代 30 卡①实装随批;§4.2/§4.6.3 权威面零改动、§2.1 不追加)**:①**五组明度档 provisional 值登记**(色相零移动——样张 v2 冻结的五组色相本身不动,本批只定各组明度档,归「待定现用」第三态〔v3.10 立〕,复核转正归战斗一屏样张〔迭代 30 序位②〕):通用增益芥末黄 `#F7DF43`(冻结 `#D6C13A` 提亮档)、治疗黄绿 `#68D042`(冻结 `#5CB83A` 提亮档)、穿刺青 `#30A6A6`(冻结 `#2E9E9E` 提亮档)、魔法紫罗兰 `#7B5BD6`(与冻结值同)、群伤绯红 `#A61D37`(冻结 `#FF2D55` 的 V=0.65 暗档);五组 ΔH ≤0.13° 全数只动明度;实装落点 = `ui_kit.gd` TG_GLOW_* 五常量,呈现参数 α170/带宽 cell÷8 维持 §4.2 v2 口径不动;②**明度排档口径**——阶梯在渲染合成空间(伽马)排档:引擎 canvas 混合在帧缓冲 sRGB 域做线性插值,按 CIE L* 线性排档曾把群伤/魔法两档排反;相邻组对比度(CR)四对模型值 1.245/1.234/1.239/1.270 全数过判据线 1.20,实测最弱对 1.232;③**停机呈报留痕**(契约 5):群伤暗档初版 `#FF1A31`(ΔH 5.40° 超差)作废,用户裁「换更暗档」→ `#A61D37`(色相零移动);④连带=头注「现行为」漏更订正(v3.12–v3.14 三代未回头注,本批订正为 v3.15)。零素材新增,微光语义零改动 -- **v3.14(2026-10-14)迭代 24/25/26 反哺写入批(用户裁「全部按呈报写入文档」——qa 收尾批)**:①**§4.1 新入三 token**(GOLD_BRIGHT #E0B860 收益金亮档 / HERO_BLUE_BRIGHT #7EBAF0 小人蓝亮档 / SLOT_BACKDROP_SOFT #806A4E 图标槽柔和档——迭代 26 反哺③语义岗登记转正,色板计数 42→45);②**§7.6 新增「引擎原生控件与按钮状态规格」节**(迭代 25 反哺①+迭代 26 反哺①④——原无条款,两批实现临时权威转正:按钮五态矩阵〔悬停 modulate 1.06/按下本族下沉/禁用 α0.45 幽灵化/焦点 INK 2px 内缩 1px 环〕+原生控件组件规格〔滚动条 StyleBox 柄/滑轨两段可辨/气泡/输入件/预盖件/字体防御〕+氛围层平滑件与抖动派并存留样张批+主题色值双源注记〔迭代 25 反哺④〕);③**§8.2 增全局纹理过滤与平滑渐变件例外条款**(迭代 26 反哺②——Nearest 全局+三件 LINEAR 豁免清单);④连带 = §7 白话章节清单补 §7.6。色值遵守定值单点纪律指路 theme README 溯源表,零复述 -- **v3.13(2026-10-10)营地柜台名扫改(2026-10-10 天赋树设计会话裁「道具工坊」改名「秘宝匣」)**:§2.8 承载元素与 §6.2 场景构成两处三柜台括注改名。零素材新增 -- **v3.12(2026-10-07)类型微光组粒度批(用户裁——道具三层重设计·地图层顺带)**:§4.2 类型微光色带「组内明度梯度分型」降为「组间五色相+组内不细分」——逐型明度映射从未定义、cell÷8 泛光上五级明度物理不可读;色弱通道随迁组粒度(§2 验收2/§4.5⑨ 同批措辞同步);gp 不拆独立色相(用户裁:攻击三类+治疗+通用=五色已达玩家记忆上限);五组色相本身不动(样张 v2 冻结维持) -- **v3.11(2026-10-06)文档层三小活收尾(审计 §07 吸收对账后剩余项)**:①**§8 头注新增「定值单点纪律」**(审计 §07-1 落规——数字定值只落 §4.1 主色板 + §8.2 两张表,其余章节指路禁复述;character-design §5.5 数值指路 §8.2);②**§8.3 检查器挂点补 standee_asset_check 硬闸升级规格**(审计 §07-2/3——按 §8.2 逐键定档校验/色数 ≤32/无非整数缩放痕迹/描边亮度达标,现「宽 1–75」虚设区间退役,实现归 PRD 工具批);③连带 = art-status-checklist 状态图标行悬空路径(candidates/status-icons-2026-09-23/)按归档纪律改描述性出处;审计 §07-3 体量分区数字表建议**改判作废**(已被「生物体型+逐键定档」语义取代)。 -- **v3.10(2026-10-06)两拍板写入文档批(P2 收尾)**:①**§4.1 色板数值改「待定现用」态**(用户立第三态,非候选非死规——现行即执法、需求引入时走修订并登记;释义随条);②**头注新增「条款验收标注纪律」**——全文条款尾部三档标注(←机检/←目检/←方向性,用户拍板「符合工作流程」),新条款按此书写,存量口号型分章补标(06 挂账批执行);③连带 = 06「口号型条款机检化批」状态补格式已拍板注记。 -- **v3.9(2026-10-06)P2 清理项文档处置批(审计 04 节四项;零素材新增)**:①**§4.1 新增色板增量纪律**——硬上限 48 色(现行 ≈42)+新色双门(§4.2 语义检查 / 与既有色 RGB 三通道差 ≥8/255,反例 #3A2E22↔#362B20 差 <5),不过门走「换色合并」禁加色绕行;数值候选待样张批冻结。②asset-path-map.md 三处悬空/过时更正——candidates 目录注「按需创建非作废」、废路径 production/mockups/** 改 `artwork/mockups/**`(实存)、board/ 现役改 terrain_floor__ + flag_seal(旧 board_floor/wall 退役)。③P2-1 草稿整理批(3349 个)与 P2-4 口号型条款机检化批登记 06 待办(前者执行须 dry-run 先行)。④待决项 A/B/C 前批已全部完成,本批零遗留。 -- **v3.8(2026-10-06)零定义资产族契约批(P1-2,用户拍板「写进圣经、不另立文件」)**:零素材新增,纯契约登记——①§4.6.2 奖励徽章 19 枚资产契约(`ui/icons/reward_.png`,源 40×40,显示 20/40 双档候选);②§4.6.3 新增地形变异纹带族资产契约(`board/band_.png`,键集事实源 = 地形变异 GDD region 六行,源 64×64 无缝,已开变异格标识层);③§6.1 舞台背景插画资产契约(`stage/stage_bg.png` 基准一张 1280×270,三关换挡走 wall_ambient tint 槽不出三张)。三族照抄状态图标「键→文件名→尺寸」模式(§4.6.1 全链唯一完全合规族,审计点名可复制);程序化占位在役,出图工单归 PRD;art-status-checklist 看板随交付 ✅。 -- **v3.7(2026-10-06)立绘八敌定档批+方案二排版写入文档+归档纪律(P0 完成讨论批;工作流程铁律 = 讨论期只动文档,代码实装另批走 PRD→迭代)**:①**§8.2 画布基准——站桩立绘源档八敌逐键定档**(goblin 36/giant_spider 38/duergar 46/hook_horror 58/bugbear 62/ogre_chief 74/drider 90/duergar_king 94,×2 整数显示;原三档 48/64/96 候选与 v3.0 档位上调方向候选一并完成;依据 = 用户三体型约束+定档总图确认;可读性门槛源高 ≥32 实测;派生管线 = pixel-1→紧裁→dom_block_resize);②**§8.2 缩放纪律——站桩立绘排版 = 方案二**(B 区 270 ≈1/3/C 区 530 ≈2/3/扫雷盘 438 不缩;立绘底锚落台+血条状态落底排全场对齐+大体档探顶;原「血条悬浮头顶」退役——高盒空洞用户点名否决);③**§8.3 归档纪律**(P0-1 用户口径:图片不入 git/归档+对象存储/主文档禁引用 artwork 散路径);④连带 = character-design.md §5.2 体量语义修订(强度先验→生物体型)+§5.5 源档注记+钩爪恐魔宽≥高豁免登记、battle.md 区表/组件/线框/空态/修订记录顺带。 -- **v3.6(2026-10-04)站桩槽「高定宽随」条款落规(UI 重设计原型审计教训)**:§8.2 缩放纪律新增**站桩立绘槽位=高定宽随**条——槽位只定高度的整数倍档、宽度随源图宽高比自适应,禁统一方框强拉(纵横倍率恒等;实例=原型 88×92 方框把 23×48 地精横拉 3.83×/纵拉 1.92×、26×48 熊地精 3.38×/1.92× 压扁,46×48 主角近方恰等比独活;三层成因=窄条源图/方框一刀切/非整数倍 pixelated 发花);**乙类非整数豁免口径收窄注记=只覆盖等比缩放,不含纵横异倍变形**。同批原型侧修复=站槽 height:96 width:auto(48px 源 2×)+开始屏背景怪/大立绘/庆祝像/旗/图标显示尺寸整数倍对齐。文档核查=battle.md/HUD框架 均无强制方框条文(缺口是规则本身缺位,本批补) -- **v3.5(2026-10-03)视野迷雾黑暗区域渲染规格批(迭代 11 第④批实施批 T1;上位裁决=《HUD框架》「视野迷雾」节 v0.13,现行事实源已定论照抄)**:新增 §6.5——菱形灯光区=曼哈顿距离 ≤LIGHT_RADIUS(基准 8,表值/常量参数化;两圈分立注=类型微光仍贴身 8 邻格不随灯光区扩;提灯 +2 插值位预留不接效果);区外未开格全黑不渲染(照抄现行事实源「全黑不渲染」,非高遮蔽档,三档信息阶梯理由在节内);区外已开格暗淡记忆态(记忆板 #3A3A3A/记忆墨 #C4C4C4 provisional,数字 ≥4.5:1,三通道可辨判据在案,色牌格退牌归板,旗印记随未开格全黑隐没);过渡边=硬边逐格二值(禁渐变晕边);结算期去饱和叠加互斥口径(记忆态为终态档);§2 光照氛围允许域自查注记在节内;§6 开篇枚举行补「棋盘视野迷雾遮蔽」一词。纯呈现层零素材新增(程序化遮罩/调制),微光语义零改动,明度值 provisional(样张/实机自检锚,代拍板白名单内) -- **v3.4(2026-10-01)数字呈现三态修订(甲案深墨族方案渲染帧取证证伪后改版)**:v3.3 的「L2/L3 切深墨族直画」经 board_shot_probe 渲染帧取证证伪——underdark 系地板双峰纹理(近黑斑 p10 0.011+近白筋 p90 0.40+)上深墨直画融黑斑隐形(用户实机复测「还是看不清」实证),任何墨族直画不可救;改**三态**:dungeon 亮族直画(门 p90≥4.5/均值≥2.5)/中暗板深墨直画(门 p90≥4.5/均值≥3.0)/双峰板**色牌垫底**(素牌+深墨 12:1,v2 色牌形制复役);机检三关呈现模式断言 19/19;目视验证面=board_shot_probe 渲染帧取证入流程(机检≠看得清)。§1.4 样张闸第四验收项判读随三态口径件注记。 -- **v3.3(2026-10-01)数字墨按板自适应修订(L2/L3 亮瓦融字缺陷修复,用户裁甲案「墨色按关自适应+补三关对比断言」)**:§4.1 数字墨双色制①改**按板自适应双族**——暗纹理板维持亮族三档(样张 v3 冻结原样),亮筋纹板(underdark/deep_underdark)切深墨族三档(青墨/赭墨/锈墨复役);选族判据=所选族对归一后地板 p90 亮斑 ≥4.5:1 且对均值 ≥2.0:1,落码单点 `board_view._digit_ink_mode`,机检=`terrain_tile_sets_test` 三关对比断言 21/21;缺盘平色回退默认深墨族。§4.1 其余条款(字形唯一载体/三档色温/垫牌后备)不变。 -- **v3.1(2026-09-30)越权清理批(用户指令:按域内审查修订案修改,概念定义归还 GDD 权威文档)**:①**微光口径四处改指路**——§1.2 原则三/§1.4 样张清单去「常显」、§4.2 色带条去「常显」、§4.6.3 去「全部未开格」,统一指路《HUD框架》「未开格类型微光」节(2026-09-30 完成批落位的唯一事实源,他文只许指路);②**概念越权剥离**——危险格叙事属名与换轴史、封印插旗语义(→registry「封印」条+《排雷玩法》玩家说法)、极性定义(→《地图战斗资源》极性提案)、完美排雷定义与兑付结构(→同)、敌意图预告语义与「待机即预示」(→《敌人系统》意图线索节)、奖励 weight 与兑付/库存语义(→《地图战斗资源》)、键名沿革史(empower/fortify 来源=敌方技能施放、alert 2026-09-20 八型批换装、ac_up 2026-09-16 换装——自 §4.6.1 移除留痕)、甲档 armor 数据实态(L1 全轻甲/L2 除 drider 外全轻甲/L3 duergar·duergar_king 重甲)与旧键集史({grub, ambusher} 随 DND 更名退役——自 §4.6.4 移除留痕)、「敌不占格」断言、「类型分布即先验」机制 rationale、「分布属初始化随机」归属断言(改画法口径「分布每板一次跨轮不复掷」);③**实装状态与排期注记移本历史留痕**——游戏 UiKit.HERO_BLUE 已同步 #2E6E8E→#2E86DE、UiKit.CONTACT_GLOW 同值 #D6ECFF、旧可挖域绿相 DIG_EDGE 已随接触带方案退役、死亡表现切片实装=程序化 tween(灰化罩+碎块弹飞 5 块 0.45s,挂 unit_died)、封印特效「待表现批」、§6.1 背景插画「排期归表现层升级批」、panel_stone/button_stone 接线归最近表现批、§7.2 对比度违例「修复归表现批」、§7.5「占位不空窗」注记;④**角嵌退役条改写**为现行「未开格预读通道(微光单通道)」条(退役史见 v2.12);⑤**残留矛盾清除**——§3.2 呈现基准条「装饰变体一律纹理级」旧措辞随 v3.0 物件级解禁同步;⑥§2.8 营地承载元素/§7.5 钥石呈现位改指 §6.2(事实源边界在该节);⑦**补漏五处(同批完工审计发现,同类剥离留痕)**——§4.1 危险红「机关红」更名史、§6.2 营地贴图「排期归 UI 贴图重构批」与「占位不空窗」注记、§7.4 字体「接入归表现批」注记、§8.1 扩板与 1920 档换算值「归表现层升级批成文」(改债务指路 06「分辨率档位与棋盘格边长口径」条)、§8.3 「终稿目录归表现批定」注记、§1.4 整屏样张闸「表现层落码批开工前」改屏级落码开工前、§7.1 「样式终稿归样张后表现批」改随样张闸后定稿。**零美术信息损失**:全部色值/机检断言/纹样描述/画法参数不动,样张 v2 四冻结之②③维持 -- **v3.2(2026-09-30)样张 v3 冻结批+缩放分级修订+案甲落定(迭代 9 T1/T2/T9;需求卡片已退役(git 710f9b7 出口批))**:①§1.4 补**样张 v3 冻结记录**——机检 17/17 全绿,断言定值两件(A3b 图底分离定值 Δ≥30〔实测 38〕/A4 尺寸基线硬等冻结 立绘 46×48+小人源 32×32),F6 沿用 v3.4;**四冻结①④重冻**——①砖面形态=E 格高墙 30% 词表扩展+格底明度分档(世界底层档 L≈0.10)+装饰物件级解禁/④数字形制=亮墨三档直画+色牌后备;②色板③动画维持冻结。产物 `artwork/mockups/sample-batch-v3-final-2026-09-30.png`+机检报告【冻结】;气质终审=2026-09-29 用户验收豁免(状态记录 281)。②**§8.2 缩放纪律分级修订**(2026-09-26 用户裁「改规则不豁免」写入文档,修订窗口=v3.0 已入库):甲类文本语义件(数字/图标/旗/砖面/纹样)维持严格整数倍;乙类角色精灵允许运行时非整数倍(NEAREST 不变,判据=实机目检可感不适即回整数档);1920 档策略经三裁决**案甲落定**(全局等比 stretch keep——v3.2 当日 T9 写入文档,详见 §8.2)。头注「现行为」顺带 v3.2。 -- **v3.0(2026-09-29)中修批(案 B,用户拍板;审视报告=git fbaadb8(已退役),六病根+三案呈报)**:①**§2 明度恒定→明度分层**——三档明度带(信息面层/世界中层/世界底层),情绪与状态明暗禁令保留(状态区分仍只走色相/饱和/运动/元素),空间纵深/光照/形体塑造开允许域;§2.1/2.2/2.3/2.5/2.7 各状态条措辞随改,§2.7 增「明度带随深度微移」候选。②**原则二色牌降级**——「明亮为皮,色牌为骨」改「明度分档为骨」:已开格走世界底层档(候选 L 0.20–0.32),棋盘数字墨亮族直画(候选 L≥0.75,冷亮/暖白/金亮三档色温承袭密度语义),色牌仅复杂格底后备(垫牌场景用深墨族,12.3:1 实测保留);§1.4 验收 1/2/4 与判定回退口径同步,样张 v2 四冻结之①④(砖面形态之数字承载面/数字形制)**解冻待样张 v3 重冻**(②③冻结〔色板/动画〕不受影响)。③**语义色适用域限定**——§4.2 各条「X 只说 Y」约束信息层与语义物件,纯环境氛围解禁(焦点预算与低饱和后退接管防抢焦);紫赤禁入带环境层低饱和可入、高饱和独占不变;§4.3 换皮槽与不变槽口径随改。④**装饰变体物件级解禁**——专属装饰形状家族+零信息纪律不变+焦点预算约束,配额候选 3–5 种(原则三/§3.2)。⑤**§6.1 舞台正面目标**——B 区=地窟看台(地台/落影/光源氛围候选),补原条只有负面约束之缺。⑥**§1.4 整屏样张闸新增**——战斗/关卡/菜单/营地四屏,验收四项(全局文字 ≥4.5:1/明度三档带/整屏焦点预算/文字禁压纹理),闸形=方向稿目检先行→机检冻结。⑦**§7 三件**——7.1 占位完成条款(占位=临时态,终稿闸=整屏样张)/7.2 全局文字可读性硬指标/7.4 字号下限 16/14px 对齐 ux-designer PC 规范+层级手段解禁(字号档差+墨色+字重)。⑧**§8.2 档位上调方向候选**(主角 64×96/敌 64/96/128 评估,归整屏样张闸,本批不重产资产)。⑨**§9 参考表**——Moonlighter 取列增光照层次、§9.2 DD 条款改名+新增「传统扫雷白牌」反面行。⑩**§3.4 焦点双机制**(完整度+明度带)。**连带文档同步**:character-design.md(提灯点亮解禁候选)/interaction-patterns.md/level-map.md/art-assets-checklist.md/battle.md/04-美术音频方向.md 引用口径顺带。**挂账(06 登记)**:样张 v3 重跑批(断言改造+新参数冻结)/ui_kit 与棋盘渲染落码批(明度分层/格底分档/亮墨/UI 对比度修复)/资产升档重产批/mockup v3 方向稿(按 v3.0 重出)。**代拍板三项 2026-09-29 当日已追认**(闸形两段式/色牌后备范围/升档只立方向)。 -- **v2.15(2026-09-28)人设旗脱钩批(用户拍板)**:§5.4 速览背包旗改旗朱红矩形旗+§4.1 封印黑条红族口径限定棋盘侧;封印黑仍为棋盘封印专属色不变;人设侧详见 character-design 对应版本行(v1.7) -- **v2.14(2026-09-28)关卡画面样张 v1 冻结批(M-2 迭代 4 T1–T4,机检闸形 A——11/11 全绿即冻结)**:§7.2 增「暗底呈现态双色墨制」条(暗底系图标/读数=暖白 #F0E2C8、当前金底转深墨 #181410,各态 ≥4.5:1;已过节点暗金冻结 **GOLD_DONE #68562C** 专用呈现态值——旧 GOLD_DIM #8C743C 对双色墨均不达标;Boss 描边=紫赤 2px+外缘 1px 深墨环灰度冗余通道——§4.2 色相独占本色不变);冻结面=节点图标形制(♻ kenney-board-game-icons 五键 bow/award/campfire/crown_b/pouch,20px 烘焙 1:1 消费,WARM 单色,复用闸①②③④)+通道质感(折线 2/3/4px 直角肘形)+画布公式(70+层×122+34/52+槽×58+26+8 下限 620×240——routebug 83c11a1 根修件同源)+底栏样式(暗数据框 WARM/WARM_SOFT 双墨)+屏底(BG_ROOT+backdrop_stone);换层色板渐变挂点落码(§2.7 切片档——level_index→tint 表候选值随 §6.3 方向,明度带归一,终值归色板样张批)。规格承载=level-map.md(修订记录同日行);产物=`artwork/mockups/level-map-sheet-v1-2026-09-28.png`,机检报告=git 提交 9a79927;气质终审=M-2 出口闸真人目检 -- **v2.9(2026-09-26)高墙瓦片体系定稿批**(高墙批全程收官,用户拍板;状态记录 163/164):§3.2 新增「高墙瓦片体系」条——未挖格=一整块 32×32 自含凸起岩体(方案甲核心定义)+术语(墙瓦片/地面瓦片)+墨线边界纪律(1px 深墨线直线零锯齿,职责=分隔不融合)+单一北受光(北缘 1px 微亮棱/南缘立面窄暗条/凹角角点+立面侧 1px 齐平收头),定稿=`game/assets/art/board/terrain_*` 21 枚;§8.5 增「生产分工」条——材质归模型(AI 只出无缝填充纹理)、结构归程序(autotile 拼接约束超 2D 生图能力,实证在案)+镜像规则(只许 flip_h 禁旋转)。条口径=样张批追认(与 §8.4 方向集先例同)。词表与查表逻辑、搜包评估记录归 design/research 两档;过程文档顺带清退(中间产物不入库先例,状态记录 127)。 -- **v2.10(2026-09-26)封印紫批**(用户拍板:插旗色 旗朱 #C63D22 → **封印紫 #7C3AA8**,色相 ≈267°):§4.1 旗朱条改写为封印紫条(候选值样张批冻结;禁入带合规+与魔法微光/妨害紫间距登记)、§4.2 红只说危险改单档(旗朱预告档退役)、§3.2 旗条/§1.4 验收 4/§4.3 不变槽/§3.2 变异互辨/§5.4 速览顺带。**语义面**——封印自术语批(2026-09-25)获专属色相,红族收敛为危险红单档;攻击预告/弹道/拒绝等非封印红统一归危险红族(RED_MINE)。**连带**——character-design §5.4 背旗、battle.md 三处、关卡节点地图 Boss 描边、清单封印特效行顺带;comfyui-prompts 生图卡颜色词随样张 v2 重生成。 -- **v2.11(2026-09-28)封印黑批**(用户拍板:封印色 封印紫 #7C3AA8 → **封印黑 #000000**——紫色与微光蓝族色相冲突,黑色无色相天然合规):§4.1 封印紫条改写封印黑条、§3.2 旗条/§1.4 不变槽/§4.3/§5.4 速览顺带;代码 UiKit.SEAL_PURPLE→SEAL_BLACK 改名迁移+board_view/board_fx_view 换色+样张脚本同步;胜利彩带装饰紫位改亮金(紫赤系 Boss 独占不入装饰);远程生图单主角旗 purple→black 十六进制锁色重锁。历史行(v2.10 等)按文档纪律留痕不改 -- **v2.12(2026-09-28)角嵌退役批**(用户裁「微光的展示只有微光,不要加额外的箭头或者加号在格子里面」——样张 v1 否决原因之一):未开格类型角嵌纹样**彻底退役**——类型预读改类型微光单通道(色相+明度双码),§2 微光明度恒定开例外(明度梯度承载类型,梯度不压格底明度档/三态分类),色弱类型主通道=微光双码;§1.2 优先级栈/§1.4 样张清单与验收 2/§3.2 角嵌条(标退役)/§3.4/§4.2 色带条/§4.5⑨/§4.6.3 呈现约束同步;已开格物件纹样(角嵌于砖缘画法动词)不在退役面;机检新增「微光格零墨色附加像素」断言;角嵌误读率指标转微光误读率 | -- **v2.13(2026-09-28)样张 v2 冻结批(M-1 迭代 2 T1,机检闸形 A——全过即冻结)**:§1.4 增样张 v2 记录(机检 16/16:现行 13 条+A3 上调 Δ≥55/F6 顶面立面双明度带 Δ≥18/F7 悬崖 DEPTH_PX 同源/A6 观感密度梯度 ≥4.70=v1 实测 4.09×1.15——v1 四否决原因断言化收官);**四冻结写入文档**——①砖面形态:§3.2 高墙瓦片体系条增「D 投影档+整板悬崖」定稿参数(口沿高光 2px Color8(196,172,132)/立面双段暗带 0.16+0.25 格边 α0.60·0.82/地面投影 0.22 格边三段渐隐 α0.28/悬崖 DEPTH_PX 8px board_world 同款);②色板:§4.1 小人蓝候选→定稿 #2E86DE(UiKit 同步)+§4.2 接触带微光色值 #D6ECFF 定稿+类型微光五组候选→定稿(v2 呈现 α170/带宽 cell÷8);③动画方案:§8.4 帧数规格候选档→冻结(待机 4/攻击 6/受击 2/死亡=灰化+程序化碎块弹飞 5 块 0.45s,序列帧归缺料清单);④数字形制:色牌形制定稿(#F5EAD3 直角小牌+Fusion Pixel+字号 max(18,ceil(格边×0.5))+墨三档)。产物命名带 v2(v1 被覆盖欠账清偿),报告迁 `design/research/`;连带=图例旗色封印黑漏网修正(#C63D22→#000000) | -- **v2.8(2026-09-25)可挖域接触带微光定稿批**(用户两拍板:①画法=接触带·空间侧——光画英雄格周界,正交邻墙=整边、斜向邻墙=角点+两半边;②色相=蓝族浅一档,顺路清偿旧 DIG_EDGE 绿相违 §4.2 绿禁则):§3.2 新增「可挖域接触带微光」条(画法/光只住空间一侧/角点不逐格归因、指认=悬停金框/呼吸与减动效守 §2.1/实现切换归表现批);§2.1 承载元素、§4.2 蓝条顺带;battle.md 注记顺带。背景=用户世界观口径「未开格=墙、已开格=挖出的空间」,微光=空间的灯光边界。 -- **v2.7(2026-09-25)封印术语批**(用户拍板:Node2D 实现后「插旗」动作等价为**封印**——玩家对未开格插旗即对该格巢穴实施封印,旗 = 封印印记;机制键与规则全不变):§3.2 新增「旗(封印印记)」条——呈现语义/旗朱与栈位不变/封印特效(施印瞬间+印记常显形态)待表现批/现行占位 = 旗朱「旗」字形;§2.5 失败承载元素措辞顺带(插过的旗 = 封印印记)。**登记面**——registry terminology 新增「封印」词条、00-游戏概念 术语层级专名表随收;连带同步:battle.md 呈现注记、art-assets-checklist §4 演出类新增封印特效两件(施印特效+印记常显)、art-status-checklist P3 行、character-design.md §5.4 插旗条注记(主角即插旗者)。**关联面**——可挖域接触带微光方案(用户同日提出:微光画英雄格周界接触面,正交整边/斜向角点+两半边)评估可行,实现归表现批,未入本批。 -- **v2.6(2026-09-25)世界观对齐扫描批(甲档回填 + 完美排雷钩子完成 + 引用锚内联;用户三拍板)**:①**§4.6.4 敌种甲档回填数据实态**——bugbear(ward→light)/ ogre_chief(heavy→light)/ drider(heavy→ward),并注记甲档事实源 = `enemy.tres` armor_type(2026-09-18 甲重配批后 L1 全轻甲、L2 除 drider 外全轻甲、L3 duergar/duergar_king 重甲);连带修订 character-design.md §5.5(熊地精轻甲化/食人魔弃金属甲板改裸身皮条/卓尔改魔法甲符纹)与 comfyui-prompts.md v2.8(熊地精/食人魔/卓尔三卡提示词随改)——食人魔视觉重设计经用户拍板「按最新设定,裸身+魔法甲符纹」。②**§2.2 完美排雷钩子完成**——「若…落实…待 GDD 定夺」改现行事实(零误标且至少标中一面旗→追加第二份清图兑付+结算高光行,地图战斗资源 GDD 已定稿)。③**引用锚内联**——§3/§4 尾注 P1–P4 支柱语义内联(概念期 brainstorm 编号,现行 GDD 树不单列),§1.4 两处 game-concept 编号引用改语义内联。扫描背景=用户发起的圣经×关卡/世界观对齐审计;变异六类型/格面九类/状态九键/奖励 19 键/敌种八键/三柜台钥石/三关色板方向经核对全部一致,零其余不符。 - -- **v2.5(2026-09-25)装饰变体纹理级修订批**(地形高墙瓦片批复审发现,见 `candidates/terrain-walls-2026-09-25/0-需求规格与验收闸.md` §八;用户裁定):§1.2 原则三与 §3.2 装饰变体条——例子「苔藓/裂纹/碎屑」改「裂纹/碎石斑等纹理级氛围层」(苔藓在三个现行关卡 dungeon/underdark/灰矮人矿城设定中不存在);新增约束——装饰变体一律为纹理级、禁物件级(巨石/小石堆等读作"格子里有个东西"的元素与"格子=内容舞台"冲突,会跟奖励/旗子抢读),数量保持最少(约 2 种),用途仅为破除大面积同砖平铺的重复感;随机分布/与危险格与安全格类型零相关/禁止构成可读线索等既有约束不动。§3.2 雷图棋盘呈现基准连带同步——「装饰小立牌=装饰变体的立体档」改「本作不采用立体小立牌档」。§1.4 样张清单「至少两种装饰变体」与约束一致,不动。 -- **v2.4(2026-09-24)结构件完整性与参考核验纪律批**:新增 §8.5——①格面立体结构(顶面/缘件/角件/周界轮廓)必须来自素材本体绘制的结构件拼装,禁以调色/渐变/滤镜/跨格投影伪造缺失结构,样稿暴露缺件即停报「换素材/自产缺件」由用户裁决;②宣称「参考 X 游戏」前必须取得并像素级查看 X 截图证据并存档,仅凭文字/印象的断言无效;③图底分离由素材选型承载。立规动因=beast-cave 高墙批 G(渐变)/I(阴影)两稿以调色伪造结构、且参考 Necesse 未看截图,被用户两次纠偏返工。 -- **v2.3(2026-09-24)棋盘小人方向集批**:§8.4 增方向集条款——4 向(下/上/侧,侧向左右镜像共用画稿)+斜向移动/挖掘按主导轴吸附最近正交向,不出 45° 斜向帧(用户拍板;镜像豁免「旗恒画右」纪律为代拟口径、样张批追认)。 -- **v2.2(2026-09-24)效果图标纹样系统定稿批**:§4.6.1 九行纹样描述由用户逐键口述定稿(主体三轴白剑/白盾/白眼+右下角箭头语言绿↑红↓双绿↑,同族键共用同图);旧语义锚文字退役。 -- **v2.1(2026-09-23)停点前移批连带同步(批内代拍板②引用,worktree stoppoint-shift-20260923,状态记录 142)**:§6 开篇与 §7.2 结构行「双舞台四区」改「双舞台三区(B/C/D,字母保持不重编)」、扫雷图区锚点 1036×476→1036×504——战斗屏 A 区进度条随停点前移批退役(战后返回关卡画面,节点链进度由关卡画面选路覆盖层节点态承载),28px 纵向空间归 C/D 底行;裁决权与事实源归属 battle.md/HUD框架 不变,历次版本历史行不动。 -- **v2.0(2026-09-23)UI 章迁入批 + 画布定档 + 色板方向裁定(用户对 v1.8 代拍板四项逐条表态+五缺口给口径;worktree art-ch69-amend-20260923,状态记录 138)**:①**§3.3/§4.4 物理迁入 §7**(用户拍板:UI 具体选择须在 UI 章定义,三/四章只留简单定义与方向指导——v1.8 代拍板①「按引用整合」据此推翻):§3.3/§4.4 降为方向指导节(各留一段+指路),细则全文迁 **§7.1 形状语法细则/§7.2 UI 色板细则**;§7 重排号 7.1–7.5(原 7.4 组件库语义并入 7.1,零内容损失);§6.2/§7.3/§7.5 与清单引用随改。②**§8.2 画布基准暂定值**(用户缺口一裁定):主角人设原图=48×72、主角战斗状态图(侧向)=48×72〔v1.9 待决注记「主角立绘档空缺」完成〕、棋盘小人=32×32 二头身独立派生资产(允许更小;36px 板占比摩擦沿「独立小源档」路线样张批定终值)、敌种立绘三档 48/64/96=普通怪(小)/精英(中)/Boss(大)对应关系经确认保留候选;旧「像素基准 32px」通用候选退役;1920 档缩放策略与帧数规格维持待裁决,登记 06-待办清单(表现与支撑/HUD框架节新条目),样张批时提醒。③**§6.3 三关色板方向**(用户裁定):underdark 幽暗地域=**冷调幽暗**(灰白蓝主调+少量紫黑点缀,紫系取紫罗兰域 ≈256° 候选、禁入带 300°–345° 不变)、deep_underdark 灰矮人矿城=**灰黑主调+矿脉金属色点缀**(金属质感族冷银/铜灰候选,奖励金亮金禁上格底 §4.2 不变)——替换 v1.8 苔绿/冷灰岩方向草案。④**§9.1 扩池候选否决**(Forager/杀戮尖塔不入池且撤登记——用户裁定美术参考意义不足;代拍板④完成)。⑤命名规范草案获确认(代拍板②完成)。清单 §0 像素行与风格宪法表指向顺带。 -- **v1.9(2026-09-23)§8.2 待决注记批**(侧会话用户指令「你在这里直接把这件事给做了吧」;worktree art-s82-note-20260923,状态记录 137):§8.2 增两条待决注记——①**36px 板 × 32px 源摩擦**:32px 源在 45px 格 1× 占 ≈71% 合规、在 36px 格 1× 占 ≈89% 超「≤0.75 格边」红线且禁非整数缩放回退,出路二选一(棋盘小人独立更小源档如 24px 级 vs 两种板各出一版),样张批随格边长终值一并裁决,裁决前棋盘小人源图不排产;②**主角立绘档空缺**:主角 B 区站桩立绘未单独立档(现行 48/64/96px 阶梯按敌种 archetype 写),随战斗一屏样张锁「角色剪影方向/战斗空间」时一并定。头注「现行为」顺带 v1.9。 -- **v1.8(2026-09-23)§6–9 四章补全批(D 框架 D1/D2/D4/D5 落地,圣经全章成文;worktree art-ch6-9-20260923,状态记录 136)**:**§6 环境与场景**——6.1 战斗舞台背景(明亮地窟/低对比自然后退/明度恒定适用/`wall_ambient` 联动/紫赤仅 Boss 战)、6.2 营地场景(烛光黄×木色/三柜台一字排开/亮起走饱和不动明度/系统语义归元进度 GDD)、6.3 三关图类型色板候选(dungeon 暖石棕基准档/underdark 苔绿偏灰/deep_underdark 冷灰岩,方向候选归样张批重跑 §1.4 冻结,增「与五组微光互辨」抽测)、6.4 下探过渡(渐变取下一关槽值,只动色相饱和);**§7 UI 设计**——7.1 视觉基准(§3.3/§4.4 上位法**按引用整合**,D5 框架「迁入」不物理迁移——保持形状/色彩两章完整性,物理迁移待用户另有裁决)、7.2 布局栅格(四区结构事实源归 battle.md+4px 步进档候选)、7.3 字体字号(Kenney CC0/Fusion Pixel OFL 候选+整数倍缩放+下限 18/14/13 事实源 HUD框架+禁字重区分)、7.4 组件库三类容器语义+极性冗余、7.5 营地界面;**§8 资产与技术规范**——8.1 两档定案+格边长口径(锚点 45/36px 事实源 battle.md,扩板与 1920 档换算归表现批)、8.2 像素基准 32px 候选(active.md 58 条挂账清偿入章)+整数倍缩放纪律+1920 档适配策略候选+画布档位候选、8.3 导出 PNG/SpriteFrames+命名规范候选草案(对象键=数据表主键,图标键契约的文件侧延伸)、8.4 帧数规格候选档;**§9 参考与反参考**——9.1 正面三款取/弃表+扩池候选(Forager/杀戮尖塔)仅登记不入池、9.2 反面四条绑条款(Darkest Dungeon 压暗/Gungeon 粒子色相爆炸/Hades 特效密度/传统扫雷八色),反面图证待素材生成。**同步面**——头注状态行/Sign-Off 注记/参考池行、art-assets-checklist §0 像素尺寸行与参考图行及 §6 依赖链、04-美术音频方向.md 参考指引顺带。**代拍板四项待追认**——①D5「迁入」按引用整合不物理迁移;②命名规范候选草案;③栅格/画布/帧数候选值系起草非裁决;④扩池候选两款不入池仅登记。 -- **v1.7(2026-09-23)§5 抽离批 + 主角特征批**(用户两拍板:①角色设计自圣经 §5 抽离成独立文档 `character-design.md`,圣经 §5 改引用存根,小节号 §5.1–§5.6 不变、既有 §5.x 引用经存根可达;②主角特征改动——背后加扫雷联动旗、直剑换挖掘铲):§3.1 迁移注改指人物设计文档;主角两特征与三态措辞修订明细归 character-design.md 版本历史 v1.0,提示词执行侧归 comfyui-prompts.md v2.1。 -- **v1.6(2026-09-22)§5 角色设计落地批(D 框架 D3)+ 提示词卡重生成**(用户拍板走正序:先补 §5 角色章,再重生成 comfyui-prompts.md;worktree art-char-s5-20260922):**新增 §5 角色设计**——§5.1 角色剪影与轮廓通道(自 §3.1 迁入:角色四类 archetype + 轮廓通道硬规则,「禁黑描边」顺带固化;道具点剪影留在 §3.1 并改题「道具点剪影」);§5.2 头身比与体量档位(2~3 头身两档、体量单调递增、像素画布归 §8 另批);§5.3 护甲类型视觉区分(候选方案待样张批冻结:通道 = 甲面覆盖率×甲材质色——轻甲裸、魔法护甲符纹饰带、重甲冷灰金属甲板;天然甲壳不计甲档;灰度按覆盖率三档可辨;清偿 §4.6.4 强度档位行挂起的待设计项);§5.4 主角三态规格(形象锚站姿样张/三态约束/小人蓝同族明暗/蓝族敌方禁入);§5.5 八敌种逐卡(键集随 registry,主色域物种本色豁免语义禁则、禁入带与蓝族两例外;兄弟精换色板不换形);§5.6 意图准备动画三档规格承载(自 2026-09-18 拍板与清单 §2.3 收编)。**引用随迁**——§4.5⑤/§4.6.4 两处 §3.1 改指 §5.1,§4.6.4 强度档位行改指 §5.3;art-assets-checklist §0/§2.2 引用与待设计项表述、战斗表现 §3.1 引用两处顺带。**comfyui-prompts.md 重生成 v2.0**(主角三态+八敌种逐资产自包含完整提示词——正向底座/主体/动作已拼妥、负向底座/增补已并妥,整段可直贴;继承 seed 纪律/禁入带/#F2F2F2 生成底色;主角蓝族随 v1.1 换装 #2E86DE;新增 duergar/hook_horror/duergar_king 三卡;护甲视觉短语按 §5.3 注入各卡;bugbear 主体改敦实圆肩守 §5.1 普通怪宽≥高;兄弟精变体配色弃冷蓝灰改灰褐战纹,避与小人蓝同屏混淆)。§6–9(D4/D5/D1/D2)仍待后续批。 - -- **v1.5(2026-09-22)中间产物引用解挂批**(用户裁决:修订指导与审计报告系中间产物不入库,工作区未跟踪留存;worktree midprod-unref-20260922):头注 D1–D5 框架引用改内联编号映射(明细归状态记录 125);本历史 v1.3 条目中的修订指导路径引用自此不再可达(历史文本如实保留);art-assets-checklist 两处「交接要点存审计报告」改指路状态记录 125。 -- **v1.4(2026-09-22)gungeon 退场批**(用户拍板:gungeon 两张移出即可,暂不设反面案例——反面参考待素材生成后另批增补;worktree gungeon-exit-20260922):`references/gungeon_1/2.jpg` 删除;头注参考池行定稿三款×2 张,目录自此与点名池一一对应。 -- **v1.3(2026-09-22)GDD 过期账清偿批 + 类型微光裁决**(用户四拍板:①未开格类型预读采纳彩色常显微光;②分辨率档位已定案两档 1280×800+1920×1080〔清单侧承载〕;③§5–9 按 D1–D5 框架分批补全,框架登记于 `art-docs-revision-guide-2026-09-22.md` 第 6 节;④两份美术清单合并以 art-assets-checklist 为底〔清单侧承载〕;worktree art-docs-settlement-20260922):**§4.6 契约表对齐数据实态**——§4.6.1 效果键七行→九行(ac_up/alert/empower/fortify 入表,defense_up/ambush 死键清除,sapped「待实施」旧注删除);§4.6.2 奖励徽章键整表重写为九型字典正负 18 行+清图槽 clear_blast(旧可选类三键/attack_up_basic/defense_up_basic/clear_knife 清除,「群伤 40」数值删除归配置事实源;gp 组键名按 reward.tres 勘误为 gp_coin/gp_lose);§4.6.4 敌种线索键整节重写(键集 {grub,ambusher}→八敌种现行键集,意图姿态改 2026-09-18 动画三档,Rule 8/伏击池/OQ7 退役表述清除);**微光改向**——§4.6.3 呈现约束由「墨族单色」单一通道改「角嵌纹样(形状)+类型常显微光(色彩)」双通道(R3 不泄危险格与安全格约束不变),§4.2 增「类型微光色带」分域条款与五组候选色相(芥末黄/黄绿/青/紫罗兰/绯红,避 300°–345° 禁入带与既有语义色段,样张批冻结),红/绿/紫赤/金条款加微光分域例外,§4.5⑨/§3.2 角嵌纹样条/§1.2 原则一/§1.4 样张清单与验收 2·4/§3.4 同步;**过期挂点清偿**——§3.2/§4.3 变异挂点落地(六类型定稿,纹带形按轴两分:伤害轴刺缺形/信息轴遮蔽形,同轴只做色板变体;样张批增岩浆橙红与危险红/旗朱互辨、信息轴遮蔽不入色牌占位区两项检查);§2.8 营地改三柜台+钥石(「天赋树」退役);**更名**——biome/board_biome/biome_tag 正文全量更名图类型(board_type),§4.3 标题顺带(键名事实源 = 棋盘生成 GDD 与 board_gen.tres);**结构收敛**——§1.3「对 brainstorm 视觉锚的修订记录」整节并入本版本历史(正文留号占位,状态记录 109 正文零历史纪律),头注压缩(状态行与 Sign-Off 并行),原则三与 §3.2 重复条款收敛(零信息纪律/结果清单单点成文)。gungeon 两张参考图去留待表态(T2)。 -- **v1.2(2026-09-22)雷图棋盘呈现基准批**(用户拍板:雷图要有 ITB 参考图的战棋棋盘质感,但 45° 摆正成正俯视角——「摆正视角方格」读法):§3.2 增「雷图棋盘呈现基准」条——ITB 地表质感骨架(纹理多样/起伏体块/岛缘砖缘厚度/格上装饰立牌)× 相机正上方垂直向下、格线屏轴对齐、禁等距斜视与菱形格;砖缘厚度/岛缘立体面显式划为形体塑造、不触 §2 明度恒定(该规则禁的是状态/情绪明暗表达),顶面格底仍守 §4.1 参数域;装饰立牌 = 装饰变体立体档、零信息纪律不变;头部参考池行与资产清单样张要求顺带。**勘误**——v1.1 状态记录所记「参考池资产失配」判断有误:references/ 中 itb/moonlighter/peglin(点名池)+gungeon(未点名)四款×2 张一直在库,删除的十张系额外五款(CatQuest3/Dicey/Roundguard/Tangledeep/WonderBoy)退场,参考池本身无失配;gungeon 两张点名与否待用户表态。 -- **v1.1(2026-09-22)视觉自由度修订批**(用户三拍板:①原则二改数字色牌方案;②已开后表达+零信息装饰变体;③只换主角蓝微调其余):原则二更名「明亮为皮,色牌为骨」——数字可读性改由数字色牌(素色直角小牌)承载,格底压素让路条款退役、饱和上限 0.40→0.55(候选),§1.2 优先级栈/§1.4 验收 1·2·4/§3.3/§3.4/§4.1 硬指标/§4.3 同步改查牌;原则三增格子多样化——已开格按当格结果整格表达(九类型物件纹样/纯安全格裸土/危险格巢穴更凶),未开格加零信息装饰变体(随机分布、禁逐轮重掷),未开格类型预读由小徽章升级为角嵌纹样(R3 不泄危险格与安全格约束不变),§3.2/§4.5⑨/§4.6 同步;主色板——小人蓝 `#2E6E8E`→`#2E86DE`、新增数字色牌 `#F5EAD3`(均候选值,样张批冻结终值),格面类型表五类→九类对齐(pierce/magic/action/gp)。§2 氛围层与明度恒定硬规则未动;§4.6 其余键表(效果 §4.6.1/奖励 §4.6.2/敌种 §4.6.4)数据过期账未清,另批处理;执行侧 ui_kit `HERO_BLUE` 等色值同步义务已登记,归样张批冻结后的表现批。 -- **v1.0**(2026-09-10 初稿;2026-09-13 增补批——徽章栈位/危险格隐喻换轴/格子样张验收成文/图标键契约冻结;2026-09-15 去雾批)。 diff --git a/design/art/comfyui-prompts.md b/design/art/art-prompts.md similarity index 82% rename from design/art/comfyui-prompts.md rename to design/art/art-prompts.md index b11eb97b..b51a9470 100644 --- a/design/art/comfyui-prompts.md +++ b/design/art/art-prompts.md @@ -9,10 +9,10 @@ ## 0. 使用流程(五步) 1. **出图**:按下面卡片把正向/负向提示词粘进生图渠道的提示词栏(**渠道 = 远程对话式生图为主,本地 ComfyUI 为备选**——2026-10-06 拍板;对话操作纪律见 [remote-gen-prompts](remote-gen-prompts.md)),每个资产出 **2–3 版候选**(建议固定 3 个 seed 连拍,便于横评)。 -2. **入库**:候选原图(带底)放 `design/art/candidates/<资产名>/`,文件名 `v1.png / v2.png / v3.png`。这个目录只存候选,不进引擎。 +2. **入库**:候选原图(带底)放 `artwork/candidates/<资产名>/`,文件名 `v1.png / v2.png / v3.png`。这个目录只存候选,不进引擎。 3. **裁决**:你按 §4 验收速查预筛,挑出每一资产的入围候选拍板。 4. **后处理**:喊我一声,脚本管线代跑——去底转透明、最近邻降采样到目标尺寸、色板量化、四联底测试条(掩尘底/裸土底/暗底/灰度)。 -5. **转正**:终稿从 candidates 转入切片资产目录,随表现层升级批接线;清单状态列改「已交付」。 +5. **转正**:终稿从 `artwork/candidates/` 转入切片资产目录,随表现层升级批接线;清单状态列改「已交付」。 **出图通道(2026-09-23 定稿)**:线上 API,用户自跑——本地 ComfyUI 生图路线已经用户拍板**彻底关闭**(母版工作流/像素 LoRA/Z-Image 模型已清退,不留复活预案,本卡不依赖任何本地管线)。 @@ -289,22 +289,3 @@ Seamless tileable pixel art texture of dry dirt ground, top-down, for a dungeon - **意图准备动画三档、战斗演出类**:动画序列帧,等一屏样张锁动画方案后另立规格卡。 - **格面徽章 19 枚 / 关卡节点图图标 / 砖面终稿 / 地形变异纹带**:脚本管线,规格锚 art-bible §4.6(图标键契约)、§1.4(样张验收)与 §3.2,不需要生成提示词。 - **音乐音效**:清单已明确排除。 - -## 版本历史 - -- **v3.1(2026-10-06)渠道定位+拼表制主选批(用户拍板)**:①**渠道定位更正——远程对话式生图为主、本地 ComfyUI 为备选**(v2.7「彻底关闭」为当时口径,现行更正为备选;§0 使用流程随改);②**§4bis 纪律 3 改制**——地形瓦片出图 = 拼表制主选(三步流程:程序占位样图参考 → 整图生成 → 裁切+统一降采样;操作单 remote-gen-prompts §3),分张降为回退路径(裸拼表画框实证教训归因于缺参考锚定,非拼表制本身);③与 remote-gen-prompts 分工写明:本文件 = 词库正文、remote-gen = 对话操作单,正文不双处维护。 -- **v3.0(2026-10-06)地形色值对齐批(审计 P1-1,用户拍板色值现行事实源 = 圣经 §4.1)**:§4bis 四张地形卡色值漂移修正——岩石系 `#8B755B`→**`#C9AF83`(掩尘/未开格)**、地面系 `#564232`→**`#B39A78`(裸土/已开格)**;remote-gen-prompts.md 2×2 拼图卡同批对齐。提示词侧色值自此以圣经 §4.1 为唯一事实源。 - -- **v2.9(2026-09-26)地形填充纹理节批**(高墙批收官,用户拍板):新增 §4bis——地形类首张卡(墙顶基面/裂纹/碎石斑/地面四张自包含英文卡)+对话式生图控制纪律四条(编辑模式/英文优先/分张跑/否定约束);分工纪律转写 art-bible §8.5「生产分工」(模型只出无缝填充纹理,结构件程序化)。 - -- **v2.8(2026-09-25)敌种甲档回填批**(圣经×关卡/世界观对齐扫描发现,规格上游 character-design.md v1.6 同批;用户拍板「按最新设定」):三卡随 `enemy.tres` 甲档实态修订——①熊地精 3.2 两版(A/B)正向:魔法甲「暖白符纹饰带」措辞退役,改轻甲「粗陋皮条+裸蓬毛无甲板」;②食人魔酋长 3.3:标题重甲→轻甲,正向「冷灰金属肩胸甲板」改「皮条骨饰+裸厚皮无甲板」,规格注随改;③蛛化卓尔精灵 3.5:标题重甲→魔法护甲,正向加「卓尔上体暖白秘法符纹饰带」(蛛腹几丁质保留、属天然甲壳),规格注随改。duergar/duergar_king 重甲卡与数据一致不动。 - -- **v2.7(2026-09-23)真像素硬化 + 本地通道清退批**(用户拍板:本地 ComfyUI 生图路线彻底关闭,生图一律线上 API 自跑;gg1 风格诊断后硬化方案顺带写入):①全部 13 张正向卡触发词后插入真像素约束段——`true pixel art game sprite / tiny 48x72 pixel canvas / chunky square pixels / strict pixel grid alignment / hard edges / no anti-aliasing / no gradients / limited 16-color palette / aseprite style`;②各卡负向底座并入平滑系禁词——`smooth lines / anti-aliasing / gradient shading / painterly / glossy / high detail / vector illustration`;③§0「现行管线」句(Z-Image-Turbo GGUF + 像素 LoRA + 母版工作流 `art-t2i-master.json`,成因见 v2.1/v2.5)改写为线上 API 口径,自然语言类模型改写指引顺带;④「ComfyUI 通道」措辞改「生图通道」(文件名沿用不改)。同日 repo 侧清退:`production/comfy/` 已删、comfy-mcp 注册已移除。 -- **v2.6(2026-09-23)配装修订批**(用户四拍板:①弃全蓝——蓝只在兜帽,上衣暖米白、长裤深棕工装,与掩尘棋盘协调;②兜帽取下披肩、露棕色短发;③待机姿势改"铲插地+扶柄";④旗加大到比头大、插背包一侧、可被头部分遮挡):主角三卡正向提示词整体重写(形象锚措辞随改,2.2"斗篷飘动"改"兜帽布料飘动");线上 API 试生成由用户自跑,规格上游 character-design.md 同批升 v1.5。 -- **v2.5(2026-09-23)触发词+肤色批**(用户三拍板:①LoRA 触发词 `Pixel art style.` **加入**——全部正向提示词(主角三卡+八敌种各卡)一律以触发词开头;②肤色改**白皙**(fair skin,弃小麦色),主角三卡随改;③提灯腰挂定案、棋盘小人定案归 character-design.md 同批 v1.4):§0 模型适配注由"待拍板"改"已加入";版本历史承接 v2.4。 -- **v2.4(2026-09-23)衣着细节批**(用户拍板:半指手套 + 卷裤脚皮护膝):主角三卡正向提示词顺带插入 `brown fingerless gloves` 与 `leather knee pads with trouser legs rolled up above them`(皮革族小件,不占剪影预算);§2 形象锚随改;规格上游 character-design.md §5.4 同批升 v1.3。 -- **v2.3(2026-09-23)背包具形批 + 装备彩蛋池**(用户三拍板:①背包措辞与体量——弃"鼓胀掳获袋"改结构式帆布冒险背包,宽 ≈1.5× 体宽,正面参照合金弹头双主角大背包/奇诺比奥队长、反面禁特里式 3× 超宽;②护目镜推额前、头灯退役、灯改小号铜色提灯挂腰间(不点亮);③随身件=魔法道具形象候选池——铲/旗/背包/提灯,道具语义归魔法道具批):主角三卡正向提示词顺带更新(背包短语+护目镜+腰灯);§2 形象锚随改;规格上游 character-design.md §5.4 同批升 v1.2。 -- **v2.2(2026-09-23)掳获包裹批**(用户拍板:背旗改"背负大号鼓胀布包裹、旗杆插于包裹顶"——"地牢扫荡者满载而归"的角色化):主角三卡正向提示词顺带更新(包裹短语 `large bulging tan canvas loot sack tied with rope on his back` + 旗改插于包裹顶);§2 形象锚随改(包裹、旗与铲三态恒在);规格上游 character-design.md §5.4 同批升 v1.1。 -- **v2.1(2026-09-23)主角特征批**(用户两拍板:直剑→圆头挖掘铲——挖安全格动作语义角色化,攻击表现即挥铲;背后加旗朱三角旗——与棋盘插旗同物同色 `#C63D22`):主角三卡正向提示词顺带更新(铲+背旗短语,三态同旗同形象,背旗为主角唯一破对称件);§2 形象锚与 2.1/2.2 规格措辞随改(2.2"刀光"改"铲击光效");规格上游改指 character-design.md §5.4(人物设计自圣经 §5 抽离成独立文档,圣经 §5 为存根);§0 模型适配注补现行管线(Z-Image-Turbo GGUF + 像素 LoRA 已挂母版工作流,触发词 `Pixel art style.` 入正向待拍板)。 -- **v2.0(2026-09-22)重生成批**(用户拍板正序:美术圣经 §5 角色设计落地(v1.6)后重写本卡;v1.0 于同日经裁决移除,状态记录 125):六敌种→**八敌种**(新增灰矮人/钩爪恐魔/灰矮人石君王三卡);**逐资产提示词改自包含完整串**(正向底座+主体+动作拼妥、负向底座+增补并妥,整段可直贴,零拼装);主角蓝族随 art-bible v1.1 换装(`#2E86DE`,同族候选 `#5FA8E8`/`#1C5CA4`);护甲视觉短语按 §5.3 注入各卡(轻甲无甲板/魔法护甲暖白符纹/重甲冷灰甲板,天然甲壳不计甲档);bugbear 主体由「高瘦」改「敦实圆肩」守 §5.1 普通怪宽≥高;兄弟精备选配色弃冷蓝灰(蓝族禁入敌方)改灰褐战纹;验收速查五关→六关(增甲档);引用基线改 art-assets-checklist 单清单(asset-checklist 已随合并批删除)。 -- v1.0(2026-09-20):首版。主角三态 + 六敌种提示词卡成文;兄弟精改荐脚本换色通道;候选入库/后处理/转正五步流程成文。(2026-09-22 移除,本版为重生成。) diff --git a/design/art/art-status-checklist.md b/design/art/art-status-checklist.md index 40c8196a..e85c4f33 100644 --- a/design/art/art-status-checklist.md +++ b/design/art/art-status-checklist.md @@ -17,8 +17,8 @@ | 素材 | 状态 | 需求文档 | |---|---|---| -| 主角战斗小人(待机/攻击/受击三态) | ✅ B区站桩三态全接(2026-09-29 迭代 6 T3:normal/attack/hit 48px 档入包+挂事件切换+结算回 idle,短驻自回;棋盘 1.5×/脚锚25%/椭圆影在役不变;hit 态源=new-hit.pxo 已程序导出) | [character-design](character-design.md) + [comfyui-prompts](comfyui-prompts.md) §2 | -| 八敌种形象(L2 熊地精=bugbear 复用,不单列) | ✅ B区站桩八敌真图服役(2026-09-29 迭代 6 T1/T2:pixel-1 源→48px 档统一比例/底中锚/众数投票降采样,character_enemy_<键>.png 按常量入位,字形回退退役为缺位兜底;素材不入 git 本地在盘)。**2026-10-06 v3.7 定档批注记**:八敌源档已定(36–94,art-bible §8.2),旧统一 48 档在役过渡,新档重产落位归 PRD(tools/pixelize_candidates.py `STANDEE_TIER_H` 已改,产出与定档总图一致) | [art-bible](art-bible.md) §5 + [comfyui-prompts](comfyui-prompts.md) §3 | +| 主角战斗小人(待机/攻击/受击三态) | ✅ B区站桩三态全接(2026-09-29 迭代 6 T3:normal/attack/hit 48px 档入包+挂事件切换+结算回 idle,短驻自回;棋盘 1.5×/脚锚25%/椭圆影在役不变;hit 态源=new-hit.pxo 已程序导出) | [character-design](character-design.md) + [art-prompts](art-prompts.md) §2 | +| 八敌种形象(L2 熊地精=bugbear 复用,不单列) | ✅ B区站桩八敌真图服役(2026-09-29 迭代 6 T1/T2:pixel-1 源→48px 档统一比例/底中锚/众数投票降采样,character_enemy_<键>.png 按常量入位,字形回退退役为缺位兜底;素材不入 git 本地在盘)。**2026-10-06 v3.7 定档批注记**:八敌源档已定(36–94,art-bible §8.2),旧统一 48 档在役过渡,新档重产落位归 PRD(tools/pixelize_candidates.py `STANDEE_TIER_H` 已改,产出与定档总图一致) | [art-bible](art-bible.md) §5 + [art-prompts](art-prompts.md) §3 | | 意图准备动画三档 | ◐ | [art-bible](art-bible.md) §4.6.4 | ## P2 图标与格面(可与样张并行) diff --git a/design/art/asset-path-map.md b/design/art/asset-path-map.md index 037fa939..6173e83d 100644 --- a/design/art/asset-path-map.md +++ b/design/art/asset-path-map.md @@ -7,19 +7,19 @@ | 路径 | 角色 | 入 git | 游戏运行时引用 | |---|---|---|---| -| `design/art/candidates/**` | 设计侧源档(母版 PNG/.pxo/GIF/对比图/验收留底)——**素材的原产地与档案库,游戏禁直接引用**。**目录按需创建**(首批候选入库时建,2026-10-06 对账注:当前两 worktree 均未建立,非路径作废) | 否(`.gitignore` 三行规则;`*.md` 指引例外) | **禁**(res:// 路径禁指 candidates) | -| `game/assets/art/**` | **游戏运行时素材唯一落地处**(res://assets/art/...)——定稿素材从 candidates 拷贝入此,改名按圣经 §8.3 | 否(untracked,勿 git add;worktree 间需脚本拷贝同步) | **唯一合法引用源** | +| `artwork/candidates/**` | 候选原图与母版源档(PNG/.pxo/GIF/对比图/验收留底)——**素材的原产地,游戏禁直接引用**;随 `artwork/` 整目录不入 git(`design/art/candidates/` 已作废,路径列入熵增闸退役名单) | 否(`.gitignore` 三行规则;`*.md` 指引例外) | **禁**(res:// 路径禁指 candidates) | +| `game/assets/art/**` | **游戏运行时素材唯一落地处**(res://assets/art/...)——定稿素材从 `artwork/candidates/` 拷贝入此,改名按圣经 §8.3 | 否(untracked,勿 git add;worktree 间需脚本拷贝同步) | **唯一合法引用源** | | `game/assets/ui/icons/**` | UI 图标(状态图标批特例——唯一已提交入 git 的素材目录) | **是**(2026-09-24 批特例) | 是 | | `artwork/mockups/**` | 混合样张/版式对比图(设计评审产物,非游戏素材;样张 v3、关卡地图样张等实存于此)——2026-10-06 对账更正:原写的 `production/mockups/**` 系废路径 | 否 | 禁 | ## 2. 素材流(新素材批标准路径) -1. **产出/候选**:candidates 对应子目录(如 `hero-idle/`) +1. **产出/候选**:`artwork/candidates/` 对应子目录(如 `hero-idle/`) 2. **验收定稿**:用户拍板(候选目录留档不动) 3. **入包**:拷贝 → `game/assets/art/<语义子目录>/`,改名 `§8.3` 域键式(如 `character_hero_portrait.png`) 4. **接线**:代码 `res://assets/art/...` 引用(路径常量单点归 `UiKit.TEX_*`);装载一律 `UiKit.load_tex`(exists 守卫——素材不入 git,缺位树回退),**禁 preload** 5. **提交**:只提交代码/文档;PNG 与 `.import`(全局忽略)均不入 git -6. **整理(2026-10-06 P2-1 固化段——脚本链第四段:生成→验证→整理→入包)**:定稿入包后当批清 candidates 子目录——保留**定稿源 + 最相邻候选 2 版**(默认策略,可按资产调整),其余打包归 `archive/`;非素材残留(.url/.ogg/.ai/.swf 等)剔出;批量执行一律 **dry-run 清单先行**,经用户确认再动文件(2026-10-06 用户惯例) +6. **整理(2026-10-06 P2-1 固化段——脚本链第四段:生成→验证→整理→入包)**:定稿入包后当批清 `artwork/candidates/` 子目录——保留**定稿源 + 最相邻候选 2 版**(默认策略,可按资产调整),其余打包归 `archive/`;非素材残留(.url/.ogg/.ai/.swf 等)剔出;批量执行一律 **dry-run 清单先行**,经用户确认再动文件(2026-10-06 用户惯例) ## 3. game/assets/art 语义子目录 @@ -27,10 +27,10 @@ |---|---|---| | `character/` | 角色棋盘帧 + B 区立绘 | character_hero_idle/walk(棋盘 32×32 朝左基准)、character_hero_portrait(B 区立绘 46×48)+ character_enemy_<键> 八敌 | | `fx/` | 特效帧 | shovel_swing_f0/f1/f2(挥铲三帧,握把锚 (18,12)) | -| `board/` | 砖面/旗印记(三关换皮 + 封印旗;2026-10-06 对账更正——旧 `board_floor/wall/pillar_dungeon_*` 命名退役) | terrain_floor__.png(三关地面系)、flag_seal.png | +| `board/` | 砖面/封印印记(三关换皮 + 封印印记件;2026-10-06 对账更正——旧 `board_floor/wall/pillar_dungeon_*` 命名退役) | terrain_floor__.png(三关地面系)、seal_mark.png | ## 4. 坐标/朝向等工程侧约定备查 -- 素材基准朝向:角色/铲帧一律朝**左**入库,右向=运行时 `flip_h`(镜像帧不入包,right 变体留 candidates) +- 素材基准朝向:角色/铲帧一律朝**左**入库,右向=运行时 `flip_h`(镜像帧不入包,right 变体留 `artwork/candidates/`) - 挥铲握把锚:画布 (18,12)(三帧同位——以手为圆心旋转的预烤相位) - 缩放纪律:圣经 §8.2 整数缩放为一般规则;棋盘小人 1.5× 系 2026-09-26 用户明示裁决(豁免注记归 art-bible 批另落) diff --git a/design/art/character-design.md b/design/art/character-design.md index c7ecef3a..dfd73c33 100644 --- a/design/art/character-design.md +++ b/design/art/character-design.md @@ -1,7 +1,7 @@ # 人物设计文档(Character Design)— Dungeon Sweeper > **性质**:美术圣经 §5(角色设计)的独立承载文档——2026-09-23 抽离批自 art-bible v1.6 §5 迁出成文,动机是**人设高频改动、独立成档免动圣经**;圣经 §5 自此为引用存根指向本文件,**小节号 §5.1–§5.6 沿用不变**(跨文档引用经圣经 §5 存根仍可达,新引用直指本文件)。 -> **边界**:本文件只定角色呈现;角色承载的机制语义(护甲克制矩阵、技能与状态)以 GDD 为准(敌人系统/增益状态/战斗结算)。色彩系统、形状语言总纲引用美术圣经 [art-bible](art-bible.md) §4/§3,冲突以圣经为准。提示词执行侧(可直贴串)归 [comfyui-prompts](comfyui-prompts.md),本文件是它的规格上游。 +> **边界**:本文件只定角色呈现;角色承载的机制语义(护甲克制矩阵、技能与状态)以 GDD 为准(敌人系统/增益状态/战斗结算)。色彩系统、形状语言总纲引用美术圣经 [art-bible](art-bible.md) §4/§3,冲突以圣经为准。提示词执行侧(可直贴串)归 [art-prompts](art-prompts.md),本文件是它的规格上游。 --- @@ -80,16 +80,3 @@ - **终稿帧规格**(帧数/时长/结算节拍对齐)归圣经 §8 资产规范与战斗一屏样张批(清单 §2.3);占位符号(—/⚔/✦/蓄力)现行在役,动画到位后原位替换。 --- - -## 版本历史 - -- **v1.9(2026-10-06)主角描边例外条款批(审计报告待决项 B 用户拍板)**:§5.1 新增**主角描边例外**条——主角四态硬描边 = 深褐 `(40,19,13)` 显式例外(浅砖面对比更高/主角更突出),敌人维持暖白族;系描边不一致的定性完成(不一致源自早期生成素材,按用户口径以约束条款认可为有意设计,素材不改);样张批终审复核义务登记 06 待办。 -- **v1.8(2026-10-06)体量语义修订+立绘源档定档批(P0 完成讨论批;工作流程铁律 = 只动文档,代码实装另批走 PRD→迭代)**:①**§5.2 体量档位改「生物体型通道」**——原「强度先验·普通 < 精英 < Boss 单调递增」读法退役,依据 = 用户三体型约束(钩爪恐魔>灰矮人/灰矮人<熊地精/食人魔>熊地精,小体型精英与大体型普通怪并存);强度先验读法改由意图徽标(§5.6)与甲档(§5.3)承担;②**§5.5 新增立绘源档高注记**(八敌 36–94 定档、主角 48 不变、显示 ×2 整数档;圣经 §8.2 v3.7 同批)+**钩爪恐魔「宽≥高」豁免登记**(58 高窄条束状剪影,待样张批终审)。 -- **v1.7(2026-09-28)人设旗脱钩批**(用户三拍板:①背包旗与棋盘封印色脱钩——封印色沿革〔旗朱 #C63D22→封印紫 2026-09-26→封印黑 2026-09-28〕仅作用于棋盘格封印旗,封印黑仅棋盘格,人设旗回归旗朱红 `#C63D22`;②旗形三角→矩形,以 normal/hit 定稿成图为基准;③兜帽=披肩式披于颈肩非垂背):§5.4 形象锚/背包旗条顺带。 -- **v1.6(2026-09-25)甲档核对回填批**(圣经×关卡/世界观对齐扫描发现;用户拍板「按最新设定」:食人魔裸身、卓尔魔法甲符纹):§5.5 三行甲档回填 `enemy.tres` 数据实态(2026-09-18 甲重配批后未回填的过期账)——bugbear 魔法护甲→轻甲(粗陋皮条无甲板无符纹)、ogre_chief 重甲→轻甲(弃冷灰金属甲板,改甲面覆盖率≈0 的裸身皮条/骨饰)、drider 重甲→魔法护甲(加符纹饰带);§5.5 头注事实源措辞随改;提示词卡 v2.8 熊地精/食人魔/卓尔三卡顺带。giant_spider/hook_horror 的几丁质天然甲壳纪律不变(不计甲档,§5.3)。同日封印术语批:§5.4 插旗条附「插旗动作呈现名 = 封印」注记(详见 art-bible v2.7)。 -- **v1.5(2026-09-23)配装修订批**(用户四拍板:①弃全蓝配色——蓝只保留在兜帽等明显处,上衣改暖米白、长裤改深棕工装,与掩尘棋盘协调;②兜帽不戴头上、取下披于肩上,露棕色短发与脸;③待机姿势改"铲插立地上、一手扶铲柄";④旗子加大到比头大、插在背包一侧,可被头部分遮挡):§5.4 形象锚/配色条/铲条/背包旗条/护目镜条顺带;提示词卡 v2.6 三卡顺带。线上 API 试生成渠道由用户自跑(本地 ComfyUI 通道同日停用)。 -- **v1.4(2026-09-23)肤色+定案批**(用户四拍板:①肤色**白皙**(fair skin,弃小麦色);②LoRA 触发词 `Pixel art style.` 加入——执行侧提示词卡 v2.5 全卡正向以触发词开头;③提灯腰挂定案不手持(备选撤销);④棋盘小人定案 = 主角人设图压缩至二头身的简化版像素小人,随人设派生、同款装备剪影):§5.4 形象锚/腰灯条/棋盘小人条顺带。 -- **v1.3(2026-09-23)衣着细节批**(用户拍板:半指手套 + 卷裤脚皮护膝):§5.4 形象锚顺带,新增衣着细节条(棕色半指手套/裤脚卷起+棕皮护膝,皮革木色族,不占剪影预算);提示词卡 v2.4 三卡顺带。 -- **v1.2(2026-09-23)背包具形批 + 装备彩蛋池**(用户三拍板:①背包措辞与体量——弃"鼓胀掳获袋",改结构式帆布冒险背包(翻盖+皮扣带),宽 ≈1.5× 体宽两侧各露一点,正面参照合金弹头双主角大背包/奇诺比奥队长、反面禁特里式 3× 超宽;②头部饰品唯一化——护目镜推额前,头灯退役,灯改**小号铜色提灯挂腰间**(不点亮,备选另手持);③随身件=魔法道具形象候选池登记——铲/旗/背包/提灯四件,道具语义归魔法道具批):§5.4 形象锚/身份件条/三态①顺带,新增护目镜与腰灯条、候选池条。 -- **v1.1(2026-09-23)掳获包裹批**(用户拍板:背旗改"背负大号鼓胀布包裹、旗杆插于包裹顶"——"地牢扫荡者满载而归"的角色化;包裹帆布暖卡其色+绳索捆扎):§5.4 形象锚/身份件条/三态①记账顺带,旗朱三条纪律不变(破例组改按"包裹+旗"整组)。 -- **v1.0(2026-09-23)§5 抽离批 + 主角特征批**(用户两拍板:①人物设计自圣经 §5 抽离成独立文档、圣经留引用存根——人设高频改动免动圣经;②主角两特征改动——背后加扫雷联动旗帜、直剑换挖掘铲):§5.1–§5.3/§5.5/§5.6 自 art-bible v1.6 原文迁移(圣经内部节引用改注"圣经 §x"前缀,小节号不变);**§5.4 重写**——形象锚"直剑"改"圆头挖掘铲"(挖安全格动作语义角色化,攻击表现即挥铲),新增"旗朱背旗"(与棋盘插旗同物同色 `#C63D22`,主角唯一破对称件、旗面恒定画右、凹凸预算 +1),三态②"刀光"措辞改"铲击光效";新增生成顺序口径(先人设后状态图,侧背身状态卡按卡摘负向禁侧背条)与棋盘小人同旗开放项(归样张批)。执行侧 comfyui-prompts.md 主角三卡顺带更新(v2.1)。 diff --git a/design/art/remote-gen-prompts.md b/design/art/remote-gen-prompts.md index c34a438a..2612a874 100644 --- a/design/art/remote-gen-prompts.md +++ b/design/art/remote-gen-prompts.md @@ -1,14 +1,14 @@ # 远程生图提示词单(对话式生图操作单) -> **渠道定位(2026-10-06 拍板)**:生图渠道 = **远程对话式生图为主,本地 ComfyUI 为备选**(v2.7「彻底关闭」系当时口径,现行更正为备选);本文件是**对话操作单**(怎么开对话/贴什么参考图/怎么续写),提示词正文词库归 [comfyui-prompts](comfyui-prompts.md)——分工:词库改词库、操作单改流程,同一段正文不双处维护。 -> **出图登记义务(2026-10-06 P1-1 复现性)**:每张产出登记 **模型名 + 分辨率 + seed(可取则取)+ 对话/日期**,随候选原图同存 `design/art/candidates/<资产名>/`;缺登记的候选不入正稿遴选。 -> 开新对话出图:同一角色 2–3 版候选各开新对话(同对话续写=修图);同角色换姿势在同对话续写。分辨率开大档;候选原图存 `design/art/candidates/<资产名>/`。 +> **渠道定位(2026-10-06 拍板)**:生图渠道 = **远程对话式生图为主,本地 ComfyUI 为备选**(v2.7「彻底关闭」系当时口径,现行更正为备选);本文件是**对话操作单**(怎么开对话/贴什么参考图/怎么续写),提示词正文词库归 [art-prompts](art-prompts.md)——分工:词库改词库、操作单改流程,同一段正文不双处维护。 +> **出图登记义务(2026-10-06 P1-1 复现性)**:每张产出登记 **模型名 + 分辨率 + seed(可取则取)+ 对话/日期**,随候选原图同存 `artwork/candidates/<资产名>/`;缺登记的候选不入正稿遴选。 +> 开新对话出图:同一角色 2–3 版候选各开新对话(同对话续写=修图);同角色换姿势在同对话续写。分辨率开大档;候选原图存 `artwork/candidates/<资产名>/`。 ## 1. 主角战斗立绘 先贴基准图再发对应整段:重出攻击态=把 normal+hit 两张定稿成图都贴上当底稿(段尾 Reference fidelity 句按底稿锁死体型与形态,一或两张通吃);新候选开新对话,同对话续写=修图。 -> 旗面注意(2026-09-28 拍板脱钩):棋盘格上的封印旗=封印黑 `#000000`(旗朱→封印紫→封印黑沿革仅作用于棋盘);**人设背包旗=旗朱红矩形旗 `#C63D22`**(2026-09-28 拍板与棋盘封印色脱钩,形为矩形非三角)——参考图 normal/hit 的红旗即正确基准,段内措辞以本注记为准。 +> 旗面基准:参考图 normal/hit 的红旗即正确基准,段内措辞以 [character-design](character-design.md) §5.4 背包旗条为准(棋盘封印色与人设旗色的脱钩裁决也在那里),本单不复述色值与沿革。 ### 攻击态 diff --git a/design/dev/architecture/architecture.md b/design/engineering/architecture/architecture.md similarity index 98% rename from design/dev/architecture/architecture.md rename to design/engineering/architecture/architecture.md index df929af7..bf279d9c 100644 --- a/design/dev/architecture/architecture.md +++ b/design/engineering/architecture/architecture.md @@ -16,9 +16,9 @@ ## 引擎知识缺口摘要 -- **风险等级:MEDIUM**(2026-09-12 `/setup-engine refresh` 后由 HIGH 降级)。4.5→4.7 官方迁移指南已逐条核实并入 `design/dev/engine-reference/godot/breaking-changes.md` 与 `deprecated-apis.md`;**结论:无一条破坏 GDD 已锁架构契约**(autoload 体系 / .tres 单一事实源 / Callable 信号 / int64 二补数 / headless SceneTree 协议均不受影响)。 +- **风险等级:MEDIUM**(2026-09-12 `/setup-engine refresh` 后由 HIGH 降级)。4.5→4.7 官方迁移指南已逐条核实并入 `design/engineering/engine-reference/godot/breaking-changes.md` 与 `deprecated-apis.md`;**结论:无一条破坏 GDD 已锁架构契约**(autoload 体系 / .tres 单一事实源 / Callable 信号 / int64 二补数 / headless SceneTree 协议均不受影响)。 - 写码纪律不变:不确定的 API 一律查 `docs.godotengine.org/en/4.7/` 核实后再用;4.8(dev 阶段)稳定版发布后跑 `/setup-engine refresh`。 -- 三类必须入编码纪律的引擎事实(详见 `design/dev/engine-reference/godot/current-best-practices.md`): +- 三类必须入编码纪律的引擎事实(详见 `design/engineering/engine-reference/godot/current-best-practices.md`): 1. **GDScript 4.7 两条语义变化**:打包数组元素赋值不再触发属性 setter;类型化返回的方法覆盖必须显式 `return`。 2. **新项目默认值已变**:stretch mode `canvas_items` / aspect `expand`(4.7);Windows 渲染驱动 D3D12(4.6,仅 Forward+ 线)——创建 project.godot 后逐项核对。 3. `Resource.duplicate(true)` 深复制不再覆盖外部子资源——D2 表资源复制语义注意。 @@ -84,7 +84,7 @@ ## 模块归属 -> 命名遵循 `design/dev/code-conventions.md`:领域命名、禁 ID 前缀(文件头注不写文档链接——「实现 GDD:xxx」一类已废止,代码↔设计追溯由 GDD 文档承担)。切片已按此规范完成领域命名批。 +> 命名遵循 `design/engineering/code-conventions.md`:领域命名、禁 ID 前缀(文件头注不写文档链接——「实现 GDD:xxx」一类已废止,代码↔设计追溯由 GDD 文档承担)。切片已按此规范完成领域命名批。 ### 基础层 diff --git a/design/dev/architecture/code-architecture.html b/design/engineering/architecture/code-architecture.html similarity index 100% rename from design/dev/architecture/code-architecture.html rename to design/engineering/architecture/code-architecture.html diff --git a/design/dev/architecture/code-architecture.json b/design/engineering/architecture/code-architecture.json similarity index 100% rename from design/dev/architecture/code-architecture.json rename to design/engineering/architecture/code-architecture.json diff --git a/design/dev/architecture/gdd-architecture.html b/design/engineering/architecture/gdd-architecture.html similarity index 100% rename from design/dev/architecture/gdd-architecture.html rename to design/engineering/architecture/gdd-architecture.html diff --git a/design/dev/architecture/gdd-architecture.json b/design/engineering/architecture/gdd-architecture.json similarity index 98% rename from design/dev/architecture/gdd-architecture.json rename to design/engineering/architecture/gdd-architecture.json index cc6af465..dabec8f7 100644 --- a/design/dev/architecture/gdd-architecture.json +++ b/design/engineering/architecture/gdd-architecture.json @@ -3,7 +3,7 @@ "diagram_type": "architecture", "meta": { "title": "Dungeon Sweeper 系统架构总图", - "output": "design/dev/architecture/gdd-architecture.html", + "output": "design/engineering/architecture/gdd-architecture.html", "quality_profile": "showcase", "locale": "zh-CN" }, diff --git a/design/dev/code-conventions-cases.md b/design/engineering/code-conventions-cases.md similarity index 100% rename from design/dev/code-conventions-cases.md rename to design/engineering/code-conventions-cases.md diff --git a/design/dev/code-conventions.md b/design/engineering/code-conventions.md similarity index 91% rename from design/dev/code-conventions.md rename to design/engineering/code-conventions.md index 7d128114..fdee417a 100644 --- a/design/dev/code-conventions.md +++ b/design/engineering/code-conventions.md @@ -1,7 +1,7 @@ # 代码规范(Dungeon Sweeper) > 约束范围:`game/` 代码同尺度;与 AGENTS.md「硬性红线」节硬约束(数值表单点 / RNG 封闭流 / Core 零 UI / fail-fast / spec-AC 一致性)并行生效,冲突以用户裁决为准。 -> 分工:本文管结构 / 契约 / 语言 / 数值 / 流程五类;测试的编写与验收见 `design/dev/test-conventions.md`;真实反例库见同目录 `code-conventions-cases.md`(不常驻加载,对规则适用有疑义时查)。 +> 分工:本文管结构 / 契约 / 语言 / 数值 / 流程五类;测试的编写与验收见 `design/engineering/test-conventions.md`;真实反例库见同目录 `code-conventions-cases.md`(不常驻加载,对规则适用有疑义时查)。 **写任何代码前必须通读本文件。** @@ -56,7 +56,7 @@ ## 3. 测试纪律 -已独立成文:`design/dev/test-conventions.md`(探针标配 / 回归断言 / 提交前全量验证 / 验收清单落码规范 / 变异验证)。 +已独立成文:`design/engineering/test-conventions.md`(探针标配 / 回归断言 / 提交前全量验证 / 验收清单落码规范 / 变异验证)。 --- @@ -95,6 +95,6 @@ ## 6. 流程纪律 -1. **大改动三段走**:设计稿/伪代码 → 用户审阅 → 实现;实现禁止先于审阅。修改记录落切片 README。 -2. **实现批完成后的登记义务**:切片 README 写修改记录,06 条目按 doc-conventions §12.1 推进状态,批次过程与结论进 git 提交信息与 `reports/`(2026-10-18 用户裁:根目录会话状态文件已废除,禁止再在其中登记条目)。 +1. **大改动三段走**:设计稿/伪代码 → 用户审阅 → 实现;实现禁止先于审阅。改动明细只进 git 提交信息,README 与代码内不写修改记录(doc-conventions 第 5 节「禁写变更记录」)。 +2. **实现批完成后的登记义务**:06 条目按 doc-conventions §12.1 推进状态,批次过程与结论进 git 提交信息与 `reports/`(2026-10-18 用户裁:根目录会话状态文件已废除,禁止再在其中登记条目)。 3. **呈现层缺陷的教训回写 D1 GDD 设计输入**(信号载荷 schema / 场景级测试 / 时点状态可见性)。 diff --git a/design/dev/concept-conventions.md b/design/engineering/concept-conventions.md similarity index 98% rename from design/dev/concept-conventions.md rename to design/engineering/concept-conventions.md index 31730389..0cceadac 100644 --- a/design/dev/concept-conventions.md +++ b/design/engineering/concept-conventions.md @@ -1,6 +1,6 @@ # 概念与引用规范(Dungeon Sweeper) -> 约束范围:设计文档的概念建模与跨文档引用。写作层(句子、结构、骨架)归 `design/dev/doc-conventions.md`;本文管概念怎么切、文档怎么互链。 +> 约束范围:设计文档的概念建模与跨文档引用。写作层(句子、结构、骨架)归 `design/engineering/doc-conventions.md`;本文管概念怎么切、文档怎么互链。 > 概念只在 owner 文档里定义一次;跨系统术语的规范名、定义与互斥关系登记在 `design/gdd/术语表.md`。某概念被谁引用,靠全仓搜索它的规范名得出,不设第二处登记表。 **写设计文档前必须通读本文。** diff --git a/design/dev/doc-conventions.md b/design/engineering/doc-conventions.md similarity index 80% rename from design/dev/doc-conventions.md rename to design/engineering/doc-conventions.md index b0072705..c6321303 100644 --- a/design/dev/doc-conventions.md +++ b/design/engineering/doc-conventions.md @@ -1,7 +1,7 @@ # 文档写作规范(写文档前必读) -> **地位**:本文是文档写作的规范权威,与 `design/dev/code-conventions.md`(代码规范)对等;AGENTS.md 只留导航指针,细则以本文为准。 -> **适用范围**:`design/` 下一切现行文档与根目录 `roadmap.md`;概念建模与跨文档引用见 `design/dev/concept-conventions.md`。 +> **地位**:本文是文档写作的规范权威,与 `design/engineering/code-conventions.md`(代码规范)对等;AGENTS.md 只留导航指针,细则以本文为准。 +> **适用范围**:`design/` 下一切现行文档与根目录 `roadmap.md`;概念建模与跨文档引用见 `design/engineering/concept-conventions.md`。 ## 0. 总纲 @@ -61,11 +61,12 @@ | 规则 | 内容 | |---|---| | 树形文档体系 | 全部设计文档构成一棵树;文档增删必须同步根索引 `design/gdd/02-系统清单.md` | -| 架构事实唯一源 | `design/dev/architecture/architecture.md` 是架构事实的唯一权威(分层/模块归属/数据流/API 边界/测试与质量域);禁建第二份架构文档;历史决策记录只进 git commit log | +| 架构事实唯一源 | `design/engineering/architecture/architecture.md` 是架构事实的唯一权威(分层/模块归属/数据流/API 边界/测试与质量域);禁建第二份架构文档;历史决策记录只进 git commit log | | 一页纸节点 | 一节、一条规则 ≤一页纸(约 ≤80 行);装不下就拆节 | | 一系统一文档 | 不建 analysis 推演件;两三句能说清的"为什么"直接写进设计目的或规则正文 | | 正文只写现行规则 | 禁删除线、"(作废)"、"(日期+拍板)"式注记;审计信息入对应文档附录 | -| 后置 ≠ 删除 | P1/P2 后置内容逐条列出;复活后置项 = 修订文档,禁静默加回 | +| 正文单点维护 | 一条规则句只写在定义它的那份文档(owner 文档);其他文档要引用时写指针或语义概括,禁复制色值、尺寸、路径等可核对的具体值——上一句管不住数值之外的双写,本句补上。豁免面 = 执行侧文件必须带字面值才能工作时(生图提示词里的十六进制色、脚本参数),转写不算双写,但该文件头部必须写明"冲突时以 owner 文档为准" | +| 禁写变更记录 | 文档与代码文件内一律禁设「版本历史/修订记录/变更记录/修改记录/更新记录/更新日志」节或表格,禁逐版本叙述「改了哪些条款」;沿革与改动明细只进 git commit log。版本号可作为文档现行身份标记出现在文首状态行与正文引用中,但不得再挂变更表 || 后置 ≠ 删除 | P1/P2 后置内容逐条列出;复活后置项 = 修订文档,禁静默加回 | **数值纪律**:正文定规则、取值域、单位;平衡值进 `data/tables/`,provisional 必须标注;已锁数值事实源 = `game/data/tables/*.tres`(现行值)与 owner 文档正文(规则、取值域、单位)。 @@ -92,11 +93,11 @@ | `06-待办清单.md` | 流水线唯一登记处:条目=登记元数据标题+四属性正文,状态随流水线段推进(格式与状态机见第 12.1 节);各系统文档「待办」节只留指路存根 | | `roadmap.md`(根目录) | 里程碑表+迭代总表,一行一迭代,记录编排与实现进度(六列格式见第 12.2 节) | -**系统文档骨架**(`systems/` 下统一采用):文首引言(一句话定位+状态+旧版链接)/设计目的(2-4 句白话)/系统范围(负责/不负责两表)/在核心循环中的位置(字符画一行+两句白话)/核心规则(领域章节 ×2–6,每节一页纸)/依赖与输出(表格;引用纪律见 concept-conventions)/P0 最小闭环与 P1·P2 后置/调参表(取值域+provisional 标注)/验收标准(可验证判据)/待办(指路存根)/版本历史(表格)。 +**系统文档骨架**(`systems/` 下统一采用):文首引言(一句话定位+状态)/设计目的(2-4 句白话)/系统范围(负责/不负责两表)/在核心循环中的位置(字符画一行+两句白话)/核心规则(领域章节 ×2–6,每节一页纸)/依赖与输出(表格;引用纪律见 concept-conventions)/P0 最小闭环与 P1·P2 后置/调参表(取值域+provisional 标注)/验收标准(可验证判据)/待办(指路存根)。 **命名**:中文、见名知意;禁 a1_/b1_ 编号前缀;不留纯空目录。正文指代子系统一律用中文规范名;英文代号对照表见 `02-系统清单.md`,旧代号(a1–d6)仅限解读归档。 -## 7–9. 概念封装 / 引用纪律 / 归档与事实源——已独立成文 `design/dev/concept-conventions.md` +## 7–9. 概念封装 / 引用纪律 / 归档与事实源——已独立成文 `design/engineering/concept-conventions.md` ## 10. 会话状态——仓库根不设状态文件 @@ -106,7 +107,7 @@ ## 11. 文档生命周期:吸收即死 -**活文档**=唯一事实源长期维护:GDD 树、art-bible 等定稿规范、术语表、架构文档(`design/dev/architecture/architecture.md`)、本规范、06-待办清单、roadmap。**中间文档**=脚手架,寿命=迭代寿命:批需求卡片、机检/验收过程报告、调研/审计报告、模拟读数、迭代计划书、目检清单。为什么:了解游戏看 GDD,了解变更看 git;增量中间文档让版本管理失去意义,原始数据 dump 是化石不是证据。 +**活文档**=唯一事实源长期维护:GDD 树、art-bible 等定稿规范、术语表、架构文档(`design/engineering/architecture/architecture.md`)、本规范、06-待办清单、roadmap。**中间文档**=脚手架,寿命=迭代寿命:批需求卡片、机检/验收过程报告、调研/审计报告、模拟读数、迭代计划书、目检清单。为什么:了解游戏看 GDD,了解变更看 git;增量中间文档让版本管理失去意义,原始数据 dump 是化石不是证据。 | 规则 | 内容 | |---|---| @@ -117,15 +118,16 @@ | 删除不留死链 | 中间文档删除后,任何现行文档禁止再留指向它的文件路径;改指结论或提交号 | | sim-data 白名单 | 只留 README、日志、分析工具 .py、现行 MC 对拍锚、设计文档 md;可再生原始数据不入库 | | 出口清理项 | 每迭代出口检查单必含:本迭代中间产物逐份核对(结论已吸收、未决已迁移)后删除 | -| 暂存地非档案库 | `design/research/` 与 `design/qa/` 是中间文档暂存地,入内文件默认到期即死 | +| 暂存地非档案库 | 中间文档有两处暂存地,入内文件默认到期即死:`reports/`(需求卡片+迭代产出物)、`design/research/`(调研/提案/评估/历史验收)。`design/` 各子目录不留验证截图——截图属一次性凭据,结论写进 06 或需求卡片后图像即弃(在途图放 `artwork/`,整目录不入 git);只有需要机器逐像素比对的基线图长期入库,落 `game/tests/golden/` | +| 落档必写接收方 | 新报告落档时头部必须写明接收方——`06-待办清单.md` 第几条,或哪张需求卡片。写不出接收方的不落文件,内容在会话里交付即可 | | 迭代实现报告 | 实现批收口的迭代级报告(各卡状态/代拍板追认单/GDD 反哺点清单),属中间文档,**落 `reports/` 不落 `design/`**(2026-10-17 用户裁:实现批禁写 `design/`,`reports/` 是其唯一可写目录):反哺点裁决落文吸收后按「证据只留最新」退役 | | 证据只留最新 | 测试证据只保留最新一次迭代或最新一轮同类审计版本;新证据落位后同批删上一份;待人清单过人闸后同规退役 | -**删除方式**:按 `design/dev/concept-conventions.md` 第 2 节删除概念 SOP 口径——先查引用面(grep 文件名于阻塞域),改写或删除指路句,再删文件,收尾跑死链检查全绿。执行入口=项目技能 batch-closure(批后收尾与中间文档退役)。 +**删除方式**:按 `design/engineering/concept-conventions.md` 第 2 节删除概念 SOP 口径——先查引用面(grep 文件名于阻塞域),改写或删除指路句,再删文件,收尾跑死链检查全绿。执行入口=项目技能 batch-closure(批后收尾与中间文档退役)。 ## 12. 流程文档格式 -五段流水线(登记 → 文档设计/美术设计 → 写卡 → 迭代编排 → 实现,流程纪律见 `design/dev/process-conventions.md` §2)靠流程文档运转:06-待办清单登记要做的事,roadmap 记录迭代编排结果,artwork 目录承载美术在途素材。本节是这些流程文档的格式与状态机权威,也是流水线闸(`tools/pipeline_gate.py`,自动检查 06 与 roadmap 两文件格式及互相引用的机检闸)的判据依据。 +五段流水线(登记 → 文档设计/美术设计 → 写卡 → 迭代编排 → 实现,流程纪律见 `design/engineering/process-conventions.md` §2)靠流程文档运转:06-待办清单登记要做的事,roadmap 记录迭代编排结果,artwork 目录承载美术在途素材。本节是这些流程文档的格式与状态机权威,也是流水线闸(`tools/pipeline_gate.py`,自动检查 06 与 roadmap 两文件格式及互相引用的机检闸)的判据依据。 ### 12.1 06-待办清单条目格式与状态机 @@ -156,8 +158,8 @@ 例:美术设计已闭合(样张过审、art-bible v3.x)) 双轨条目设计阶段示例:文档设计已闭合(design/gdd/systems/xxx.md v0.6)+美术设计中 进入下游段(待写卡及之后)的前置条件——双轨:两个设计轨段都在场且都已闭合(带凭据);单轨:本轨闭合段(带凭据)在场 -下游共用序列:待写卡 → 已写卡(design/research/ 下的卡片路径)→ 已编迭代 N → 完成即整条删除 -单轨累积示例(已编迭代):文档设计已闭合(design/gdd/systems/xxx.md v1.2)+已写卡(design/research/xxx.md)+已编迭代 2 +下游共用序列:待写卡 → 已写卡(reports/ 下的需求卡片路径)→ 已编迭代 N → 完成即整条删除 +单轨累积示例(已编迭代):文档设计已闭合(design/gdd/systems/xxx.md v1.2)+已写卡(reports/需求卡片-xxx.md)+已编迭代 2 ``` 凭据括号内禁用+号——+只作状态段连接符,凭据内需要并列多项时用顿号(如上例「样张过审、art-bible v3.x」),用+会被流水线闸误判为状态段。已编迭代 N 段的交叉核依据=同状态行内「已写卡」段括号里的卡片路径。 diff --git a/design/dev/engine-reference/godot/VERSION.md b/design/engineering/engine-reference/godot/VERSION.md similarity index 100% rename from design/dev/engine-reference/godot/VERSION.md rename to design/engineering/engine-reference/godot/VERSION.md diff --git a/design/dev/engine-reference/godot/breaking-changes.md b/design/engineering/engine-reference/godot/breaking-changes.md similarity index 100% rename from design/dev/engine-reference/godot/breaking-changes.md rename to design/engineering/engine-reference/godot/breaking-changes.md diff --git a/design/dev/engine-reference/godot/current-best-practices.md b/design/engineering/engine-reference/godot/current-best-practices.md similarity index 100% rename from design/dev/engine-reference/godot/current-best-practices.md rename to design/engineering/engine-reference/godot/current-best-practices.md diff --git a/design/dev/engine-reference/godot/deprecated-apis.md b/design/engineering/engine-reference/godot/deprecated-apis.md similarity index 100% rename from design/dev/engine-reference/godot/deprecated-apis.md rename to design/engineering/engine-reference/godot/deprecated-apis.md diff --git a/design/dev/process-conventions.md b/design/engineering/process-conventions.md similarity index 100% rename from design/dev/process-conventions.md rename to design/engineering/process-conventions.md diff --git a/design/dev/test-conventions.md b/design/engineering/test-conventions.md similarity index 100% rename from design/dev/test-conventions.md rename to design/engineering/test-conventions.md diff --git a/design/gdd/00-游戏概念.md b/design/gdd/00-游戏概念.md index fa20b253..f1ed365b 100644 --- a/design/gdd/00-游戏概念.md +++ b/design/gdd/00-游戏概念.md @@ -60,13 +60,3 @@ 注意:上表六件秘宝为旧目录,已全数退役、只作素材库(新现行事实源=[秘宝](systems/跨局循环/秘宝.md)「目录(重设计 v1)」节——新目录 15 件为代号制、正式命名归用户);新目录正式命名定稿后本表同步。 另:元进度系统资源定名**钥石**——每一层关底 Boss 看守他那块区域的钥石,击杀即取走,用于在存档内解锁永久提升(属性 / 怪物遭遇 / 道具池)。2026-09-14 用户拍板,registry 术语登记随元进度设计批补登。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v1.0 | 2026-09-14 | 初版随 GDD 骨架建立:一句话概念、目标受众、世界观命名、术语层级 | -| v1.1 | 2026-09-25 | 术语「封印」定稿(用户拍板):插旗动作呈现名落术语表,出处条目 terminology | -| v1.2 | 2026-10-03 | R3 清账批(gdd_lint 分域随批):术语表日期批注括注迁出至本表 v1.1 行;语义零变更 | -| v1.3 | 2026-10-09 | 文档正确性审查批:专名表下「部分秘宝效果待重定」注过期——六件旧目录秘宝已随目录重设计全数退役、只作素材库,注改写为退役指路(新现行事实源=秘宝.md「目录(重设计 v1)」节,registry 登记行随实装批迁移);表格登记事实本体不动 | -| **v1.4** | 2026-10-19 | **系统资源定名传导批(用户裁,承接 42d64ec2/17ef0180)**:「元进度资源定名钥石」→「元进度系统资源定名钥石」——跨文档引用一律「规范名+指路 01-核心循环「系统资源」节」,定义源单点。机制与数值零改动。 | diff --git a/design/gdd/01-核心循环.md b/design/gdd/01-核心循环.md index d05f0625..124f3178 100644 --- a/design/gdd/01-核心循环.md +++ b/design/gdd/01-核心循环.md @@ -160,19 +160,3 @@ **获取概率提升**是元进度/营地的合法提升轴(可提升=奇物高档位出现率/秘宝解锁进度/地图 T3/T4 权重),但**不动保底**——保底是承诺不是概率,禁止任何概率件改变 T3「每板必有回复」类承诺。 **专长 rarity 语义约束**:Boss 三选一候选按档配比或加权抽取,使罕见度对出现率生效(字段双脱钩修复——此前 rarity 不影响抽选也不稳代表幅度);具体配比归调参批。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v1.0 | 2026-09-14 | 初版随 GDD 骨架建立:一场战斗 / 一场冒险 / 死了之后三节 | -| v1.1 | 2026-09-18 | 「数值语言」节定稿(用户拍板:整数加减核、百分比仅三处既有粗档、全局 floor) | -| v1.2 | 2026-10-03 | R3 清账批(gdd_lint 分域随批):节标题日期批注迁出至本表 v1.1 行;语义零变更 | -| v1.3 | 2026-10-07 | **生命周期轴(五档)节新立(道具重设计框架讨论用户裁决落文)**:五档定义(存档/冒险/关卡=预留档/节点=一次停点不按类型分档/回合)、节点链 DAG 前提(只向前·无环·只进一次)、一次性结算与持续态结算模型(跨层=转换非横跨,类A→类C)、总线与抽屉两类结算目标、道具定义卡 3+1 句、GP 与钥石两条平行独立资源;AP 两账/刷新两账/增益容器各归域内现行事实源(行动经济/秘宝/冒险结构/元进度同批落文) | -| v1.4 | 2026-10-07 | **道具三层职责与分界定稿(用户裁决——哈迪斯2 塔罗牌/祝福同构分界)**:新节落三句职责(秘宝=营地装配的角色机能件/奇物=冒险途中当局清零的增益/地图战斗资源=回合内获取并结算的格面兑付,地图层坐标经用户纠正——装板期生成、回合内获取与结算)+ 机能/机制/属性值判定尺 + 分层准入约束(新建秘宝必检:不出裸属性值、不改战斗结算机制;战斗机制改写只走专长);现行秘宝目录机制向三件(淬毒刃纹/标中殉爆/惊巢反制)经用户点名与本约束不符,归留秘宝层重设计批处置,冻结期内维持现状 | -| v1.5 | 2026-10-07 | **跨层档位框架落文(用户裁——道具三层重设计)**:分界节新增「档位与获取规则」分节——稀有度四级统一=**普通/优秀/稀有/传说**(「优秀」=用户认可的「非普通」优化:无双否定、WoW 绿装先例、正面积木递进;DND 六级梯子中取四、跳档表意头奖级);分层语义=秘宝档位越高解锁越苛刻/奇物越高概率越低/地图=概率位+保底上限;获取概率提升=元进度/营地合法轴但**不动保底**(保底=承诺非概率);专长 rarity 语义约束=Boss 三选一按档配比或加权(字段双脱钩的文档面修复,配比归调参批) | -| v1.6 | 2026-10-07 | **同调位分档批(用户裁——道具三层重设计·秘宝层)**:档位与获取规则节秘宝行扩装配面——同调位分三档(普通格/优秀格/稀有格),槽位可装 ≤ 槽位档位的件(向下兼容不惩罚早解锁);里程碑分档发槽(m1 普通格/m2 优秀格/m3 稀有格);费用制落选留档(槽位仅 3 组合太小);现行事实源落点=[秘宝](systems/跨局循环/秘宝.md)速览节同批 | -| v1.7 | 2026-10-10 | 分界尺措辞精确化(2026-10-10 用户澄清):秘宝行「不出裸属性值」精确为「不出角色战斗属性值」+操作包络正向列举(经济与操作参数不在此限)——「属性值」定义行(生命/护甲/攻击/伤害)不变;机制零改动 | -| v1.8 | 2026-10-11 | 文档一致性修复批(定时检查呈报项):「生命周期轴(五档)」节补五档嵌套字符画(R5 实指——lint 报错因工具 prev/cur 错位误记到「死了之后」节名下,工具已同批修正);「死了之后」节顺带补死亡与重开循环字符画(内容补强);版本历史同号冲突顺延——2026-10-10 分界尺措辞行 v1.5→v1.7(R10);v1.6 行秘宝链接改指跨局循环新位(死链修复) | -| v1.9 | 2026-10-15 | 简明技术中文用语规范(用户令):词面修正 6 处——「若干行动点」改指路行动经济/删「模板 C 骨架+模板 A 成长语言」无出处括注/DAG 首现补全称有向无环图/buff 换代增益 3 处/「不得改变」改「禁止」/「对标哈迪斯」改「参照」;版本历史行序修复(v1.7 行归位 v1.6 后)。句式句长不动(STC 文体豁免) | -| **v1.10** | 2026-10-19 | **系统资源定名传导批(用户裁,承接 42d64ec2/17ef0180)**:新立「系统资源」节(原「两条独立资源」):成员带寿命档标注+总线/抽屉两坐标,保留「GP 与钥石平行独立、不立统一上位概念」原裁论断,显式排除增益容器;总线/抽屉/一次性结算/五档表/各域指针节同步换代;旧称「账/账本」「独立资源」「系统数值」全库退役——跨文档引用一律「规范名+指路 01-核心循环「系统资源」节」,定义源单点。机制与数值零改动。 | diff --git a/design/gdd/02-系统清单.md b/design/gdd/02-系统清单.md index fe27cb1e..a2e7f08c 100644 --- a/design/gdd/02-系统清单.md +++ b/design/gdd/02-系统清单.md @@ -118,43 +118,3 @@ > 2026-10-05 消歧更名批注记(用户拍板):`AUXILIARY_ITEMS` 的中文规范名「魔法道具」→「**秘宝**」(理由与代码不同步的欠债登记见[秘宝](systems/跨局循环/秘宝.md) v0.9 版本行)。英文代号**继续沿用 `AUXILIARY_ITEMS` 不变**——代码标识符与工具链口径不动,对齐另批。 > 四个循环本身的英文代号为 `MINESWEEPER_CYCLE`(排雷循环)、`COMBAT_CYCLE`(战斗循环)、`ADVENTURE_CYCLE`(冒险循环)、`PRESENTATION_SUPPORT`(表现与支撑)。 - -## 版本历史 - -| v0.1 | 2026-09-15 | 根索引随新骨架建立:循环 × 子系统总表 + 子系统命名对照表 | -| v0.2 | 2026-09-15 | 雾格残留清理:`地形变异.md` 概要行去掉"雾格已从设计中移除"的迁移期注记(移除事实以[不做清单](05-不做清单.md)为单一出处)。文档树形状不变 | -| v0.3 | 2026-09-16 | 更名批(用户拍板 2026-09-16):两个系统中文规范名更名——"奖励道具经济"→"地图战斗资源"、"辅助道具"→"魔法道具";循环表文件行与命名对照表中文规范名同步(文件重命名 地图战斗资源.md / 魔法道具.md);英文代号暂沿用更名前名称,对齐另批 | -| v0.4 | 2026-09-16 | 格面资源批 UI 欠账收口(2026-09-15 格面资源批删除可选类道具后,本索引与 UX 文档的随批修订):`地图战斗资源.md` 概要行由"奖励产出、道具库存与使用窗口"(格面资源批前旧描述)改为与其 GDD 头部一致的一句话口径"格面资源的产出、极性字典与清图奖励封装";同批收口 battle.md / HUD框架.md 中随可选类道具删除而失义的道具窗口条款(文档本体修订见各文版本历史) | -| v0.5 | 2026-09-16 | 待拍板收编批:新建顶层文档 `06-待拍板清单.md`,把 systems/ 各系统文档「待拍板」章节的条目与三份文档的散落未定项统一收编;各系统文档「待拍板」节改为指路存根,其后新增条目直接登记清单 | -| v0.6 | 2026-09-16 | 06 清单改版(用户拍板):「待拍板」术语全仓改「待办」,顶层文档更名 `06-待办清单.md`;本表 06 行同步,各系统文档存根节随批由「待拍板」改名「待办」(各文版本历史不另记存根改名) | -| v0.7 | 2026-09-17 | 关卡节点地图定稿批:`关卡节点地图.md` 状态行改**已定稿**(v1.0——分支节点图形态重开〔用户拍板重开 05 清单路径分支后置裁定〕、四类节点封闭枚举、全节点确认选路、遭遇构成编排面三条、节点奖励=功能道具正式渠道;概要行"节点链"改"节点图";配套 05 清单移除路径分支条目、06 清单三悬案收口 + 两条新增、registry level_table 与术语回填) | -| v0.8 | 2026-09-21 | 元进度实现批:`元进度.md` 状态列「范围草案·待设计」→「已定稿·已实现」(2026-09-21 实现批落地,数值 provisional 归设计批标定) | -| v0.9 | 2026-09-27 | UX 文档欠账处置批:`ux/` 目录入索引(battle.md / interaction-patterns.md / 新建 level-clear.md);四项欠账处置——player-journey 不建、accessibility-requirements 不另立(改指 HUD框架 基线 + 设置与本地化)、node-reward 挂魔法道具内容重定批(06 登记)、level-clear 建档 | -| v1.0 | 2026-09-27 | 节点图生成立项批(用户拍板立项——06 条目「关卡内结构随机生成」随批改状态):`systems/冒险循环/` 新建 `关卡节点图生成.md` 设计草案 v0.1(图模板/模板池/抽签三概念、三级台阶路线、MC 测量对账条款、五拍板点);文档树补行 + 命名对照表补 `NODE_MAP_GENERATION` 行 | -| v1.1 | 2026-09-27 | 关卡画面 UX spec 建档(关卡画面 UX 批):`ux/` 表补 `level-map.md` 行——选路枢纽三停点布局、GP 常驻徽章、交互映射与 AC 成文,三项设计提案挂 06 待拍板 | -| v1.2 | 2026-10-03 | R3 清账批(gdd_lint 分域随批):四处状态单元格日期批注迁出——敌人系统行事件见敌人系统.md 版本历史 v0.5(技能池批);元进度行见本表 v0.8;camp/shop 行=两文 v1.0 落文(2026-09-30 三裁决执行批);语义零变更 | -| v1.3 | 2026-10-05 | **消歧更名批(用户拍板 2026-10-05)**:a5 行中文规范名「魔法道具」→「**秘宝**」,文档树文件名同步(systems/排雷循环/魔法道具.md → 秘宝.md);英文代号 `AUXILIARY_ITEMS` 沿用不变(代码标识符不同步属已知欠债,另批);旧代号列不变(a5 仍指 2026-09-14 归档快照)。更名理由为「魔法」一词已被本作征用为敌方侧伤害/护甲语汇(`魔法矢`/`魔法族`/`魔法护甲`),详见[秘宝](systems/跨局循环/秘宝.md) v0.9。历史定稿文档(research/qa/archive)原样保留 | -| v1.4 | 2026-10-05 | 立《特性》:一次冒险内角色自身得到的提升——此前按内部分类被叫成三个名字(规则类称"流派件"、属性类称"数值件"、界面称"本关强化"),现收敛为一个对象的两种形态枚举;文档树冒险循环补行 + 命名对照表补 `ADVENTURE_FEATURE` 行 | -| v1.5 | 2026-10-05 | 《特性》v1.1 分类重构:两类由"规则改写型 / 属性加成型"改为"属性提升(ASI)/ 专长(Feat)",属性提升内部再分纯属性组与特殊组;获取途径由两口共用池改为三条分工渠道(专长走特定节点、属性提升走奖励节点与商店)+罕见旁路"专长获取" | -| v1.6 | 2026-10-05 | 《特性》改名为《奖励》并升 v2.0:顶层概念改为"一次冒险内各渠道给予玩家的增益总称",边界判据由"自身提升 vs 持有物"改为生命周期(当局清零的是奖励,跨局带走的是魔法道具);分类由两类扩为三个枚举(专长 / 属性值提升 / 资源与机会类),并新增分类 × 渠道交叉开关表——两根轴互不决定。文档树冒险循环行改名 + 命名对照表 `ADVENTURE_FEATURE` → `ADVENTURE_REWARD` | -| v1.7 | 2026-10-05 | 《奖励》v2.1 交叉表收口:Boss 渠道只出专长(终局 Boss 不给),另两类在此不出现;新增「计价物不自售」规则处理金币不进商店——不拆第四个分类、不开特例,而是两轴交叉处的一条约束 | -| v1.8 | 2026-10-05 | 《奖励》v2.2:专长在非 Boss 渠道改为「专长获取」凭证形式(不直接给专长);渠道约束重构为三层(分类白名单/可计算谓词/显式例外清单),并承认「计价物不自售」形式上是白名单外的一道过滤、与死特判的区别在可计算;立默认原则——除已登记规则外分类内的都要在池子里,据此回复应在商店内(现行货架缺它,须补) | -| v1.9 | 2026-10-05 | 《奖励》改名为《奇物》并升 v2.4:顶层定名 Wondrous Item(DND 魔法物品九分类中的兜底杂类,官方中文译名「奇物」)。文档树冒险循环行改名;命名对照表 `ADVENTURE_REWARD` → `ADVENTURE_CURIO`(**不用 `reward_*`**——`reward_pick` 流 / `reward_node` context / `reward_preview` kind 已占用该词族) | -| v1.10 | 2026-10-05 | 《奇物》v2.5:第三类定名「资源」(资源偏泛,故在命名出处节写死判据句——给的是可消耗或可重掷的余量,不是属性永久抬升);回复归属定案留在本类不拆第四类;修复 1.5 段末与渠道轴标题粘连 | -| v1.11 | 2026-10-05 | 《奇物》v2.7 三个子节点正式定名:专长(Feat)/ 属性值提升(ASI)/ 资源——去「类」字后缀,此前是描述式叫法不是专名;新增 1.6 节「三层结构与命名」,定玩家可见的三层(奇物 / 三个分类 / 具体单件),并明确命名与呈现是两件事 | -| v1.12 | 2026-10-06 | 生涯设计立项批(迭代 17 卡④,纯文档):新建 `systems/跨局循环/生涯.md` 设计提纲 v0.1(信息架构 / 承载内容清单 / 与既有界面关系 / 分期实装建议 / 待裁点五节;状态=范围草案待评审——P0-P5 已裁结论落文,新发现待裁点 P6 营地最近冒险条带去留)。文档树跨局循环补行 + 命名对照表补 `CAREER` 行(无代码实现面,代号随实装批对齐) | -| v1.13 | 2026-10-07 | 道具三层职责分界批随批(用户裁——规则现行事实源=[核心循环](01-核心循环.md)「道具三层职责与分界」节 v1.4):秘宝行概要由「扫雷侧秘宝(显影、探测类)」(同调形态起已滞后)换代为「营地装配、整局冒险生效的角色机能件」;状态列随去迁移注记 | -| v1.14 | 2026-10-07 | 奇物层重设计落地随批(现行事实源=[奇物](systems/冒险循环/奇物.md)版本历史 v2.9-v3.4——专长体系推倒重建+资源转换源+池结构案D+跨层档位框架):奇物行概要与状态同步——概要补「专长=触发器句式的机制件/资源=转换源凭证」,状态改「已实现·2026-10-07 专长体系重设计落地(18 件基础框架+池结构案D)」 | -| v1.15 | 2026-10-09 | 旧档引用摘除批(用户令——旧版 GDD 归档 design/archive/gdd-2026-09-14/ 已删,全部指涉摘除):「旧代号」句不再指涉归档路径(仅解读 2026-09-14 之前历史记录);旧骨架索引参考行整行摘除。语义零变更 | -| v1.16 | 2026-10-09 | 文档正确性审查批(ux 表五行在役态对齐):node-reward 行「v1.0·切片期过渡形态随同调实施批退役改写」过期——退役改写已兑现,改 v2.5 令牌池在役口径;level-map 行「占位升格版·视觉终稿后置」过期——改定稿版(独立屏+样张 v1 冻结);shop 行「三商品卡全陈列」过期——pool 模式在役,改令牌级货架+v1.1;camp/settlement-summary 行版本号顺延 v1.1/v1.2。文件清单一轮只读核对零死链 | -| v1.17 | 2026-10-09 | B1 裁决落文(用户令——天赋树独立成文):跨局循环区补 `天赋树.md` 行(系统随迭代 12 实装在役,文档 v0.1 补写——机制以代码实态与迭代 12 落地裁决为据);命名对照表本批不动(代码标识符面 meta_tree 在役,代号登记另批) | -| v1.19 | 2026-10-10 | **系统目录归位批(用户发现结构问题)**:`秘宝.md` 自排雷循环区迁入跨局循环区——生命周期裁定=解锁(秘宝匣+解锁条件表)/装配(营地柜台)/存档持久全在跨局侧,排雷循环仅生效现场;成因=前身「辅助道具」系切片期掉落形态故旧置排雷循环,同调换代未随迁。文档树两区换行+系统总表行移区+命名对照表不动(代号 AUXILIARY_ITEMS/旧代号 a5 不变);全仓引用路径 33 处随批同步(版本历史与注记行内的历史路径按纪律保留) | 武器锻造成文批(用户令「完成文档编写、代码不实现、记录待办」):跨局循环区补 `武器锻造.md` 行(v0.1 设计定案待实装——按 2026-10-07 提案推荐案落文,17 裁点开放在册待逐点裁决);系统总表补行(无代码实现面,代号随实装批对齐) | -| v1.20 | 2026-10-11 | **术语表建立+全库术语统一批(用户令「专用术语表查表阅读」+危险格/整图/专长凭证三更名)**:顶层文档表补 `术语表.md` 行(v1.0——四节术语+退役词对照);同批全库更名=雷格/惩罚格→危险格、板级→整图、门票→专长凭证(清扫 7 文件约 270 处;排雷玩法定义句换代、秘宝.md v2.5 可读性批随批) | -| v1.21 | 2026-10-11 | 文档一致性修复批(定时检查呈报项):顶层文档表术语表行多余版本列摘除(R6 列数一致);奇物/天赋树/武器锻造三行状态格修订注记改写为现行事实白话句并换代版本号(天赋树 v0.4 换代定稿 29 节点、武器锻造 v0.2),日期批注归本表版本历史承载(R3) | -| v1.24 | 2026-10-12 | **迭代 20 反哺落文批·奇物行换代(用户裁④确认)**:奇物行状态格「基础框架 27 件,自爆流与生存件扩容后」→「迭代 20 专长实装批落地(29 行=基础 27+迁入 2,流派机制退役;池结构案D 四级 104,通关兑付=专长三选一按档配比加权)」 | -| v1.22 | 2026-10-11 | 锻造工坊更名批随迁:`武器锻造.md` 改名 `锻造工坊.md`(系统更名,用户令),顶层文档表行与系统总表行随名换代并顺延版本注(v0.3);版本历史行内旧名按历史记载保留 | -| v1.23 | 2026-10-11 | 锻造工坊 A 组定案随迁:锻造工坊行版本注换代 v0.4(A 组三裁+攻防所有权切分〔树脊柱砍攻/护两线,树侧 29→21 归天赋树会话交接批〕+钥匙无前置+2c/5a 结案) | -| v1.25 | 2026-10-12 | **锻造工坊 B 组定案随迁(用户逐点裁决)**:锻造工坊行版本注换代 v0.5、描述格随裁换代——两区定名(武器锻造区/护甲锻造区)、三甲型统一命名「魔法护甲」、一次冒险各选一件、**满级特效本期不做留扩展位**;**17 裁点清零**(推翻推荐案四行 2a/3b/6/8a,撤回呈报子问 4a-1),开工门裁点侧已满足、仅剩用户发令;设计文档「裁决结果清单」+「工作间内容清单」两节为实装批需求卡片输入 | -| v1.26 | 2026-10-13 | **Alpha 版本标准立文(用户令「先定里程碑内容」)**:顶层文档表补 `08-Alpha版本标准.md` 行——Alpha 版本包含哪些东西的清单,即里程碑 M3 的完成标准;只列条目不写内容,定义一律指路各权威文档。本文只管「有什么」,系统与内容的定义权仍归各自权威文档,本表不复制其内容 | -| v1.27 | 2026-10-15 | 简明技术中文用语规范(用户令):词面修正 2 处(关卡节点图生成行「拍板点全落文」→「拍板点全部已写入」;battle.md 行「Complete·随批修订」→「Complete·顺带修订」)+失同步修复 1 处(顶层文档表 08 行「已定稿 v1.0」→「已定稿 v1.4」,对齐 08 篇现行定稿版本) | -| **v1.28** | 2026-10-19 | **系统资源定名传导批(用户裁,承接 42d64ec2/17ef0180)**:奇物行「资源=转换源凭证」→「补给=给系统资源加一笔的转换源」——跨文档引用一律「规范名+指路 01-核心循环「系统资源」节」,定义源单点。机制与数值零改动。 | diff --git a/design/gdd/03-内容规模.md b/design/gdd/03-内容规模.md index c329d1b0..31d1f9c7 100644 --- a/design/gdd/03-内容规模.md +++ b/design/gdd/03-内容规模.md @@ -69,22 +69,3 @@ MVP 不加新状态;扩容走 `status_effects.tres` 加行 + [增益状态](sy - 战后自动回复——回复只有道具与恢复点两个来源 - 新敌种、新棋盘档位、更高密度、同深度多敌种混搭 - 秘宝清单之外的新件、状态表之外的新状态 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v0.1 | 2026-09-15 | 顶层六文档成文:关卡 / 敌人 / 棋盘 / 战斗道具 / 辅助道具 / 状态六项体量 | -| v0.2 | 2026-09-15 | 雾格残留清理:棋盘、辅助道具、暂不做三处去掉"雾格已移除 / 不依赖雾格"的迁移期注记,改指[不做清单](05-不做清单.md)。体量数字不变 | -| v0.3 | 2026-09-17 | 数值纪律收口批:全文改指路化体例——种数/行数/幅度不再抄配置,事实源改 data/tables/*.tres 与 registry;同步三批次失同步(两关落地/可选类删除/数值压缩) | -| v0.4 | 2026-09-20 | 层名改名批:第一层「苔藓回廊」→「裂颚洞窟」(用户拍板——苔藓意象与地精巢穴不契合;新名致敬 DND 5e《凡戴尔的失落矿坑》地精部族「裂颚」Cragmaw,洞窟纵深连通幽暗地域)。关卡表 display_name / registry / 00-游戏概念 / 切片首页按钮 / README 随批同步 | -| v0.5 | 2026-09-20 | 层名二改批:「裂颚洞窟」→「地精洞窟」(用户拍板——不绑定 DND 专名部族、规避 IP 指涉,直取地精巢穴意象;v0.4 出典随之作废仅留档)。全仓 8 处消费面随批同步 | -| v0.6 | 2026-09-20 | **第三关内容批(灰矮人矿城——与切片代码 / registry / 难度曲线与Boss / 棋盘生成 / 地形变异 同批)**:层名表加第三层(测试直入口已落地、正式序列推进待收尾——正式三关序列推进仍登记 Alpha 验收条件);棋盘尺寸条款由两档改按关配置(第三关 13×13 / Boss 14×14 随批铺行);棋盘节地形变异句随批补第三关一对(落石/矿尘);暂不做「更多关卡」行更新为已按扩展批流程落地。行值读 `data/tables/level.tres` / `board_gen.tres` / `variation.tres`(registry 为准) | -| v0.7 | 2026-09-20 | **GP+商店房批(与切片代码 / registry / 关卡节点地图 / 冒险结构 / 战斗结算 / 地图战斗资源 / 难度曲线与Boss 同批)**:格面资源池"八型 × 正负两向(十六格)"→"九型 × 正负两向(十八格)"(+gp 金币);新增「商店」小节一行——shop.tres 读表纪律(商品三行 / 掉落参数 / 价格参数,全部 provisional 归曲线调参批);一句话定位句补"一套商店配置" | -| v0.8 | 2026-09-21 | **冒险结构实现批(与切片代码 / registry / 冒险结构 同批)**:层名表 L2/L3 状态行改「正式序列已生效」——首页「开始冒险」三关连探落地(AdventureRunner 编排;测试直入口保留);「更多关卡」行同步;正文零历史叙述纪律下仅状态口径更新,结构框架零改动 | -| v0.9 | 2026-09-21 | **元进度实现批(与切片代码 / registry / 元进度 / 02 / 05 同批)**:「暂不做」节移除「元进度与跨局成长」行——跨局成长首批落地(营地三柜台 / 钥石账本 / 跨局注入,数值 provisional 归元进度设计批标定);新增「一套元进度配置」小节(meta.tres 四行族读表纪律,数值 provisional 归设计批) | -| v1.0 | 2026-10-03 | R3 清账批(gdd_lint 分域随批):五处日期批注括注迁出——体例说明=本表 v0.3 事件;十八格=本表 v0.7 事件;正式序列=本表 v0.8 事件;三处用户拍板事件随行入账:显影尘/地穴全图卷效果定位归 Alpha 且原 06 待办条目移除(2026-09-20 拍板)、单关测试直入口退役且唯一试玩入口=完整冒险(2026-09-23 拍板)、反制道具与全局作用域排 Alpha(2026-09-20 拍板);语义零变更 | -| v1.1 | 2026-10-09 | 文档正确性审查批:扫雷秘宝节过期订正——「registry 登记六件封闭清单(数据表未建)、其余四件定义有效」滞后于秘宝目录重设计(旧目录已全数退役、只作素材库),改写为目录(重设计 v1)15 件代号制+旧行删除归实装批;同调件数据表 treasure_items.tres 在役补记 | -| v1.2 | 2026-10-10 | 元进度配置段柜台名扫改(2026-10-10 天赋树设计会话裁「道具工坊」改名「秘宝匣」):「道具工坊阈值六行」改「秘宝匣阈值六行」。体量数字零改动 | -| v1.3 | 2026-10-11 | 文档一致性修复批(定时检查呈报项):扫雷秘宝节目录计数换代 15 件→12 件(普通 7/优秀 3/稀有 2——回能器删除、换装券撤消、第四只手删除三轮修正在本文件的漏网面,秘宝.md v2.7-v2.9 已载);该段超长拆两段(R1) | -| **v1.4** | 2026-10-19 | **系统资源定名传导批(用户裁,承接 42d64ec2/17ef0180)**:「GP 钱包账本归冒险结构」→「GP 归冒险结构」——跨文档引用一律「规范名+指路 01-核心循环「系统资源」节」,定义源单点。机制与数值零改动。 | diff --git a/design/gdd/04-美术音频方向.md b/design/gdd/04-美术音频方向.md index 71fd2f63..1da5fa72 100644 --- a/design/gdd/04-美术音频方向.md +++ b/design/gdd/04-美术音频方向.md @@ -13,10 +13,3 @@ **音频方向未定稿**:MVP 阶段用占位音效即可,正式音乐与音效等核心循环验证后再定。 美术细则(色板、形状语言、图标契约、验收标准)见 `design/art/art-bible.md`(含参考与反参考,见其 §9)。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v1.0 | 2026-09-14 | 初版随 GDD 骨架建立:风格一句话、三条关键词、参考游戏、音频方向占位 | -| v1.1 | 2026-10-03 | gdd_lint 分域批:补版本历史节(R4);本文体系裁散文体,R2 表格占比分域豁免 | diff --git a/design/gdd/05-不做清单.md b/design/gdd/05-不做清单.md index 272e392e..3fab7430 100644 --- a/design/gdd/05-不做清单.md +++ b/design/gdd/05-不做清单.md @@ -23,14 +23,3 @@ - **反雪球机制**:MVP 不做。等 Alpha 拿到真实测试数据,再决定要不要治滚雪球、怎么治。 - **正式音频、教学引导、战斗动画演出、设置与本地化**:MVP 内的打磨项,一律排后。先验证核心循环,再谈好听好看。 - **连刷 / 换图资金跨战斗携带**:现行规则是每场战斗清零,防滚雪球。是否解禁连刷策略,等实测数据说话。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v1.0 | 2026-09-14 | 初版随 GDD 骨架建立:确定不做 / 现阶段不做两节 | -| v1.1 | 2026-09-21 | 元进度实现批:元进度行注首批已落地(营地三柜台 / 钥石账本 / 跨局注入),数值 provisional 归设计批标定 | -| v1.2 | 2026-10-03 | R3 清账批(gdd_lint 分域随批):元进度行日期批注迁出至本表 v1.1 行;语义零变更 | -| v1.3 | 2026-10-03 | 道具替代推理边界锚复核(迭代 11 第①批同调实施批——需求卡片 §十连带):「允许恢复推理原料,不允许道具替代推理」边界锚**原样保留即通过**——同调目录九件逐件对表:真视/预读类=信息给付(探巢摆钟 3×3 窄域护栏承重),六被动=机制修正(禁裸 flat schema 强制),无一替代推理判定本体;复核零改动 | -| v1.4 | 2026-10-07 | 道具三层重设计·地图层身份裁决(案甲,用户裁):第 14 条收窄——「未开格显示奖励身份」改「未开格预读危险格与安全格」,未开格类型微光(读类型不读危险格与安全格)移出禁止面;呈现现行事实源=HUD框架「未开格类型微光」节(定义与色带已定稿),实施归微光批;推理本体保护不变 | -| **v1.5** | 2026-10-19 | **系统资源定名传导批(用户裁,承接 42d64ec2/17ef0180)**:「中间资源折算」→「中间系统资源折算」;「钥石账本」→「钥石」——跨文档引用一律「规范名+指路 01-核心循环「系统资源」节」,定义源单点。机制与数值零改动。 | diff --git a/design/gdd/06-待办清单.md b/design/gdd/06-待办清单.md index beaab58f..1da08f7c 100644 --- a/design/gdd/06-待办清单.md +++ b/design/gdd/06-待办清单.md @@ -1,6 +1,6 @@ # 06-待办清单 -本清单是流水线的唯一登记处:要做的事先在此登记一条,随流水线段推进改状态,做完整条删除;各系统文档的「待办」节只留一行指路存根,不再自建条目。条目格式(标题=登记元数据,正文=现状/缺口/归属/状态四属性)与状态机以 [doc-conventions §12.1](../dev/doc-conventions.md) 为权威。 +本清单是流水线的唯一登记处:要做的事先在此登记一条,随流水线段推进改状态,做完整条删除;各系统文档的「待办」节只留一行指路存根,不再自建条目。条目格式(标题=登记元数据,正文=现状/缺口/归属/状态四属性)与状态机以 [doc-conventions §12.1](../engineering/doc-conventions.md) 为权威。 #### UI 贴图重构批——营地与元进度件仍是程序化占位(2026-10-13 登记,来源=审计发现,设计面=美术轨) @@ -24,7 +24,7 @@ #### 战斗一屏样张 P0 未开工——界面成品是否过审的那把尺子还没建(2026-10-13 登记,来源=审计发现,设计面=美术轨) -**现状**:[美术圣经](../art/art-bible.md) §7.1 明文写着"程序化占位=临时态,任何屏的终稿闸=§1.4 整屏样张过闸;占位态禁止跨里程碑"。而 [美术素材状态清单](../art/art-status-checklist.md) 把「战斗一屏样张」这件最高优先级的素材标的是**未开始**——也就是说,**判定界面美术算不算过关的那把尺子到现在还没造出来**。2026-10-16 曾编入迭代 30 卡②(UI 呈现三卡批序位②),2026-10-17 用户裁定不满足「迭代=代码实现批」的开发条件、剔除回待设计(理由=样张交付物本身就是设计规格,正式字体与素材均未定稿;同日样张批开工已被用户终止)。v1.4 旧卡留 design/research/需求卡片-战斗一屏样张批-2026-10-16.md 作素材,非已写卡状态,重启不得直接开工。 +**现状**:[美术圣经](../art/art-bible.md) §7.1 明文写着"程序化占位=临时态,任何屏的终稿闸=§1.4 整屏样张过闸;占位态禁止跨里程碑"。而 [美术素材状态清单](../art/art-status-checklist.md) 把「战斗一屏样张」这件最高优先级的素材标的是**未开始**——也就是说,**判定界面美术算不算过关的那把尺子到现在还没造出来**。2026-10-16 曾编入迭代 30 卡②(UI 呈现三卡批序位②),2026-10-17 用户裁定不满足「迭代=代码实现批」的开发条件、剔除回待设计(理由=样张交付物本身就是设计规格,正式字体与素材均未定稿;同日样张批开工已被用户终止)。v1.4 旧卡留 reports/需求卡片-战斗一屏样张批-2026-10-16.md 作素材,非已写卡状态,重启不得直接开工。 **缺口**:还差「设计讨论→需求澄清→美术定稿」一轮设计(样张即设计目标图,产出尺寸档/色板/明度档清单反向给素材批),定稿后重新立卡方可开发。 @@ -211,7 +211,7 @@ **归属**:[地图战斗资源](systems/战斗循环/地图战斗资源.md)修订批(基础配比的权重覆盖语义 + GDD 修订)与[元进度](systems/跨局循环/元进度.md)(解锁容量与注入生产者)共裁;呈现面归[HUD 框架](systems/表现与支撑/HUD框架.md)与[教学引导](systems/表现与支撑/教学引导.md)顺带。 -**状态**:文档设计已闭合(八裁全落零拍板点,机制依赖面=元进度.md v1.0「冒险开始参数面与覆盖值通道」)+已写卡(design/research/需求卡片-冒险前资源配比预设批-2026-10-04.md)(备选) +**状态**:文档设计已闭合(八裁全落零拍板点,机制依赖面=元进度.md v1.0「冒险开始参数面与覆盖值通道」)+已写卡(reports/需求卡片-冒险前资源配比预设批-2026-10-04.md)(备选) #### GP 经济换算失衡——GP 袋面值与商店价格的换算关系复查(2026-10-07 登记,来源=审计发现,设计面=文档轨) @@ -311,9 +311,17 @@ **状态**:待写卡 +#### 阔视野带效果表述与类型微光口径冲突(2026-10-20 登记,来源=批次移交,设计面=工程直入) + +**现状**:迭代 30 卡①实现报告登记的存量冲突(报告已在这次收尾中退役,git 历史可考):[秘宝](systems/跨局循环/秘宝.md) 普通档表「阔视野带」行一句话写作「类型微光范围 8 格→12 格」,`game/data/tables/treasure_items.tres` 该行 `desc` 同口径;但 [HUD框架](systems/表现与支撑/HUD框架.md) 迷雾节配套拍板已定「类型微光不随视野扩大(贴身 8 格、微光锚=可挖域)」,实现面微光作用集恒为 `_diggable` 子集,该件实际效果是 `light_radius_bonus` 扩灯光区(迷雾视野 8→12),不扩类型微光。两处表述属提灯功能承接时期的遗留措辞。 + +**归属**:秘宝.md 普通档表该行 + treasure_items.tres 该行 desc(数据文本订正批;只改文字、不改机制) + +**状态**:待写卡(备选) + #### 第二 / 三关棋盘观感——亮度与对比度(2026-10-13 登记,来源=playnote,设计面=双轨) -**现状**:来源=playnote 用户试玩记录「UI 优化,第二第三关的棋盘看着太累了;不知道是因为亮度还是对比度的原因,看着非常费劲,非常不舒服」。2026-10-13 用户裁定:**这是需要做的**,且本就属版本标准的覆盖范围——[08-Alpha版本标准](08-Alpha版本标准.md)「五 · 表现」已新增「棋盘观感(第二 / 三关亮度与对比度)」行,标待做。**开工前须先定性(沿用既有裁决)**:是**素材轴**问题(棋盘瓦片与格面图标本身的明度与色相),还是 **UI 轴**问题(舞台底色与叠加层的对比关系)——两轴修法完全不同,定性错了等于白改一轮;该定性要求(原备忘 (e) 项)是本条的开工前置。2026-10-16 曾编入迭代 30 卡③(UI 呈现三卡批序位③),2026-10-17 用户裁定剔除回待设计(自身挂「素材轴/UI 轴」定性人闸+甲/乙〔recolor/远程生图重产〕素材裁点;若裁乙,其瓦片规格依赖战斗一屏样张批的目标规格清单产出)。v1.4 旧卡留 design/research/需求卡片-二三关棋盘观感批-2026-10-16.md 作素材,非已写卡状态。与已完成注销的「呈现层残余 <4.5:1 文字位」分工:本条管**棋盘区域整体的观感**(亮度/对比度/费劲感,体感问题),彼条管**具体文字位的对比度读数**(机检可判硬指标),两条不同面不互相替代。 +**现状**:来源=playnote 用户试玩记录「UI 优化,第二第三关的棋盘看着太累了;不知道是因为亮度还是对比度的原因,看着非常费劲,非常不舒服」。2026-10-13 用户裁定:**这是需要做的**,且本就属版本标准的覆盖范围——[08-Alpha版本标准](08-Alpha版本标准.md)「五 · 表现」已新增「棋盘观感(第二 / 三关亮度与对比度)」行,标待做。**开工前须先定性(沿用既有裁决)**:是**素材轴**问题(棋盘瓦片与格面图标本身的明度与色相),还是 **UI 轴**问题(舞台底色与叠加层的对比关系)——两轴修法完全不同,定性错了等于白改一轮;该定性要求(原备忘 (e) 项)是本条的开工前置。2026-10-16 曾编入迭代 30 卡③(UI 呈现三卡批序位③),2026-10-17 用户裁定剔除回待设计(自身挂「素材轴/UI 轴」定性人闸+甲/乙〔recolor/远程生图重产〕素材裁点;若裁乙,其瓦片规格依赖战斗一屏样张批的目标规格清单产出)。v1.4 旧卡留 reports/需求卡片-二三关棋盘观感批-2026-10-16.md 作素材,非已写卡状态。与已完成注销的「呈现层残余 <4.5:1 文字位」分工:本条管**棋盘区域整体的观感**(亮度/对比度/费劲感,体感问题),彼条管**具体文字位的对比度读数**(机检可判硬指标),两条不同面不互相替代。 **缺口**:还差「素材轴 / UI 轴」定性设计讨论与甲/乙素材裁点裁决;素材轴若走重产,还依赖战斗一屏样张批的目标规格清单产出。 @@ -343,7 +351,7 @@ #### 立绘清晰度回退评估——是否改用高清图(2026-10-13 登记,来源=playnote,设计面=美术轨) -**现状**:来源=playnote 用户试玩记录「现在的立绘太丑了,像素化的粒度太低了,导致根本看不清立绘;看是否可以改回用较为高清的图片?还有一个问题是大小的问题……现在地精的图片看起来比熊地精还要大,这并不合理」。2026-10-13 用户裁定:与「第二 / 三关棋盘观感」同属**美术线更新**。**两个子问题现状不同**:子问题一=怪物大小比例不合理——**已兑现**(体量语义改生物体型〔character-design §5.2,弃强度线性映射〕+八敌逐键定档〔art-bible §8.2〕),剩余面=用户是否复核验收;子问题二=像素粒度过低/是否改回高清图——**方向已裁(2026-10-14 用户裁)**:「还是像素风格立绘,但是不需要像现在太过于像素」,定性为**精细手绘像素**(不是插画、不是 HD-2D、不回退高清图;裁决录=[美术审计-cursor会话存档](../art/美术审计-cursor会话存档-2026-10-14.md) §2.2;权威面 art-bible/character-design 口径节反哺另批),粒度问题已改派生管线(八敌源档 36–94 全过可读门槛:24 糊/32 可读/48 清楚)。[08-Alpha版本标准](08-Alpha版本标准.md) 未决项已随裁删除(2026-10-16 状态刷新批)。 +**现状**:来源=playnote 用户试玩记录「现在的立绘太丑了,像素化的粒度太低了,导致根本看不清立绘;看是否可以改回用较为高清的图片?还有一个问题是大小的问题……现在地精的图片看起来比熊地精还要大,这并不合理」。2026-10-13 用户裁定:与「第二 / 三关棋盘观感」同属**美术线更新**。**两个子问题现状不同**:子问题一=怪物大小比例不合理——**已兑现**(体量语义改生物体型〔character-design §5.2,弃强度线性映射〕+八敌逐键定档〔art-bible §8.2〕),剩余面=用户是否复核验收;子问题二=像素粒度过低/是否改回高清图——**方向已裁(2026-10-14 用户裁)**:「还是像素风格立绘,但是不需要像现在太过于像素」,定性为**精细手绘像素**(不是插画、不是 HD-2D、不回退高清图;裁决录=[美术审计-cursor会话存档](../research/美术审计-cursor会话存档-2026-10-14.md) §2.2;权威面 art-bible/character-design 口径节反哺另批),粒度问题已改派生管线(八敌源档 36–94 全过可读门槛:24 糊/32 可读/48 清楚)。[08-Alpha版本标准](08-Alpha版本标准.md) 未决项已随裁删除(2026-10-16 状态刷新批)。 **缺口**:还差立绘按「精细手绘像素」新口径重产的设计——整屏方向稿与地面/立绘密度同批锁(与战斗一屏样张批联动)后才可出重产工单。 @@ -479,6 +487,12 @@ ### 文档与结构 +#### game/tests/README 分级表证据落点行仍指 design/qa/(2026-10-20 登记,来源=批次移交,设计面=工程直入) + +**现状**:qa/ 目录退役批(分支 `qa-retire-20261020`,提交 897a0742)已把 13 处活指针改判到 `design/research/`、`reports/`、`sim-data/`,唯 `game/tests/README.md:81` 测试分级表 Config/Data 行的证据落点仍写 `design/qa/`(该目录本批已退役),正解=`sim-data/`——该行是机器读数出口,与 `tools/balance_verifier.py` 的报告落点改动属同一口径。本批未顺手改:改动路径一旦落在 `game/` 前缀内,合回闸即按路径推定本批需代码域验收,而本批零代码改动(见 `.zcode/hooks/worktree-guard.sh` 推域段);死链闸也判不出——`tools/doc_link_audit.py` 只扫 `design/gdd/`。故列为已知欠账,等下一批真改 `game/` 时一并纠正。 +**归属**:`game/tests/README.md` 测试分级表 +**状态**:待写卡(备选) + #### qa/ 实现报告收尾·孤儿遗留七项(2026-10-14 登记,来源=批次移交,设计面=工程直入) **现状**:qa 收尾批核查 iter19 系列出口报告遗留移交项时发现**不在 06 在册**的七项(acceptance-package §三.2/card0 §5.3/followup §七.3/uibackfill §6.2-4/verify §6.1/3/7)。已结案的(tree_rules 受理闭环、X/Y 双源、S1 七项违例修复、提灯目检项、tests.yml 休眠等)已在各报告标注结案证据,不入本条。七项均为挂号备查/顺路件,无排期承诺: @@ -497,7 +511,7 @@ #### 美术资产链路审计两项 P0 — 待用户裁决(2026-10-09 登记,来源=审计发现,设计面=双轨) -**现状**:**P0①(文档面)**:`design/art/art-bible.md` 第 68/527 行与 art-status-checklist 第 13 行至今仍引用已丢失的冻结样张 sample-batch-v3-final-2026-09-30.png(磁盘实测零命中),死指涉待修复。**P0②(美术面)**:主角棋盘小人未走像素管线(插值糊图),重产事项未在任何登记处在册。审计报告唯一留档=design/art/美术资产链路审计报告-2026-10-06.html(无人指路)。裁=修复死指涉+登记重产,或判过期随旧管线退役。2026-10-13 用户令随「UI 美化三层诊断」登记:本条属第三层「观感提升」,Alpha 阶段需完成。 +**现状**:**P0①(文档面)**:`design/art/art-bible.md` 第 68/527 行与 art-status-checklist 第 13 行至今仍引用已丢失的冻结样张 sample-batch-v3-final-2026-09-30.png(磁盘实测零命中),死指涉待修复。**P0②(美术面)**:主角棋盘小人未走像素管线(插值糊图),重产事项未在任何登记处在册。审计报告 HTML 件从未进版本库、现已删除,两项 P0 的现状以本条正文为准。裁=修复死指涉+登记重产,或判过期随旧管线退役。2026-10-13 用户令随「UI 美化三层诊断」登记:本条属第三层「观感提升」,Alpha 阶段需完成。 **缺口**:还差用户的路线裁决(修复死指涉+登记重产,还是判过期随旧管线退役)——裁决后文档面修复与美术重产登记各按轨推进。 @@ -539,24 +553,13 @@ **归属**:营地交互重做(数据层+呈现层+美术线;五卡路径见状态行,批次归属与波次由用户按工作量另裁) -**状态**:文档设计已闭合(design/research/需求澄清-营地交互重做-2026-10-18.md v1.0)+待美术设计+已写卡(design/research/需求卡片-存档制数据层改造批-2026-10-18.md)+已写卡(design/research/需求卡片-主菜单三入口化批-2026-10-18.md)+已写卡(design/research/需求卡片-选档界面新建批-2026-10-18.md)+已写卡(design/research/需求卡片-营地场景图新建批-2026-10-18.md)+已写卡(design/research/需求卡片-ESC浮窗与营地顶栏批-2026-10-18.md) - -#### 代码术语刷新批——禁用词全库清扫+flag→seal 标识符重命名(2026-10-18 登记,来源=会话提及,设计面=工程直入) - -**现状**:2026-10-18 用户裁定三组术语刷新(记忆 `project-terminology-rulings-20261018.md`):①GP 是唯一正式命名,「金币」系 AI 噪音全库禁用;②「插旗」全库禁用,正式动作名=封印,「旗」概念不存在;③代码英文标识符 flag_* 全换 seal_*。另「雷格」「惩罚格」2026-10-11 已裁退役→危险格,代码域尚未执行。审计报告(`design/qa/代码术语审计报告-2026-10-18.md`)实查:game/ 代码域实测读数(2026-10-18 需求卡片 v1.4 复核;口径=区分大小写逐处计数,命令见卡片 §2):含 `flag` 的文件 57 个(.gd 53 + .tres 4)共 617 处,剔除 `size_flags_*` 70 处(19 个文件)与 `_fatal_flag` 4 处后**净待改 543 处/42 个文件**;中文禁用词 金币 39 处、插旗 62 处、雷格 75 处、惩罚格 1 处、「旗」含复合词共 376 处。涉及核心逻辑(minesweeper_rules.gd 净 59、battle_orchestrator.gd 33、grant_segment.gd 38)、数据表(feats.tres 15、settlement.tres、action_economy.tres、reward.tres、treasure_items.tres)、呈现层(board_view.gd 23、battle_end_overlay.gd 11、shop_overlay_view.gd、legend_overlay.gd)与冒烟测试(smoke_all.gd 单文件净 156 处=全集 29%)。订正说明:审计报告原记「game/ 约 757 处(flag_ 314 处/29 个 .gd;金币 116/插旗 210/雷格 109)」在现行代码上两种口径都复现不出:中文三词的读数属全库面(全库实测 金币 381/插旗 600/雷格 394 处),与本条的 game/ 范围混记;flag 侧则低估约一倍。逐文件读数以需求卡片 §2 为准。文档面(design/)由另批处理,本条只覆盖 game/ 代码域。 - -**归属**:全工程(排雷循环/战斗循环/冒险循环/呈现层/数据表/冒烟测试均触及;主责=术语表裁定执行) - -**状态**:已写卡(design/research/需求卡片-代码术语刷新批-2026-10-18.md)+已编迭代 31 - - ---- +**状态**:文档设计已闭合(design/research/需求澄清-营地交互重做-2026-10-18.md v1.0)+待美术设计+已写卡(reports/需求卡片-存档制数据层改造批-2026-10-18.md)+已写卡(reports/需求卡片-主菜单三入口化批-2026-10-18.md)+已写卡(reports/需求卡片-选档界面新建批-2026-10-18.md)+已写卡(reports/需求卡片-营地场景图新建批-2026-10-18.md)+已写卡(reports/需求卡片-ESC浮窗与营地顶栏批-2026-10-18.md) #### 需求卡片入库纪律未登记——502 批遗留的悬空待办(2026-10-18 登记,来源=批次移交,设计面=反哺点) **现状**:2026-10-16 迭代 29 编入批(提交 `21c83f5`)认定「需求卡片写进了 roadmap 却没在 06 登记」属流程漏洞,需要补一条卡片入库纪律。该条至今在 06 清单内查无(2026-10-17 与 2026-10-18 两次全文检索零命中)。唯一记过它的地方是根目录状态文件未决面第 31 行,该文件已于 2026-10-18 用户裁废除,故改记本条防遗忘。 -**归属**:design/dev/process-conventions.md 五段流水线的登记段 +**归属**:design/engineering/process-conventions.md 五段流水线的登记段 **状态**:待裁决(这条纪律要不要立;立则写进 process-conventions) @@ -626,21 +629,13 @@ #### 计数器寿命域未统一(2026-10-18 登记,来源=会话提及,设计面=文档轨) -**现状**:效果的「寿命/作用域」现由三套互不同属的机制拼成,无统一枚举——①`domain` 键仅作用于计数器,只有 `battle`(缺省,每战清零)/`adventure`(跨战持久)两值;②`reset_at: round_start` 表达回合级重置(`feats.tres` 用 4 处);③「按关重置」是**硬编码名单**(`adventure_runner.gd:873-877` 按关清零 `tree_*_used`),不在任何词表内;④**效果自身(非计数器)的寿命没有任何字段**——`effect_engine.gd:32` 的「封印桩本轮/石肤本场」是拿 cap 参数凑的注释,机器不可读。另有名实不符:`domain=adventure` 实际承担「按关重置」语义(代码现状即证:`effect_engine.gd` 词表无寿命字段)。`effect_engine.gd:119-121` 自称「生命周期四态」(跨战持久/按关重置/新冒险清零/断点保留),却未按枚举落地。**后果**:任何带寿命权重的核算(期望收益/强度摊销/「每 X 一次」折算)无法在数据层进行,须逐条读注释或读清除侧代码。**用户已裁:本批不动寿命域**,完美保险按现役 `domain=battle` 落地,此项仅登记、不入本批改动面。 +**现状**:2026-10-19 用户裁定推翻「寿命域统一口径」方向(原方案五档/四档枚举、`domain` 键扩词表整体作废——作废因由=该方案隐含前提「引擎持有状态、需要字段说明它活多久」被推翻,见提案 §8),改走**效果引擎无状态化重构**:引擎零运行时状态,计数器按 round/battle/level/adventure 四桶外置、由各生命周期宿主对象持有(寿命由宿主生灭决定,不再需要寿命字段),归属用 counter_id 前缀表达(`round_`/`lvl_`/`adv_`/无前缀=battle,`meta_` 非法)+加载期强校验。设计定值与实现设计缺口已全部闭合(提案=design/research/提案-效果引擎无状态化-2026-10-19.md,§7 定值+§7.10 闭合)。本条目原指认的三套机制并存问题由该重构一并消解:①`domain`/`reset_at` 两字段随重构删除;②「按关重置」硬编码名单(`adventure_runner.gd:838-841`)随 level 桶宿主化消失;③`run_ledger.gd:42` 空容器早退自锁缺陷随搬运链删除自动消解(代价=行为变更:adventure 域计数器变真跨战持久、天赋树锋/守变真每关限 2 次——削弱方向已定性,提案 §7.7/§7.8)。副产定值:`pain_layers` 名实不符归 battle、`dig_combo` 死读数随重构顺带删除(提案 §7.10.14)。 + +**证据面缺口(迭代 31 卡② 移交)**:`domain=battle` 每战清零与 `domain=adventure` 跨战持久这一对判据,现无法由单元测试 rig 变异证红(`feat_vouchers_test` 的变异②只钉住事件发射时机,未覆盖寿命域)。闭合此项时须在 runner/MC 面补一次「adventure 域计数器跨战持久 vs battle 域清零」的对照读数,或在文档批确认该判据只由代码注释与装载面约束、不设机检。 **归属**:architecture.md 与 game/core/effect_engine.gd(待立独立批) -**状态**:待裁决(是否统一寿命域口径) - ---- - -#### 凭证件裁削批·代码侧迁移(2026-10-18 登记,来源=会话提及,设计面=文档轨) - -**现状**:GDD 侧已随 2026-10-18 文档批定稿(见 `奇物.md` v3.18),**代码零改动**。待做五件事——①`CURIO_KINDS` 移除 attune_battery/perfect_insurance 两枚及配套配额字段、件值字段、分发表分支;②`TIER_QUOTAS` rare 9→7、总量 104→102(**结构锚须重裁**——用户已裁「净删」,不接受转给别件;连带 rare 档品种 5→3,仅剩 ap/rap/time_sand);③`adventure_runner.gd` 清 `_pending_insurance`/`_battery_pending`/`choose_battery_target`/`battery_pending()`/断点存档键(🔴 `run_ledger.attune_charges` 账本与 `_seed_attune_charges` **禁删**——迭代 11 秘宝基础设施);④`feats.tres` 增完美保险行(rarity 取 rare、desc=「本场首次封印落空,不计入完美封印判定」、triggers 走 on=flag_missed + 每战限次),前置依赖**效果引擎 `EFFECT_KINDS` 扩签一种**(该行将成为 feats.tres 首例 `domain=battle`;候选名 forgive_flag_miss 已作废,2026-10-18 用户补裁效果类型名=**forgive_seal_miss**(随卡① flag→seal 命名接续,见需求卡片 v1.1 顶部通则);⑤`grant_segment.gd` 硬编码 `_fx_insurance` 改订阅式——**按用户指定做法**:新增自有累加计数,判定时取「误标总数 − 豁免数」得有效数,**不改写既有 `_perfect_hit_false`、不拦截事件**(原方案的回退式与拦截式均已否决)。测试面 `feat_vouchers_test.gd` V9/V16 同步。玩家面术语统一用「完美封印」、不用「完美排雷」(命名纪律见奇物.md v3.15)。 - -**归属**:game/ 代码与数据表(走独立 worktree 批) - -**状态**:文档设计已闭合(design/gdd/systems/冒险循环/奇物.md v3.18)+已写卡(design/research/需求卡片-凭证件裁削批-2026-10-18.md)+已编迭代 31 +**状态**:待裁决(是否统一寿命域口径——2026-10-19 已裁:统一口径方案作废,改走无状态化重构)+文档设计已闭合(design/research/提案-效果引擎无状态化-2026-10-19.md v1.2——2026-10-20 §7.10 闭合)+待写卡+已写卡(reports/需求卡片-效果引擎无状态化批-2026-10-20.md) --- @@ -693,3 +688,25 @@ **归属**:game/ 代码与数据表(代码域,走独立 worktree 批;并行避让——`changelog-retire-20261019` 在盘未合回且正在改 `AGENTS.md` 与 `design/dev/code-conventions.md`,本批禁碰这两个文件,S11 规则说明自持于 `game/tests/static_scan.sh` 头注与 `game/tests/README.md`) **状态**:已写卡(design/research/需求卡片-代码注释禁用词清扫批-2026-10-20.md,**v1.3**)+已编迭代 32 + +--- + +#### 效果引擎「系统无状态」原则缺架构文档条目(2026-10-20 登记,来源=会话提及,设计面=文档轨) + +**现状**:用户 2026-10-19 会话裁定的 ECS 架构依据(系统无状态——效果引擎这类系统零运行时可变状态、数据由宿主对象持有并随宿主生灭、状态按参数传入系统、系统只做判定)是「效果引擎无状态化」重构批的立项判据(上游条目=本清单「计数器寿命域未统一」,提案=design/research/提案-效果引擎无状态化-2026-10-19.md §7.9 #1),但 `design/engineering/architecture/architecture.md`「架构原则」节(现行 7 条)无「系统无状态」条目——立项判据暂无权威文档出处(2026-10-19 全仓检索「无状态/纯计算」零命中,提案 §10.3 实查;原 `design/registry/` 两 yaml 已随 2026-10-19 用户裁注销删除,无可迁凭据)。重构批是代码批、禁写 `design/`,文档级补条只能另立文档批。 + +**缺口**:一次文档设计讨论——「系统无状态」原则的条文表述(与现行 7 条架构原则的交叉与序位:核心层纯逻辑/fail-fast 两原则与之相邻但不等同)+写入 architecture.md 的批次编排。 + +**归属**:design/engineering/architecture/architecture.md(架构原则节) + +**状态**:待文档设计 + +--- + +#### 玩家面残留禁字清扫——图例/明细/日志/字形五处(2026-10-20 登记,来源=批次移交,设计面=工程直入) + +**现状**:迭代 31 卡① 已把 `game/` 的金币/插旗/雷格/惩罚格/`flag` 清零,但玩家可见文本仍残留「雷/排雷/插」五处(v3.15 命名纪律:玩家面禁「雷」,危险格对外风味=地下城陷阱/怪物巢穴):①`legend_overlay.gd:11` 图例行「插错可左键直接挖开…危险格吃**挖雷**惩罚」;②`status_slot_row.gd:42` 与 `settlement.tres:14` 明细来源名 `"mine_hit": "踩雷"`;③`battle_log_view.gd:194` 战斗日志「本板**完美排雷**已破——归因此封印」;④`board_fx_view.gd:102` 横幅「**完美排雷** ×2」;⑤`board_view.gd:737` 已开危险格单字字形 `glyph = "雷"`。①-④ 纯文案零风险;⑤ 改字形会动 golden 基线,须同步重制 C 档基准。开发注记面(`ui_kit.gd:37` 常量名 `RED_MINE` 与其注释)属内部语,按纪律保留。 + +**归属**:`game/presentation/` 与 `game/data/tables/settlement.tres`(走独立 worktree 批;⑤ 连带渲染基线) + +**状态**:待写卡 diff --git a/design/gdd/07-体验验证清单.md b/design/gdd/07-体验验证清单.md index 9f9dd454..23fd6bc9 100644 --- a/design/gdd/07-体验验证清单.md +++ b/design/gdd/07-体验验证清单.md @@ -261,27 +261,6 @@ **后续内容批义务(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 多行第二批(六面读数随投逐项过)** -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v0.1 | 2026-10-09 | 补登:文档正确性审查批改动①——⑬节「迷雾联动信号」行魔法提灯观测点加退役注(「魔法提灯 +2——已裁退役 2026-10-09,拆线批入库后本信号面失效」);本文件当时无版本表,本行系卫生批补登 | -| v0.2 | 2026-10-09 | 补登:文档正确性审查批改动②——⑰节「结论回流」行裸「M-4」改「Beta 阶段(未排期)」(强度体感归 Beta 阶段带判读);同上系卫生批补登 | -| v0.3 | 2026-10-09 | 版本历史表补建——本文件此前无版本表(2026-10-09 审查批呈报在案),本卫生批补建本表并补登上两行 | -| v0.4 | 2026-10-09 | **文档正确性审查批·独立复核(worktree docaudit-2026-10-09)**:①三处「链接语法但目标非路径」伪死链去链接改纯文本(numfix 报告/迭代10通关率读数/T19真人试玩读数——三份读数均已退役,git 历史可查口径不变);②「难度修正批」批次名全替「数值批(Beta 阶段,未排期)」——与 06 现行归属称呼对齐(同批=M4 数值批需求卡片,未排期态不变) | -| v0.5 | 2026-10-10 | 生涯页呈现行柜台名扫改(2026-10-10 天赋树设计会话裁「道具工坊」改名「秘宝匣」):「道具工坊已解锁 X/6 件」改「秘宝匣已解锁 X/6 件」;计数语义(旧六件→新目录)随实装批换代,见 06「天赋树结构重构批」改名连带面 | -| v0.6 | 2026-10-12 | 新增 ㉒ 锻造工坊工作间形态与购买交互目检节(迭代 23 锻造工坊实装批随批登记——V13 人闸观测项:门与形态/购买/解锁双通道/选中与锁死/注入抽查) | -| v0.7 | 2026-10-13 | 新增 ㉓ 敌人表内容修批三观测目检节(迭代 24 卡①随批登记:新招可见性/甲型体感/第一关节奏——登记不阻塞按 2026-10-12 真人检测立规) | -| v0.8 | 2026-10-13 | 新增 ㉔ UI 全局主题批全屏巡检目检节(迭代 25 卡①随批登记:引擎默认灰清零巡检/音量滑轨两段可辨/专项观察点二(滑轨柄抢焦点·滚动条槽可见性)/预盖件无实役注记——登记不阻塞;能力验证半=冒烟 V1-V6) | -| v0.9 | 2026-10-14 | 新增 ㉕ UI 交互与观感批逐屏巡检目检节(迭代 26 卡①随批登记:按钮五态反馈/键盘焦点环/全局 Nearest 巡检(含暗角与渐变白名单判据)/布局均衡(商店居中+营地四栏等高)/诊断钮清零——登记不阻塞;能力验证半=冒烟 V1-V6+T4 结构断言) | -| v1.0 | 2026-10-14 | **qa 收尾批·人闸核销(用户 2026-10-14 回报实机目检全部完成)**:⑮真人半、⑳、㉑、㉒、㉓、㉔、㉕ 七节逐节加「✅ 已核销(2026-10-14)」注记——用户目检回报完成、未呈报问题;iter19 acceptance-package 存活八项与 iter20 五件(行为变化速览节)同批核销;迭代 18 清单 18 项同批核销。注:⑯⑰⑱⑲ 等早期人闸节此前已随各批核销或归 07 独立跟踪,本条不涉及 | -| v1.1 | 2026-10-14 | 新增 ㉖ 代码架构技术债修复批全流程走查目检节(迭代 27 卡①随批登记:全流程观感零变化走查/续玩断点恢复/调试浮窗对局中可开不锁棋盘〔:407-408 事故回归〕/刷新余量显示一致/DS_DEBUG 启动浮窗+两屏角标——登记不阻塞;能力验证半=冒烟 V1-V9+parity 三变体逐位一致对拍五跑全同) | -| v1.2 | 2026-10-15 | **冲突标记清理解(迭代 28 随批)**——本文件 v1.0/v1.1 两行处残留 `<<<<<<<`/`=======`/`>>>>>>>` 合并冲突标记(迭代 27 分支 iter27-techdebt-20261014 合并进 master 时漏解,两侧均有效故全留:qa 收尾批人闸核销行 + ㉖ 目检节登记行与正文节);清理后两行内容照旧,仅版本号顺延。同批新增 ㉗ 启动态菜单目检节(迭代 28 卡①随批登记) | -| v1.3 | 2026-10-15 | 简明技术中文用语规范(用户令):词面修正 35 处(随批→顺带 25、收口→完成/合并进 master 5、台账→状态记录 1、销号→注销 2、报错→返回错误 1、对拍→与基线数据逐项比对 1;均系正文现役文本,版本历史既有行按豁免不动)+失同步修复 0 处 | -| v1.4 | 2026-10-17 | ㉖① 机检承接注记(迭代 29 GDD 反哺点经用户逐条裁决写入):屏壳切换正确性已由 `screen_flow_probe` 机检承接(入轻闸必跑段);该项**保留不注销**——承载机器抓不到的观感半(演出时序/文案/布局逐屏零漂移) | -| v1.5 | 2026-10-17 | 新增 ㉘ 未开格类型徽章批类型微光实机目检节(迭代 30 卡①随批登记:五组一眼可分/微光不遮数字〔环不外溢〕/出圈灭入圈复亮/整屏不脏/群伤暗档 #A61D37 观感〔provisional,读数归样张批复核〕——登记不阻塞;能力验证半=双帧 glow 作用集 2/4/4·outside=0+golden off 帧 0.10–0.14%+探针 case⑰+单测五段 51 检查) | - - ## ㉖ 代码架构技术债修复批——全流程走查(迭代 27 卡①顺带登记;能力验证半=冒烟 V1-V9+parity 三变体逐位一致、与基线数据逐项比对五跑全同) > 场景拆分+会话物化+战斗域重构+账本完成+模态协议内聚后,玩家可见面唯一验收=观感零变化。登记不阻塞(2026-10-12 真人检测立规)。 @@ -314,7 +293,7 @@ ## ㉘ 未开格类型徽章批——类型微光实机目检(迭代 30 卡①顺带登记;能力验证半=双帧 glow 作用集取证 2/4/4·outside=0+golden off 帧 0.10–0.14%+探针 case⑰+单测五段 51 检查) -> 类型微光实装(默认开、组合根布尔可切)后,玩家可见面=棋盘格内五组类型微光。机检只能证明「作用集正确/开帧一致/关帧逐位一致」,真机上「五组分不分得清、看着脏不脏」仍需人眼。**群伤组明度档为 provisional 值**(art-bible 版本历史 v3.15 登记),观感复核归战斗一屏样张批(迭代 30 卡②)——本节第 5 项读数作该复核的输入。登记不阻塞(2026-10-12 真人检测立规)。 +> 类型微光实装(默认开、组合根布尔可切)后,玩家可见面=棋盘格内五组类型微光。机检只能证明「作用集正确/开帧一致/关帧逐位一致」,真机上「五组分不分得清、看着脏不脏」仍需人眼。**群伤组明度档为 provisional 值**(art-bible v3.15 登记,明细见其 git 提交史),观感复核归战斗一屏样张批(迭代 30 卡②)——本节第 5 项读数作该复核的输入。登记不阻塞(2026-10-12 真人检测立规)。 | # | 目检项 | 判据 | |---|---|---| @@ -323,3 +302,19 @@ | 3 | 出圈灭、入圈复亮 | 角色走远出 8 格圈→微光灭;走回→复亮;换图随旧图全重置 | | 4 | 整屏不脏 | 满圈微光同屏时棋盘不显脏、不抢焦点(焦点预算观感的人眼侧) | | 5 | 群伤暗档观感 | 绯红暗档 #A61D37(V=0.65 provisional)与其余四组同屏时的区分度、以及与危险红不误读的观感——读数归样张批复核 | + +--- + +## ㉙ 代码术语刷新与凭证件裁削批——玩家面目检(迭代 31 卡①/卡②;能力验证半=冒烟 1151 项 0 失败+单元 34 套全绿+对拍 120 局真差异 0 行+`feat_vouchers` 39 项全绿+变异六条五红) + +> 卡① 是纯重命名批(行为零变化),卡② 删两件凭证、把完美保险改为专长订阅式。机检能证明词面清零、数值零漂移与验收组全绿,但玩家面「旧词是否真的不见了、贴图是否还在、豁免的实际观感」仍要人眼看。登记不阻塞(2026-10-12 真人检测立规)。 + +| # | 目检项 | 判据 | +|---|---|---| +| 1 | 商店货币显示 | 商店界面货币显示「GP」,不再出现「金币」 | +| 2 | 图例/HUD 封印文案 | 图例与 HUD 显示「封印/封印印记」,不再出现「插旗/旗」;板面单字字形现为「封」 | +| 3 | 结算明细来源 | 结算明细来源显示「封印命中/封印未中」 | +| 4 | 封印印记贴图三关加载 | `seal_mark.png` 在 L1/L2/L3 三关均正常加载,非字形回退态 | +| 5 | 完美保险卡面文案 | 专长卡面文案读作「本场首次封印落空,不计入完美封印判定」,零「雷」字 | +| 6 | 稀有档三选一 | 三选一带不再出现同调电池/完美保险;稀有档仅剩 ap/rap/time_sand 三种 | +| 7 | 豁免后的完美第二份 | 带完美保险专长时,首次标错后清图仍能拿到「完美第二份」(订阅式豁免的实际观感) | diff --git a/design/gdd/08-Alpha版本标准.md b/design/gdd/08-Alpha版本标准.md index 94e8b28e..167186cc 100644 --- a/design/gdd/08-Alpha版本标准.md +++ b/design/gdd/08-Alpha版本标准.md @@ -2,7 +2,7 @@ > **一句话定位**:本文定义这个项目的 **Alpha 版本包含哪些东西**——它是里程碑 M3 的完成标准,也是判断"还差什么"的对照表。 > **本文只列条目,不写内容**:每样东西是什么、规则怎么走,一律归各自的权威文档,本文只给指路链接。想知道某样东西的定义,请点链接,不要在本文里找解释。 -> **状态**:**已定稿(v1.10)**——2026-10-13 用户令定稿(v1.0),同日升版 v1.1(界面美化八条)与 v1.2(敌种池行注摘除);v1.3/v1.4 为迭代 25/26 完成回填;v1.5 简明技术中文用语规范批;v1.6 状态刷新批(锻造工坊在役回填 + 数值统一标定按 2026-10-09 里程碑立规结案归 Beta);v1.7 状态刷新批(立绘方向随 2026-10-14 用户裁结案 + 样张/棋盘观感编入迭代 30 注记 + 贫矿脉屏蔽注记);v1.8 playnote 二轮对照批(状态面板行名随改名批换代 + 瘦身义务入册〔2026-10-16 用户令〕);v1.9 未开格类型微光实装回填(迭代 30 卡①,反哺点回写用户令授权);v1.10 混编遭遇第二批裁挂 Beta(2026-10-18 用户令,未决项六行减五行)。Alpha 的内容范围自此冻结:增删条目一律须经用户裁决,并记入文末版本历史。 +> **状态**:**已定稿(v1.10)**——2026-10-13 用户令定稿,此后十次升版的明细见 git 提交史。Alpha 的内容范围自此冻结:增删条目一律须经用户裁决。 > **成文**:2026-10-13。 ## 本文怎么用 @@ -89,8 +89,8 @@ | 商店配置 | `shop.tres` | 在役 | | 元进度配置 | `meta.tres` | 在役 | | 天赋树节点集 | `meta_tree.tres` | 在役 | -| 锻造工坊路线行族 | `forge.tres` | 在役(定价 provisional 归 M4;表名订正与入库依据见版本历史 v1.6) | -| 混编遭遇行集 | `enemy.tres` | 在役(首批;第二批移挂 Beta,裁决与明细见版本历史 v1.10) | +| 锻造工坊路线行族 | `forge.tres` | 在役(定价 provisional 归 M4;表名订正与入库依据见 git 提交史) | +| 混编遭遇行集 | `enemy.tres` | 在役(首批;第二批移挂 Beta,裁决与明细见 git 提交史) | | 第四关 | —— | 待裁 | --- @@ -101,7 +101,7 @@ |---|---|---| | 主菜单 | —— | 在役 | | 开始覆盖层 | —— | 在役 | -| 营地(天赋树 / 锻造工坊 / 秘宝匣 / 图鉴) | [camp](ux/camp.md) | 在役(锻造柜台占位面板注已解除,见版本历史 v1.6;柜台贴图占位归「五 · 表现」UI 贴图重构批行) | +| 营地(天赋树 / 锻造工坊 / 秘宝匣 / 图鉴) | [camp](ux/camp.md) | 在役(锻造柜台占位面板注已解除;柜台贴图占位归「五 · 表现」UI 贴图重构批行) | | 生涯页 | [生涯](systems/跨局循环/生涯.md) | 在役(期一) | | 关卡地图屏 | [level-map](ux/level-map.md) | 在役 | | 战斗屏 | [battle](ux/battle.md) | 在役 | @@ -142,9 +142,9 @@ |---|---|---| | 像素美术风格与色板 | [美术圣经](../art/art-bible.md) | 在役 | | 棋盘瓦片与格面资源图标 | [美术圣经](../art/art-bible.md) | 在役 | -| 未开格类型微光(五组色相+明度档) | [HUD框架](systems/表现与支撑/HUD框架.md) | 在役(明度档 provisional 值登记见 art-bible 版本历史,复核转正归战斗一屏样张) | +| 未开格类型微光(五组色相+明度档) | [HUD框架](systems/表现与支撑/HUD框架.md) | 在役(明度档 provisional 值登记见 art-bible 的 git 提交史,复核转正归战斗一屏样张) | | 棋盘观感(第二 / 三关亮度与对比度) | [06-待办清单](06-待办清单.md) | 待做(2026-10-16 用户令编入迭代 30,序位③) | -| 立绘清晰度回退评估(是否改用高清图) | [角色设计](../art/character-design.md) | 待做(评估已结——2026-10-14 用户裁维持像素风、升级精细手绘像素、不回退高清图,裁决录=[美术审计-cursor会话存档](../art/美术审计-cursor会话存档-2026-10-14.md) §2.2;余=立绘按新口径重产+大小比例子题用户复核) | +| 立绘清晰度回退评估(是否改用高清图) | [角色设计](../art/character-design.md) | 待做(评估已结——2026-10-14 用户裁维持像素风、升级精细手绘像素、不回退高清图,裁决录=[美术审计-cursor会话存档](../research/美术审计-cursor会话存档-2026-10-14.md) §2.2;余=立绘按新口径重产+大小比例子题用户复核) | | 敌人立绘(全敌种) | [角色设计](../art/character-design.md) | 在役 | | 主角立绘三态 | [角色设计](../art/character-design.md) | 在役 | | 状态图标 | [美术圣经](../art/art-bible.md) | 在役 | @@ -209,23 +209,3 @@ | 5 | 素材升档重产进不进 Alpha | 五 · 表现 | --- - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v0.1 | 2026-10-13 | 首版成文:立 Alpha 版本的内容清单(系统 / 内容量 / 界面 / 工程与质量 / 表现五节 + 不含清单 + 未决项十项)。本文只列条目不写内容,定义一律指路各权威文档 | -| v0.2 | 2026-10-13 | **playnote 五条想法的归属裁定随批**(用户逐条裁):①「关卡节点图展示优化」经用户定性为**重构**(可选节点太少)→ 冒险循环表新增「关卡节点图重构(增加可选节点)」行,标**待做(须先做文档设计,不可直接开发)**,同步登记 06 待办;②「第二 / 三关棋盘亮度对比度」→ 表现表新增「棋盘观感」行,标待做(用户确认标准里已覆盖,此行是把它显式化);③「立绘改回高清图」→ 表现表新增「立绘清晰度回退评估」行,标待裁(与现行像素风定档存在方向冲突,入未决项);④「战斗节点地图类型差异化(更多地图主题)」→ 用户裁**排 Beta**,移入「六 · Alpha 不含」节。未决项十项增为十一项 | -| v0.3 | 2026-10-13 | **五条全部登记 06 待办并标注阶段归属(用户令)**:P1 关卡节点图重构标「Alpha 阶段需完成 · 设计讨论先行」;P2 棋盘观感标「Alpha 阶段需完成 · 开工前过素材轴/UI 轴定性人闸」;P3 第一关遭遇表数值异常标「Alpha 阶段需完成 · 修复方式待裁(甲即时修/乙归 M4/丙先排查)」,本表敌种池行随带待修注;P4 立绘清晰度回退评估标「Alpha 阶段需完成 · 方向待裁」,拆出已兑现的大小比例子问题与未决的回退高清子问题;P5 战斗节点地图类型差异化标「Beta 阶段,Alpha 不做」 | -| v1.0 | 2026-10-13 | **定稿(用户令)**:① **与游戏内容无关的三项移出 Alpha**——音频 / 教学引导(含教学引导面)/ 多语言本地化一律排 Beta,自「一 · 表现与支撑」「三 · 界面」「五 · 表现」三表摘除,移入「六 · Alpha 不含」并单列为一组;判据 = 缺了照样能联调、能通关,属打磨层;② 未决项十一项减为**八项**(删音频 / 教学引导 / 本地化三条,余项重编号);③ 文首加状态行 = **已定稿**,Alpha 内容范围自此冻结,增删须经用户裁决并记版本历史 | -| v1.1 | 2026-10-13 | **界面美化三层诊断入 Alpha 标准(用户令)**:用户同日提出界面美化需求并要求先作现状分析,随后下令「把分析出的三层全部作为独立待办事项登记、且一律列为 Alpha 阶段必须完成」。据此新增八行——「三 · 界面」表两行(UI 全局主题资源、UI 按钮状态矩阵),「五 · 表现」表六行(全局纹理过滤、UI 贴图重构批、UI 字体补完、战斗一屏样张、UI 氛围层与九宫格切片观感修、UI 元素细节修)。八行的登记事实源统一为 [06-待办清单](06-待办清单.md) 同批新增的八条专条;其中「UI 贴图重构批」「UI 字体补完」「战斗一屏样张」三条原先只登记在美术侧的资产清单与素材状态清单里,本次转立本清单以免两处各写一份内容。用户同时指定**先动第一层**,即主题资源 / 按钮状态矩阵 / 全局纹理过滤三项(均属纯工程补齐、不依赖美术素材)。本次改动未触碰既有的未决项八项与「六 · Alpha 不含」清单 | -| v1.2 | 2026-10-13 | **敌种池行注摘除(迭代 24 卡①机械面随批)**:「二 · 内容量」敌种池行的「第一关遭遇表数值待修」注摘除——该异常已随迭代 24 N1 修复((1,2) 降档 hp 22/ac 2,06 对应条已销号),本行回归「在役」净态;条目集合零增删,未决项与「六 · Alpha 不含」零触碰 | -| v1.3 | 2026-10-13 | **UI 全局主题批收口回填(迭代 25 卡①机械面随批)**:「三 · 界面」表「UI 全局主题资源(引擎原生控件接管皮肤)」行 待做→在役(主题资源已入库:game/assets/theme/main_theme.tres 挂 project.godot gui/theme/custom,06 对应条销号);「五 · 表现」表「UI 元素细节修」行状态注记①销号(滑轨两段难辨已随主题批重配=已填充段 BG_ROOT 对暖石 ≈5.5:1,余②③④保留)。「五 · 表现」表余零改动——逐行核对六条 06 指向行中仅「UI 元素细节修」事实变化,其余(棋盘观感/站桩帧动画/素材升档重产/全局纹理过滤/UI 氛围层)本批零触碰;条目集合零增删,未决项与「六 · Alpha 不含」零触碰 | -| v1.4 | 2026-10-14 | **UI 交互与观感批收口回填(迭代 26 卡①机械面随批)**:「三 · 界面」表「UI 按钮状态矩阵」行 待做→在役(五态矩阵补齐);「五 · 表现」表三行——「全局纹理过滤设为邻近采样」待做→在役、「UI 氛围层与九宫格切片观感修」待做→部分在役(光柱半已修,九宫格半未结注明)、「UI 元素细节修」待做(余②③④)→在役(②③④全落地);06 对应四条销号或改写+反哺点四条新条登记(待用户裁决另批落文);条目集合零增删,未决项与「六 · Alpha 不含」零触碰 | -| v1.5 | 2026-10-15 | 简明技术中文用语规范(用户令):文头状态行换代 v1.2→v1.4(v1.3/v1.4 两批漏更);「现状」取值枚举三种改四种(补「部分在役」定义,与「五 · 表现」九宫格切片行既有状态对齐)。条目集合零增删,未决项与「六 · Alpha 不含」零触碰 | -| v1.6 | 2026-10-16 | **状态刷新批(用户令)**:① 「一 · 跨局循环」锻造工坊行 待做→在役(实装批 2026-10-12 入库,06 载明;满级特效按裁 6 留扩展位不影响判定);② 「二 · 内容量」锻造路线行族事实源订正 `meta_forge.tres`→`forge.tres` 并转在役;③ 「三 · 界面」营地行锻造柜台注 占位面板→工作间实形态(目检 07 ㉒ 已核销;柜台贴图占位归表现表贴图批行)——以上三行为 v1.0 定稿时失实残留;④ 「四 · 工程与质量」数值统一标定行撤销(待裁→归「六 · Alpha 不含」,依据=2026-10-09 里程碑立规 M4=Beta 且用户 2026-10-16 重申),未决项八项减为七项重编号;⑤ 文头状态行 v1.4→v1.6(v1.5 漏更)。除④外条目集合零增删 | -| v1.7 | 2026-10-16 | **状态刷新批(用户令)**:① 「五 · 表现」立绘清晰度回退评估行 待裁→待做(方向已裁——2026-10-14 用户裁维持像素风、升级精细手绘像素、不回退高清图,裁决录=美术审计-cursor会话存档 §2.2;余下义务=立绘按新口径重产与大小比例人闸复核),「七 · 未决项」七项减为六项重编号;② 「五 · 表现」战斗一屏样张、棋盘观感两行加编入注记(2026-10-16 用户令编入迭代 30 序位②③,状态维持待做);③ 「一 · 排雷循环」「二 · 内容量」地形变异两行加屏蔽注记(2026-10-16 贫矿脉整图型屏蔽删行,variation.tres 回 region 六行;机制代码保留,重建设计加行即恢复)。除未决项销项外条目集合零增删;连带 06 立绘条子问题二与状态行随裁换代(方向已裁+08 指路改注,权威面 art-bible/character-design 反哺另批) | -| v1.8 | 2026-10-16 | **playnote 二轮对照批(用户令立框架:不需要讨论的写进 08 并同步 06、需要讨论的挂 06 待裁)**:① 「三 · 界面」「暂停层」行改名「状态面板(局内)」(随 2026-10-13 暂停层改名批换代——08 行名漏扫)并在役→部分在役(瘦身义务入册:去跨关解锁内容〔秘宝匣解锁态 12 行概览 / 天赋树已购概览〕、只留本局五件〔带的秘宝 / 已获专长 / 当前属性 / 现有 GP / 钥石总量〕——来源=playnote「状态界面不需要有具体的解锁内容」条;同步登记 06「状态面板瘦身」专条);② playnote 余下增量两条不进本表:成长系数节奏语义两读待澄清→06 专条待裁(数值调优义务 v1.6 起不入版本标准);路径长度统计与递增增幅=关卡节点图重构的设计输入→补进 06 既有专条。条目集合零增删(改名不算增删),未决项与「六 · Alpha 不含」零触碰 | -| v1.9 | 2026-10-17 | **未开格类型微光实装回填(迭代 30 卡①,反哺点回写用户令授权)**:「五 · 表现」表新增「未开格类型微光(五组色相+明度档)」行(事实源 = HUD框架 微光节——2026-10-17 实装入库),状态 = 在役(明度档 provisional 值登记见 art-bible 版本历史,复核转正归战斗一屏样张〔迭代 30 序位②〕);文头状态行 v1.8→v1.9。条目集合 +1 行(回写授权=用户裁),未决项与「六 · Alpha 不含」零触碰 | -| v1.10 | 2026-10-18 | **混编遭遇第二批裁挂 Beta(用户令「挂 beta 吧,不需要再进行讨论了」)**:未决项第 4 行「混编遭遇第二批(Boss 多行)进不进 Alpha」删除(六项减为五项、第 5/6 重编号为 4/5),「二 · 内容量」混编遭遇行集现状注改为「首批;第二批 2026-10-18 用户裁挂 Beta、Alpha 不做」;本批零代码零内容变更——机制面(迭代 17 行集多行批)与首批投放(迭代 18 卡⑤)维持在册,Boss 多行投放与 MC 取证/数值统标一系随 Beta 阶段再议;文头状态行 v1.9→v1.10。其余条目与「六 · Alpha 不含」零触碰 | -| **v1.11** | 2026-10-19 | **系统资源定名传导批(用户裁,承接 42d64ec2/17ef0180)**:奇物池行三分类「资源」→「补给」;「中间资源折算」→「中间系统资源折算」——跨文档引用一律「规范名+指路 01-核心循环「系统资源」节」,定义源单点。机制与数值零改动。 | diff --git a/design/gdd/systems/冒险循环/关卡节点图生成.md b/design/gdd/systems/冒险循环/关卡节点图生成.md index d1a552fb..ecfaae6c 100644 --- a/design/gdd/systems/冒险循环/关卡节点图生成.md +++ b/design/gdd/systems/冒险循环/关卡节点图生成.md @@ -212,16 +212,3 @@ ## 待办 本系统无未决待办(结构随机生成池已落地);后续新增待办统一登记 06-待办清单,本节不再逐条登记。 - -## 版本历史 - -| 版本 | 日期 | 说明 | -|---|---|---| -| v0.1 | 2026-09-27 | **设计草案成文(立项批,用户拍板立项——06 条目「关卡内结构随机生成」随批改状态)**:概念三件套(图模板/模板池/图模板抽签,N=1 回滚档)、抽签时机(开始关卡内逐关抽、主种子派生 `node_map` 流提案)、三级台阶路线(抽签→属性随机→全程序)、MC 测量对账三条款(分层出数/基线可比/实施门=曲线调参批后)、五拍板点、依赖表与验收草案。实施未开工;术语入 registry 词汇表随定稿批执行 | -| v0.2 | 2026-09-27 | **首轮裁决落文批(用户拍板①④⑤+路线确认)**:①第一关参与抽签、仅首次冒险走固定脚本——新增「首次冒险的固定脚本」节(存档域布尔标志「首次冒险已进行」、收束点置位、边界与测量口径,P0/验收/依赖表同步);④首版池规模=每关 5 张(调参表投值);⑤抽签时点确认;用户并裁「骨架不完全固定、多份随机调取」= 台阶一路线确认(台阶节补白话块+教学位随骨架走注记)。②③补证据面待复裁——新增「拍板点证据面」节:A=随机流/增流白话释义+两选项;B=台阶一详解(玩家看到什么/做三件/不做两件/内容形态 15 骨架/遭遇表按编号共用约束)+实施时点三选项(A 立即全上/B 等调参批/C 机制先行骨架随后,荐 C);测量对账实施门条款同步改"随机量扩池守门、机制可先行"口径 | -| v0.3 | 2026-09-27 | **②③终裁落文批(用户两轮复裁)**:②统一用一个流·全面执行——全游戏 rng 架构批先行(评估书 2026-09-27 交付:核心发现=七流系同一主种子的盐值分栏、字面目标现行已满足;待裁决=甲维持分栏/乙物理并流/丙并流+全事件日志),本特性实施排队其后(P0 补前置行、抽签节流形态改随统一流结论);③特性内机制先行骨架随后(池暂 N=1、骨架内容批扩池);证据面 A 补裁决注记。06 新立「全游戏随机流统一架构批」条目(数据配置节) | -| v0.4 | 2026-09-27 | **实施前置解除批(统一随机流批随批——rng 架构批已按 2026-09-27 裁决落地)**:状态行改实施解锁;抽签节流形态定稿 = 统一流扩签新用途标签 `node_map`(标签不参与派生、只进事件日志——并流后派生隔离概念退役);P0 闭环前置行改解除口径。本批只记架构依赖解除,特性实施仍未开工 | -| v0.5 | 2026-09-28 | **台阶一实施落地批(M-3 迭代 5 T5)**:P0 六项全落地——①关卡表逐关行 templates 池(3 关 × 5,模板 0 = 现行图回滚档;L1 单链排列变体〔图形态 Boss 最大编号 vs 遭遇深度 4 两不可全〕/L2L3 网状变体〔战斗编号恒 ∈ 遭遇表行集、商店必经位承袭〕)②node_map 扩签(标签不参与派生只进事件日志,黄金向量零改动)③首次冒险固定脚本(存档唯一新增布尔位「首次冒险已进行」、老档迁移=true、收束点置位幂等、测量夹具恒抽签)④池内全模板加载校验(validate 抽出 + config_db 跨表校验模板感知)⑤抽签确定性/零 scope 强制/N=1 等价/首冒分支 冒烟断言(558→576)⑥MC 分层出数(RUNSUM level_templates)。内容批生成器 = tools/t5_build_templates.py(生成前自校验)。遗留:台阶二/三后置不变;正式侧生存链/带面影响随读数批 | -| v0.6 | 2026-10-01 | **出度上限拍板批(T17 目检用户裁决「节点出度最大为 2」)**:① 加载校验第七检 `fanout_violation`(出度 >2 加载致命);② 规则连带——层宽上限随出度约束调整为 4(2026-09-29「层宽上限 5」废止,数学不相容);③ L2/L3 十张模板全池重建(tools/t17_fanout2_rebuild.py——出度 ≤2/层宽 ≤4/类型序列保持/可达自校验,五骨架换名宽廊双干〔现行〕等);④ 钉固断言 5 处随新图更新(min/max 路径/入口候选/奖励后候选)。**连带义务:MC 读数基线随图结构变化漂移——全旧 MC 锚作废,重锚归下一测量批**(当前只测不判) | -| v0.7 | 2026-10-09 | **文档正确性审查批(用户令——状态记录与证据对齐)**:①状态行里程碑前缀按 2026-10-09 里程碑口径删「M-3」只留「迭代 5」(worktree 名为历史产物名不动);②调参表模板池大小行「内容批落地前现行 1 张」过期表述替换——2026-09-28 台阶一实施批已落地 3 关 × 5。注:版本表内 v0.6(2026-10-01)行排在 v0.5(2026-09-28)行前的既有乱序不动,另行列呈报。 | -| v0.8 | 2026-10-15 | **简明技术中文用语规范批(用户令):词面修正 10 处**——「收口」→「完成」9 处(三级台阶表前置两处 / 测量对账实施门句 / 实施时点选项 A、B 两处 / 依赖表难度曲线与Boss行 / P1、P2 后置表两处 / 验收标准节题)+「对拍」→「与基线数据逐项比对」1 处(测量对账·基线可比条)。机制与数值零改动;文头「原 06 条目已收口移除」系原条目处置记载(对照性文本)按豁免保留 | diff --git a/design/gdd/systems/冒险循环/关卡节点地图.md b/design/gdd/systems/冒险循环/关卡节点地图.md index af486347..fda8d77e 100644 --- a/design/gdd/systems/冒险循环/关卡节点地图.md +++ b/design/gdd/systems/冒险循环/关卡节点地图.md @@ -175,21 +175,3 @@ Boss 兑付(胜利或英雄死亡)触发关卡收束点,此后不再有选 ## 待办 本系统待办条目已统一收编至 [06-待办清单](../../06-待办清单.md),本节不再逐条登记。 - -## 版本历史 - -| 版本 | 日期 | 说明 | -|---|---|---| -| v0.1 | 2026-09-15 | 自归档线索整合为范围草案(旧体系未单独成文) | -| v0.2 | 2026-09-15 | 待拍板"多敌数量的消费面"条目同步教学位掷骰口径(随[难度曲线与Boss](难度曲线与Boss.md)同批修订):删除"教学位节点固定不掷" | -| v1.0 | 2026-09-17 | **定稿**(逐问题拍板,全用户裁决):① 形态重开——用户拍板重开[05-不做清单](../../05-不做清单.md)「路径分支地图后置」裁定,定稿为**分支节点图**(分层节点图,杀戮尖塔 / 哥布林弹珠同构;方块地牢美术观感、逻辑为节点图),P0 图定稿 + 单链特例先行;② 节点类型定稿四类封闭枚举不扩类;③ 行进交互定稿全节点确认 + 兑付后确认、零自动推进;④ 遭遇构成收窄为编排面三条(战斗内部初始化全归战斗小循环),寻址定稿节点编号升级(`node_depth` 语义升级为关卡内唯一节点编号,表键与字段名零改动,单链零漂移);⑤ 节点奖励拍板为功能道具的正式渠道(内容归秘宝内容重定批,切片期直通为合法空态);⑥ 「精英与 Boss 编码位」(同层多遭遇由节点编号消解,不设编码位)与「多敌数量的消费面」(关卡层零消费)两悬案收口,同场多敌种面拆归战斗侧;⑦ 切片行进代码对照的接口漂移清单登记 06 | -| v1.0.1 | 2026-09-17 | **P1 分支节点图内容与实现批落地**(用户拍板任务批——切片代码 / 难度曲线与Boss v0.7 / registry / 06 待办同批):首张分支图 = 切片关卡 2「第二层 · 幽暗地域」行集落地(9 节点网状图:入口 0 → 中间三层 2/3/2 → Boss 8,真实岔路 4 处,奖励点 + 恢复点各 1,战斗节点 6 + Boss);行进器图版推进(`choices_presented` 选路态 + `pick_next_node`——零自动推进,战斗胜利不再自动推进、`continue_after_node` 泛化为兑付确认,06 接口漂移清单 ④⑤⑧ 清偿);图合法性校验落地 `LevelTable.validate`(单链与图同一套算法,L1 零迁移过校验,违规加载致命);节点图选路 UI(选路覆盖层整图自绘——房间方块 + 通道连线 + 当前/候选高亮,占位图形质量;顶栏图形态渲染行进序列 + 候选);首页"关卡 2 试玩"直入口(测试模式,≠ 两关序列生效)。本版本号只记实现批状态,图规则口径零改动 | -| v1.1 | 2026-09-20 | **商店房扩类(GP+商店房批,用户拍板——与冒险结构 / 战斗结算 / 地图战斗资源 / 难度曲线与Boss / registry / 切片同批)**:① 节点封闭枚举四类→五类(+商店房);② 编排规则定稿——每关恰 1、关底 Boss 前一位必经位(哈迪斯式"决战前最后一个补给点"定位);必经位由冒烟断言承载、图合法性六检零新增;③ 兑付定稿——打开商店覆盖层、购买即时生效写统一冒险加算区(与关卡大奖励同一笔,归冒险结构)、离开后兑付确认;商店房不携带战斗行;④ 节点兑付表 / 纪律表 / 依赖表 / P0 闭环 / 验收标准 / P2「事件类节点候选」注记同步 | -| v1.2 | 2026-09-23 | **停点前移批(冒险入口流程倒置修复,用户 2026-09-23 拍板;上位裁决 = 棋盘/战斗舞台 Node2D 迁移批(已执行完毕,git 历史可查),代码实装另批并行)**:① 行进循环改停点前移口径——关卡开始即呈现节点图选路停点(关卡画面 = 选路覆盖层常驻化,入口节点不自动进入,第一次选路就是"出发"),选路确认进节点,兑付确认后返回关卡画面再选路(战后回图);兑付后确认、零自动推进两条纪律语义不变,只改承载位;② 呈现侧口径补进度承载条款——关卡画面本体即节点链进度呈现载体(节点态直接读图:已过暗金 / 当前金 / 候选下一跳通道亮金 / Boss 旗朱描边),不另设进度条组件(战斗屏 A 区进度条随批退役);③ P0 闭环两条、依赖表 HUD 框架行、验收标准「行进自主」条同步。**批内代拍板三项已追认(2026-09-24 用户确认)**:① B/C/D 字母保持不重编;② 28px 纵向空间划归 C/D 底行;③ 关卡画面进度呈现由选路覆盖层节点态承载(登记面见 HUD框架 v0.8) | -| v1.3 | 2026-10-01 | **图合法性第七检(T17 目检用户拍板「节点出度最大为 2」)**:`validate` 新增 `fanout_violation`(单节点出边 >2 加载致命);规则连带层宽上限 4(原 5 与出度约束不相容,废止)——生成侧规则与模板池重建归[关卡节点图生成](关卡节点图生成.md) v0.6 同批 | -| v1.4 | 2026-10-03 | **奖励节点道具渠道退役注记(迭代 11 第①批同调实施批——与 node-reward.md v2.2 / registry 同批)**:奖励节点的秘宝件渠道随停点渠道退役拆除(BONUS_IDS 词表除名 aux_item,池五种;三选一刷新件面新增见 node-reward.md v2.2)——奖励节点兑付面=提升三选一(属性/GP/AP 五种)+刷新,零结构改动(节点类型词表/图合法性六检零新增) | -| v1.5 | 2026-10-03 | **商店房兑付换代注记(迭代 11 第②批 GP 商店房重构批——需求卡片 v1.3 全裁;冒险结构 v0.13 / registry / 难度曲线与Boss 同批)**:商店节点类型词表与编排规则零改动(每关恰 1/Boss 前一位必经位/图合法性六检零新增);兑付面换代 = pool 模式进店抽 3(shop_draw 封闭流)+买 1 全重抽+重抽绑购买+空架合法态,货架候选与库存归冒险结构共享池节;覆盖层呈现面=货架三选一同构卡(legacy 固定三件面随对照模式保留注记) | -| v1.7 | 2026-10-09 | **文档正确性审查批(用户令——状态记录与证据对齐)**:①奖励节点兑付口径全节订正——「池六种含秘宝、加权洗牌、全冒险次数上限」改现行令牌池口径(七种、洗牌不放回抽 3、池耗即上限、未选回池);「道具件满位替换子交互」随秘宝件出池不再触发;「池空直通随共享池退役、牌库恒非空」反转订正——TP0 后池耗即枯竭、空库直通为合法态;「终局=秘宝局外同调件的改写义务仍归同调实施批」订正为已落地(迭代 11 第①批);②P0 闭环与验收「切片期直通合法空态 / 取一件入关卡域库存(随同调实施批退役改写)」过期表述替换为提升三选一共享令牌库口径;③P1 后置「分支节点图内容与实现批」已随 v1.0.1 落地——行移除,正文两处「随第二关内容批(见 P1)」改「已落地」;④不负责表与依赖表「节点奖励的道具内容→秘宝(内容重定批)」改指奇物(提升池构成与账本归冒险结构)。注:版本号 v1.6 系正文商店行已有标签(MC-1 独立刷新批 2026-10-04)的表内让号,该批版本行缺失另行列呈报。 | -| —— | 2026-10-09 | 缺号注记:v1.6 未登记(对应批次=MC-1 商店独立刷新批〔2026-10-04,git ac3cee7 明记「关卡节点地图v1.6换代」〕,登记见正文商店行 v1.6 标签与 v1.7 行让号注记),卫生批仅注记不补写 | -| v1.8 | 2026-10-15 | **简明技术中文用语规范批(用户令):词面修正 1 处**——设计目的首句「若干节点」改「由关卡表配置的一组节点」(「若干」→写明数值出处:节点构成与数量读关卡表行集)。机制与数值零改动 | -| **v1.9** | 2026-10-19 | **系统资源定名传导批(用户裁,承接 42d64ec2/17ef0180)**:「跨战斗生命账本」「共享池账本」「库存账本」等去账字;指路「GP 冒险账本节」→「GP」节、「共享池账本节」→「共享池节」——跨文档引用一律「规范名+指路 01-核心循环「系统资源」节」,定义源单点。机制与数值零改动。 | diff --git a/design/gdd/systems/冒险循环/冒险结构.md b/design/gdd/systems/冒险循环/冒险结构.md index 777f6045..7dae708f 100644 --- a/design/gdd/systems/冒险循环/冒险结构.md +++ b/design/gdd/systems/冒险循环/冒险结构.md @@ -301,31 +301,3 @@ GP(显示名「GP」)是冒险内的一次性属性提升货币:战斗胜 ## 待办 本系统待办条目已统一收编至 [06-待办清单](../../06-待办清单.md),本节不再逐条登记。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v0.1 | 2026-09-15 | 自归档 GDD 压缩改写 | -| v0.2 | 2026-09-15 | 雾格残留清理:第二关"解锁新元素"条目改引用「已从设计中移除的机制」(见不做清单),并明确第二关层名未定稿、随第二关内容批重定。关卡序列与节点模板不变 | -| v0.3 | 2026-09-17 | 代币→钥石统一拍板(用户裁决):大奖励第三件「代币记账 +10」改「钥石入账 +10」——与元进度钥石同一资源(渠道 = 关卡大奖励入账与 Boss 掉落),「代币」措辞退役;调参表字段名、验收标准、依赖表同步。数值与机制不变 | -| v0.4 | 2026-09-17 | 数值纪律收口批:正文与调参表 knob 现行值改指路存根(事实源 data/tables/*.tres 与 registry),3 处失同步修正(示例轨迹改纯符号〔旧 50/50 生命轴示例作废〕、大奖励 +10/+10 改读 adventure_table 行值并删换算率数字锚、调参表 30/10/10 三格改读 level.tres / adventure_table) | -| v0.5 | 2026-09-20 | **GP+商店房批(用户拍板——与关卡节点地图 v1.1 / 战斗结算 v0.23 / 地图战斗资源 v0.15 / 难度曲线与Boss v0.18 / registry / 切片同批)**:① 新增「GP 冒险账本」节——钱包三收口(战斗完成统一入账 / 商店购买出账 / 冒险收束清零)+ 战斗内缓冲隔离语义(格面兑付入缓冲、战斗完成统一到账、战斗域零钱包状态);② 统一冒险加算区成文——商店购买与关卡大奖励上限提升同一本账(三轴 {攻击, 生命上限, 护甲等级},经覆盖值通道生效;购血 = 上限与当前生命同步 +Δ);③ GP 掉落掷定消费 gp_drop 封闭随机流(主种子派生)登记进主种子节与调参表;④ GP 不入存档、不入冒险摘要;范围表 / 大奖励表 / 依赖表 / 验收标准同步。数值全 provisional-pending-曲线调参批,行值读 shop.tres | -| v0.6 | 2026-09-21 | **冒险结构实现批落地登记(切片 AdventureRunner + LevelRunner 账本外置 + AdventureTable 建表——与切片代码 / registry / 03 / 06 / roadmap 同批)**:本批只记实现批状态,正文规则口径零改动。落地面 = 三关正式序列生效(首页「开始冒险」)、接口契约四件套正式侧承载(开始关卡 start_level_external / 战斗结果上报共享账本直写 / 治疗封顶回报 apply_rest / 关卡结束 level_finished)、生命账本与 GP 冒险账本上交冒险结构层、大奖励非末关恰兑付一次(末关钥石照记)、冒险摘要五件事产出、主种子恰一次注入(registry rng_service new_adventure 调用权同批登记)、结算受理只算一次;06 待办「两关序列未生效」「切片行进代码与定稿的接口漂移」「冒险表未建表」三条随批解决移除。**规划书冲突按代码为准登记两处**:①大奖励 `_pending_next_level` 置位先于 emit(信号同步派发——处理器内立即确认需标记已就位);②放弃受理补 state=running 守卫(契约 7 结算受理只算一次的 abandoned 侧对齐) | -| v0.7 | 2026-09-21 | **放弃入口界面呈现批(用户拍板「放弃接口也要有」——台账 119,推翻本文原「MVP 无界面入口、呈现后置」条款)**:① 放弃入口挂[关卡节点地图](关卡节点地图.md)选路覆盖层(选路停点 = 天然非战斗期;战斗中拒绝转为防御兜底分支——入口在战斗期不可达);② 入口只在冒险模式开放,单关测试直入口没有可放弃的冒险对象;③ 正文改现行口径(放弃节 / 验收标准放弃条),P1 后置表「放弃入口的界面呈现」随落地移除(同表「两关序列生效」系 v0.6 已落地漏收口,顺手同口径移除);④ 验收闸 = ui_probe 三断言(默认隐藏 / 冒险模式可见 / 首战中按下被拒 state 保持 running)+ 冒烟既有放弃两态 API 断言 | -| v0.8 | 2026-09-23 | **单关测试直入口退役(用户拍板——唯一试玩入口 = 完整三关冒险)**:正文改现行口径两处(放弃节「按钮只在冒险模式开放」的理由从「单关直入口无冒险对象」改为「选路覆盖层只在冒险模式出现」;验收标准放弃条同步去单关直入口从句)——放弃语义对象(整局冒险)与拒绝分支零改动。版本历史行(v0.7)按文档纪律不回改 | -| v0.9 | 2026-09-23 | **停点前移批流程口径对齐(用户 2026-09-23 拍板冒险入口流程倒置修复——与 HUD框架 / 关卡节点地图 / battle.md 同批;上位裁决 = 棋盘/战斗舞台 Node2D 迁移批)**:P0 闭环「开始关卡」条改新流程口径——关卡节点地图加载节点图后停在入口选路停点(关卡画面,选路覆盖层常驻形态),行进自玩家首次选路开始;通读复核其余章节——「通关自动进下一关」属关卡序列层语义(进入下一关后仍出图选路,零矛盾)、接口契约四件套、收束点先清库后宣布、放弃入口(选路停点 = 天然非战斗期)等既有裁决零改动。**批内代拍板三项已追认(2026-09-24 用户确认)**(字母不重编 / 28px 归 C/D 底行 / 进度呈现由选路覆盖层节点态承载)不落本文修订面,登记见 HUD框架 v0.8 | -| v0.10 | 2026-09-27 | **统一随机流批口径对齐(2026-09-27 裁决——rng 架构批随批)**:主种子节「可复现域 = 主种子 + 各随机流计数器」改「主种子 + 全局取数计数器」(语义权威指数据配置);本文规则面零改动——主种子恰一次注入、重开即全新一轮、摘要五件事均不变。代码实证与七消费点迁移见数据配置 v0.5 | -| v0.11 | 2026-09-29 | **冒险断点批(迭代 8 卡①③——中断可续玩/退出即结算两口径分离)**:核心规则新增「冒险断点」节(停点粒度/七字段拍板面+附随件/中断退出两口径/续玩语义/测量面静默);依赖表存档序列化行补断点域 owner 登记;验收标准 GP 不留痕条补断点域豁免口径。实现落点 = AdventureRunner 快照/清除/续玩 + SaveManager breakpoint 域 + rng restore_adventure | -| v0.12 | 2026-10-01 | **关卡大奖励重构批(迭代 10——用户 2026-09-30 拍板案丙 + P-A~P-E 全裁毕;冒险表扩列 / meta.tres 重锚 / registry / 行动经济 / 元进度 / 01-核心循环 / 03-内容规模 / 难度曲线与Boss / 关卡节点地图 / 06 同批落文)**:①大奖励「固定三件套」退役改两层兑付——非末关通关 = 部分回血(clear_heal_pct 20 provisional)+ 提升三选一(池六种:攻击/生命上限/护甲/GP 袋/秘宝/行动点件;加权洗牌不放回 E-S weight-key 消费 reward_pick 封闭流;属性件上限各 3、AP 件上限 2,达上限先剔牌库);②统一冒险加算区三轴扩四轴 +行动点(AP 件 = 每场战斗开始首轮基线 +1);③钥石退役出大奖励改 Boss/精英击杀逐杀掉落(boss_keystone 重锚首杀 3/复杀 2,末关照常入账,精英掉 1 预留);④秘宝件受同调位约束(过渡键 transitional_sync_slots=1 provisional,现行事实源 = 同调实施批谓词表;超位替换交互 N+1 选 N、战斗内渠道沉没不入);⑤断点附随件扩奖励选择态 + 件获取次数计数;⑥选择停点零自动推进/可中断。渲染层验证冻结(用户 2026-10-01 提前开工拍板——不合入 master、目检待批),目检清单随批交付 | -| v0.13 | 2026-10-03 | **GP 商店房重构批(迭代 11 第②批——需求卡片 v1.3 全裁 P1 共享池/P1-a/P1-b 双甲/P2 甲/P3 甲/P4 ceil/P5 甲;06「GP 商店房重构」条 2026-10-02 用户裁决取代 09-20 无刷新裁决)**:①GP 冒险账本节商店购买行换代——价格公式 = ceil(基价 × b^(关序−1) × A^(本次进店已购次数))(A/b provisional 1.8/1.1;legacy 旧式随对照模式保留注记);②新增「共享池账本」段——商店货架 = 池∖{GP 袋}∖{秘宝件} 四种,库存=上限即库存全冒险一次性,两渠道同一账本(买一件=奖励面少一件),池空硬闸+空架合法态;③shop_draw 扩签登记;④统一冒险加算区段——pool 模式买上限不回血(池件=奖励件本体)、AP 件累加源并商店;⑤断点附随件扩商店货架态(shop_shelf/shop_visit_buys,P2 甲;确定性重放承载注记);⑥调参表 GP 经济参数行随表换代。实现=AdventureRunner/LevelRunner 池模式(缺省 legacy 对照承载,真实入口投 pool) | -| v0.14 | 2026-10-03 | **令牌池落地批(迭代 12 TP0——node-reward v2.2 追认 b 实施批)**:①提升池改**固定配额令牌池**——普通 70/稀有 25/罕见 3=98 张〔罕见档原列「道具件 2」随 aux_item 池种退役〔迭代 11 第①批 T7,落地晚于追认 b〕收窄,池总量 100→98——台账自决披露项〕;②抽取机制换代——Fisher-Yates 不放回抽 3 同 kind 去重每 kind 至多一枚(取代 E-S 加权洗牌),选中踢池未选回池、池耗即枯竭、**种类次数上限退役**;③恢复件新入池(rare 档 +6 当即回血封顶生效上限)+ 数值对(小GP 20/大GP 50 等);④MC 策略 316-f 落地(autoplay 1 级最稀有/2 级最左);⑤共享池账本段换代——库存=剩余令牌数,货架=令牌级抽签(价格公式 tier-blind 维持批②裁定),消费=AdventureRunner._bonus_deck 单点;⑥断点附随件扩令牌池余库(bonus_deck 逐枚还原;旧断点缺键=满库重建防御口径单版本周期);⑦现行基线锚换代=runsum_m4iter12_tp0_n20_20261003(normal 档配对读数同带 0/5/0) | -| v0.16 | 2026-10-06 | **三选一刷新对齐商店批(用户令——「三选一对齐商店,得有刷新」;机制现行事实源=秘宝.md 三选一刷新双源节同批落文)**:免费双源(刷新件 X/冒险池 Y)用尽后 GP 付费刷新——同 shop_refresh_* 两旋钮(curio_refresh_gp_cost 单点调参)、扣同一 GP 冒险账本(LevelRunner.spend_gp 新单口)、重抽同 reward_pick 共享池抽签;付费刷计数每停点清零;呈现=CurioPickOverlay.set_refresh_display 与商店 set_refresh_display 同构(钮常驻选择态、两源皆穷禁用不隐藏、角标=免费余量、价签行示 GP 价);通关停点刷新重发载荷带 refreshed 标直落选择面(不再重开胜利总结面)。店内凭证专长三选一暂不挂刷新面(维持现状)。单测=tests/unit/core/curio_refresh_paid_test.gd | -| v0.17 | 2026-10-07 | **生命周期轴裁决随批(框架现行事实源=核心循环「生命周期轴」节同批落文)**:GP 冒险账本节补独立资源口径——GP 与钥石=两条平行独立资源不立统一上位概念(钥石归元进度同批落文);各层对 GP 的兑付=一次性转换入账(转换源结算即消尽、钱包长存,类A→类C 转换关系非横跨多层);既有账本语义零改动 | -| v0.18 | 2026-10-09 | **文档正确性审查批(用户令——状态记录与证据对齐)**:①关卡序列节「第二关生效有前提、未落地前单关运行」过期句替换——三关序列 2026-09-21 起均已生效;②共享池账本货架候选订正——pool_shelf 六行 = 池∖{GP 袋, 刷新件}∪{凭证}(凭证与回复随迭代15② 入架),「∖{GP 袋} 四种」过期;③大奖励表提升三选一「加权抽 3、另 2 件丢弃」改令牌池口径(洗牌不放回抽 3、未选回池);④提升池表六种→七种——恢复件配额 稀有 5→3、补刷新件行(稀有 2/+1,迭代15② 入池);⑤秘宝件同调位读数源改谓词表实时求值(transitional_sync_slots 已退役、切换义务清偿,调参表过渡键行同改);⑥断点附随件「秘宝库存」重复短语去重;⑦P2 冒险长度扩展行「MVP 两关」改「现行三关」;⑧调参表关卡行集行「第一关现行、第二关随扩展批」改「三关现行(templates 池 3×5)」、三选一件值(其余)行 bonus_* 旧键改 curio_value_* 列族、三选一权重行整体标退役(E-S 随 TP0 换代)、件次数上限行删「GP/道具件无次数上限」残句;⑨验收三条订正——抽签封闭条「AP 用尽 2 次/属性件达 3 次先剔」改「令牌耗尽快即枯竭」、同调位条「过渡键」改「谓词表实时求值」、加算区同账条购买生命上限改 pool 模式语义(只加上限不回当前生命);⑩不负责表「节点奖励内容与库存语义→地图战斗资源」改「节点奖励件的分类与凭证定义→奇物」(提升池构成与库存归本文——两文档互指矛盾收口)。 | -| —— | 2026-10-09 | 缺号注记:v0.15 未登记(对应批次=MC-1 商店独立刷新机制批〔2026-10-04,git ac3cee7 提交信息明记「冒险结构v0.15回写」、版本行未入表〕,登记见正文「共享池库存」节 v0.15 标签),卫生批仅注记不补写 | -| v0.19 | 2026-10-09 | 文档正确性审查批·独立复核(worktree docaudit-2026-10-09):「秘宝件受同调位约束」段与验收「同调位约束」条补现状注——道具件已随迭代 11 第①批 T7 出池,三渠道零投放、替换交互无现役触发面(与关卡节点地图 v1.7「满位替换子交互随之不再触发」口径对齐),约束保留作渠道恢复契约;段内「(06 在册)」悬空指针改「原 06 条目已随收口移除」 | -| v0.20 | 2026-10-12 | **迭代 20 反哺落文批·关卡大奖励换代(用户裁②——通关兑付=专长三选一按档配比加权抽取+回血,2026-10-11 迭代 20 Q1 已裁形态对齐)**:①章节标题/概览行/三层奖励框架表「提升三选一」→「专长三选一」(通关渠道=专长独占兼唯一直接渠道,未选候选不落袋);②提升池七种×档位表与洗牌抽取段整体退役——池机制事实源移交[奇物]「池结构与抽取」节(案D 四级 104/曝光槽 2+1/令牌语义/概率与 cap 解耦),本节压缩为结构层段(共享池冒险级单例/库存=剩余令牌数/reward_pick 封闭流/MC 策略 316-f/断点余库还原);③本文件「提升三选一」指通关兑付处换代「专长三选一」、指奖励节点选择处换代「奖励节点三选一」(生命周期图/加算区同账段/共享池账本段/关卡序列图/验收步骤 6/结构冻结——版本历史行引述豁免);④不负责表换代(池结构与抽取机制→奇物;共享池库存账本留本文);⑤~~秘宝件~~出池删除线行随提升池表退役(渠道恢复契约口径由「秘宝件受同调位约束」段承载不变);⑥刷新句「提升三选一免费双源」中性化「三选一免费双源」 | -| v0.21 | 2026-10-13 | **Y 断点随存缺陷修批(06「天赋树实装批登记欠账三条」③——用户令单独开修)**:「冒险断点」节附随件清单扩 **Y 刷新池余量**(attune_refresh_y——续玩优先读断点、不自参数面整额重注入,堵「用完 Y 退菜单再续玩满血复活」可利用漏洞;旧断点缺键回退参数面=旧档行为零变化);快照时点不变(停点整体覆写已覆盖 Y 消耗后状态)。断点域登记与版本口径归[存档序列化](../表现与支撑/存档序列化.md) v1.8(v7 域后扩列不升版) | -| v0.22 | 2026-10-15 | **简明技术中文用语规范批(用户令):词面修正 9 处**——「若干」→「三关(关数读关卡表)」1 处(冒险计量单位定义句);「报错」→「返回错误」1 处(加关纪律运行期拦截句);「收口」→「收支口」3 处(GP 冒险账本钱包句、表头、验收 GP 账本封闭条——名词义,对齐本文件生命账本「收支口」既有用词)+→「完成」1 处(同调位约束段「统一收口」);「不得」→「禁止」2 处(共享池账本两渠道句、主种子节生成新种子句);「在飞」→「执行期间」1 处(放弃受理句·战斗域单事务括注)。机制与数值零改动;不负责表 HUD 行「随 spec 命名收口退役」与同调位段「原 06 条目已随收口移除」系更名/条目处置记载(对照性文本)按豁免保留 | -| **v0.23** | 2026-10-19 | **系统资源定名传导批(用户裁,承接 42d64ec2/17ef0180)**:「生命账本/GP 冒险账本」表行与节标题 →「生命/GP」;GP 节标题改「### GP:…」,全库指路同步;生命/GP 两笔的系统资源表述换代(机制零改动)——跨文档引用一律「规范名+指路 01-核心循环「系统资源」节」,定义源单点。机制与数值零改动。 | diff --git a/design/gdd/systems/冒险循环/奇物.md b/design/gdd/systems/冒险循环/奇物.md index 996053c4..19f0dea7 100644 --- a/design/gdd/systems/冒险循环/奇物.md +++ b/design/gdd/systems/冒险循环/奇物.md @@ -104,7 +104,7 @@ 惊巢反制=退役进素材库(不迁入)。 -**资源类迁出件(2026-10-18 用户裁)**:完美保险自资源类迁入专长——理由:它给的是**规则豁免**而非可调动的余量(§1.1 判据「给规则的是专长」),效果=本场首次封印落空不计入完美封印判定。旧「资源类成员」归类系 2026-10-08 框架批写入、无用户裁断支撑,随本次改判注销。专长行的触发器规格与代码实现(含效果引擎词表扩签)归独立批,见 06 登记。 +**资源类迁出件(2026-10-18 用户裁)**:完美保险自资源类迁入专长——理由:它给的是**规则豁免**而非可调动的余量(§1.1 判据「给规则的是专长」),效果=本场首次封印落空不计入完美封印判定。旧「资源类成员」归类系 2026-10-08 框架批写入、无用户裁断支撑,随本次改判注销。专长行已于迭代 31 卡② 落表(合并 `3e076e22`):`feats.tres` 单行 `when counter(insurance_used) lt 1` 承载「本场首次」,效果类型 `forgive_seal_miss` 随引擎扩签;配额按净删重裁(rare 9→7、总量 104→102)。 ### 扩签登记(迭代 20 实装已承载——2026-10-12 追认④写入文档换代) @@ -118,7 +118,7 @@ ## 资源(重设计·基础框架 v1) -> 本节是补给分类的现行事实源。补给成员 = **转换源**:不是系统资源本身,是「到手即结算成一笔系统数值的凭证」——凭证加完消尽,被写入的系统资源各有自己的寿命档位(五档轴见[核心循环](../../01-核心循环.md)「生命周期轴」节)。判据句与归类方法见 §1.3/§1.4。**新凭证已随迭代 20 专长实装批落表(2026-10-11);2026-10-18 用户裁削两件后,现行成员=新 3+留任 2(同调电池删除、完美保险归专长——见版本历史 v3.18)。** +> 本节是补给分类的现行事实源。补给成员 = **转换源**:不是系统资源本身,是「到手即结算成一笔系统数值的凭证」——凭证加完消尽,被写入的系统资源各有自己的寿命档位(五档轴见[核心循环](../../01-核心循环.md)「生命周期轴」节)。判据句与归类方法见 §1.3/§1.4。**新凭证已随迭代 20 专长实装批落表(2026-10-11);2026-10-18 用户裁削两件后,现行成员=新 3+留任 2(同调电池删除、完美保险归专长——见 git 提交史 v3.18)。** ### 凭证件表(新 3 + 留任 2;代号制命名归用户;稀有度档、配额与面值数值归调参批) @@ -231,6 +231,7 @@ **补给类内部的异质性(统一表述)**:凭证全部即时消尽——不存在「持有凭证」这种状态;异质性不在凭证上,而在**被写入的系统资源的寿命**上:GP 钱包 / 生命 / 刷新存量 = 冒险级,储备池 = 节点级,时沙暂记 = 至下一战首轮兑付(系统资源清单对齐「凭证件表(新 3+留任 2)」节;「AP 上限」已归属性值提升轴,见 1.2)。 - 原在册的「秘宝充能」「完美资格」两笔随 2026-10-18 两件裁削注销——`attune_charges` 账本本身仍为秘宝基础设施保留(迭代 11,主动件充能每冒险重置),本次只删奇物侧写它的入口。 +- 完美资格的豁免走**订阅式自有累加账**:授予段在 `seal_missed` 命中时累加豁免数,判定取「误标总数 − 豁免数」得有效数;**不改写误标账本身、不拦截事件**(迭代 31 卡② 契约 2/3)。 - 登记此节防止把凭证当成会持续生效的东西去结算。 #### 1.4 分类判据 @@ -461,43 +462,3 @@ ## 待办 全部待办单点登记于 [06-待办清单](../../06-待办清单.md)(BD 分层条目、命名统一后续条目),本节不复制。 - -## 版本历史 - -| 版本 | 日期 | 变更 | -|---|---|---| -| v1.0 | 2026-10-05 | 以「特性」为名首次为本概念立定义文档。此前它按内部分类被叫成三个名字(规则类称「流派件」、属性类称「数值件」、界面称「本关强化」),现收敛为一个对象下的分类;性质定为「角色自身得到提升」而非「获得物品」。 | -| v1.1 | 2026-10-05 | 分类重构:两类由「规则改写型 / 属性加成型」改为「属性提升 / 专长」。 | -| v1.2 | 2026-10-05 | 专长渠道落定:关底 Boss 击败后兑付,不新增节点类型;罕见旁路明确为"普通奖励里的专长 N 选一"。 | -| **v2.0** | 2026-10-05 | **顶层改名为「奖励」并重构为两根轴**。改名动因:筐里既装"角色自身的变化"也装金币这类一次性兑付物,用"自身提升 vs 持有物"已切不开,边界判据改由生命周期承担——**当局清零的是奖励,跨局带走的是魔法道具**。分类由两类改为**三个枚举**(当时的写法是「机制类 / 属性提升类 / 资源与机会类」,v2.7 才定名为专长 / 属性值提升 / 资源):专长 / 属性值提升(生命·AC·攻击)/ 资源(行动点上限·刷新次数·金币·回复)。新增第 2 节分类 × 渠道交叉开关表,明确两根轴互不决定;金币与回复不再被当作"该移出去的脏东西",而是安置在资源里,同时把它们的即时兑付性质显式登记为类内异质性。 | -| v2.1 | 2026-10-05 | **交叉表收口(用户拍板)**:Boss 渠道**只出专长**,属性值提升与资源在此均不出现——三条渠道的形状定为"一块独占 + 两块并行",专长靠打赢、其余靠抽取与购买。Boss 兑付明确为**终局前**的 Boss,终局 Boss 不给(无后续关卡可消费)。新增 2.4 节**「计价物不自售」规则**:金币不进商店既不拆分类也不开特例,而是写成两轴交叉处的一条约束——商店的计价物是金币,故金币不进商店;按"能不能进商店"反推分类等于用渠道轴去切分类轴,两根轴会缠回去。 | -| v2.2 | 2026-10-05 | **凭证形态 + 约束分层 + 默认原则**。① 用户明确:奖励节点与商店不直接给专长,而是给一个**「专长获取」道具**,拿到后开专长三选一——交叉表专长在两渠道由"不出现"改为"**凭证形式**";凭证归专长(给的是一件以前不会的事,只是把选择推迟),理由是防止用钱定点买构筑。② 用户质疑「计价物不自售」本质是特判——**承认成立**:它确实是在分类白名单之外加的一道过滤,与死特判的区别在于把"枚举例外"变成"**可计算谓词**"(新渠道/新奖励自动判定)。2.4 改写为**三层约束**(分类白名单 / 可计算谓词 / 显式例外清单),并给出判断标准:结构性原因可写成谓词,设计性原因只能进清单且每条须写理由;三个方案(单独分类 / 谓词 / 死特判)的代价并列摆出,不藏折中。③ 用户定**默认原则**:除已登记的特殊规则外,分类内的东西都要在池子里——据此**回复应在商店内**,现行 shop.tres 货架缺它是"现状与表格不对齐",须在实施批补上。 ⟵〔更正注记 2026-10-19:本行①的「凭证归专长」归类记载无用户裁断记录,系写文档时的误记,已在 v3.19 改写为渠道兑付形态表述;机制部分不受影响〕 | -| v2.3 | 2026-10-05 | **凭证机制细化 + 默认原则表述修正**。① 凭证**拿到即开、不可囤积**(用户定)——不进持有集,防止玩家把关键决策无限推迟,也防持有物语义从后门回来。② 凭证的"罕见"**只在概率不在价格**,一局限购一次,并加**计步保底**:连续 5 次三选一展示未出现则第 6 次必出;计数跨奖励节点与商店共享、**刷新后的重新展示计入**(用户明定含刷新),限购用满后保底不再触发。③ **修正 v2.2 的误读**:把"分类在某渠道不出现"当成需要理由的缺格是错的——渠道出哪些分类是渠道轴的定位(Boss 只出专长),不是例外;默认原则只管**分类内部**的成员齐不齐。④ 专长总量与档位阈值的匹配按用户决定**延后**(待第四关内容批后实测复裁),另单独登记 charge 标签仅 3 件、永远达不到档二的数据缺陷。 | -| **v2.4** | 2026-10-05 | **顶层由「奖励」改名为「奇物」(Wondrous Item)**。用户否决了「奖励」「收益」与全部自造词(进益/造化/机缘/遇获),要求回到 DND/西幻既有名词。定名依据:DMG 魔法物品九分类中的 Wondrous Item,官方中文译名即「奇物」,是专装不好归类但有奇效之物的兜底杂类——正好对应本概念下三个互不相干的分类。此前考虑过的 Treasure(宝物)因偏财物、装不下专长而落选;roguelike 品类惯例 Relic 因用户否决遗物落选。**代码词族定为 `curio_*`、`ADVENTURE_CURIO`**(`reward_*` 已被 `reward_pick` / `reward_node` / `reward_preview` 占用,不能对齐)。 | -| **v2.5** | 2026-10-05 | **第三类定名「资源」**(用户拍板,父节点定为「奇物」后解锁)。定名依据:行动点上限 / 刷新次数 / 金币 / 回复都是可以调动、可以花掉的余量。「资源」偏泛(能力资源、财富资源都叫资源),因此在 1.5 写死判据句——**给的是可消耗或可重掷的余量,不是角色基础属性的永久抬升**,这一句是把泛用词收回本类定义的唯一凭据。**回复归属同时定案:留在资源,不独立成第四类**——它与金币同为即时兑付、判据同源,拆出去第四类只剩两项且与本类判据重合。附带修复:1.5 段末与「### 2. 渠道轴」标题粘连(缺换行)。 | ⟵〔更正注记 2026-10-19:本行定名的第三类「资源」已于 v3.20 改名「补给」——原类名与「系统资源」同词(用户 2026-10-19 裁),本类定义以现行 §1.3 为准〕 | -| **v2.6** | 2026-10-05 | **修正核心循环位置图:奇物不是打一场战斗给一份**(用户纠错)。原图把"关内 排雷推理 → 战斗结算 → 通关 → 得到一份奇物"画成一条链,读起来就是每场战斗通关都给一份——**错在把关内普通战斗的通关与关底 Boss 的通关混为一谈**。按 [冒险结构](冒险结构.md) 的定义,**通关一关 = 该关关底 Boss 被击杀**,所以"击败 Boss"与"通过这一关"是同一个时刻、不是一条链上的两步。改法:① 图改为分支结构(普通战斗节点→不给、往下走;关底 Boss 击败→专长三选一+通关回血);② **一关只兑付一次**写成显式口径;③ 2.1 节渠道名由"终局前 Boss 击败后"改为"关底 Boss 击败(即通过这一关)",并写明触发点就是关卡推进本身那一刻;④ 文首引言加"兑付频率"条,交叉表渠道名与 registry 同步;⑤ 连带修掉一处污染——节点类型封闭枚举五种里的"奖励"曾被 v2.4 批量替换误伤成"奇物"(节点类型里没有奇物这一类),已复原。 | -| **v2.7** | 2026-10-05 | **三个子节点正式定名(用户拍板:去「类」字后缀)**。此前三个分类只有带后缀的描述(机制类 / 属性提升类 / 资源类),是文档层临时叫法,既非专名也非玩家可读的词。现定专名:**专长**(Feat)/ **属性值提升**(ASI)/ **资源**。定名依据:前两个是 DND 规则书官方中文,且与用户 v1.1 原话一致(当时原话就是「属性提升(ASI)」与「专长」,v1.1 写入文档时被加了「类」字后缀而退化成描述)。「机制类」这个叫法本身还有硬伤——它的 28 个成员里没有一件是"机制",实际是"在结算挂点上改一条规则",读者看到会误解为游戏机制。 -| **新增 1.6 节「三层结构与命名」**(用户 2026-10-05 拍板做玩家可见的三层):奇物(总称)/三个分类/具体单件。明确**命名是本节规矩、呈现是另一件事**——分类名在卡面不出现(归 battle.md / node-reward.md 裁决),但帮百科、成就名、效果描述的指代三处都要用,所以它必须是玩家读一遍就懂的正式名词。连带:修掉批量替换撞出的五处「专长(专长)」类自撞、v2.0 历史行内的自撞并标注当时的旧称、registry 的「资源(命名待定)」过期标注。 -| **v2.8** | 2026-10-06 | **效果行为数据驱动换代(内容数据驱动扩展批)**:专长的效果声明从「挂点+效果字典」换为「订阅行」——每件声明**订阅哪个事件(on)/ 什么条件(when)/ 什么效果(do)**,由效果引擎统一解释执行;旧挂点枚举消亡(事件名+效果类型取代)。配套事实:效果引擎 `game/core/effect_engine.gd`(事件 16 / 效果类型 24 / 条件事实 9 / 算子封闭词表);专长行 `feats.tres` 27 件全量迁移,秘宝被动六件同批订阅化;行为与迁移前逐位一致(MC 同种子 40 局逐位逐项比对实证)。 -| **v2.9** | 2026-10-07 | **专长体系推倒重设计裁(用户裁——道具三层重设计·奇物层)**:专长分类的**流派标签(archetype)与档位机制(集件质变)框架级作废**——用户判流派式设计「烂到极点」,且流派标签从未被认可为呈现面概念(命名铁律:流派名禁上玩家可见面,06「内部分类禁写入玩家可见面」条升格);现行 27 件全数待重设,重设计主权归用户,灵感原材料归调研批(design/research 两份 2026-10-07 调研);审查「六流派档位兑付位立项」方向随档位作废注销。专长=机制改写件的分类定位、凭证/渠道机制、属性值提升与资源两分类不受影响。新增准入校验(重设计适用):**代价与收益须同账可核算**——「纯代价件」禁止出生(深挖钻头/整备军备教训);头部加冻结遗留态横幅。 | -| **v3.0** | 2026-10-07 | **专长基础框架落地批(用户终审认同——道具三层重设计·奇物层)**:新增「专长(重设计·基础框架 v1)」节=新现行事实源——设计原则五条(触发器句式/事件族组织不上卡面/准入校验同账可核算/信息红线/防兑换环)+基础件表 18 件(开格系6/插旗系3/踩雷系3/节奏系3/战斗系3+契约尖点1;代号制命名归用户)+扩签登记(新事实候选6+停手挂点+清图事件暂缓)+老27件处置(随实装批整体替换、仅作素材库不默认继承);横幅由「推倒重设计中」翻转「基础框架已立」;数值归调参批、实装归重设计实装批。 | -| **v3.1** | 2026-10-07 | **档位名与 rarity 语义约束顺带(现行事实源=[核心循环](../../01-核心循环.md)「档位与获取规则」节 v1.5 同批写入文档)**:稀有度四级采用**普通/优秀/稀有/传说**——本层旧三档名映射=普通→普通、稀有→优秀、罕见→稀有,第四级「传说」=新增头奖位(正文档名扫改归奇物批次);**专长 rarity 语义约束落为文档约束**——Boss 三选一候选按档配比或加权抽取(双脱钩修复:此前 rarity 不影响抽选也不稳代表幅度;配比数值归调参批,MC「最稀有优先」策略的读数偏颇随实装一并校正);「获取概率提升不动保底」护栏同批。 | -| **v3.2** | 2026-10-07 | **资源分类基础框架落地批(五件新凭证用户裁准——道具三层重设计·奇物层)**:新增「资源(重设计·基础框架 v1)」节=新现行事实源——定义句重写为**转换源**(成员=到手即结算成独立资源/系统数值的凭证,加完消尽,账各有寿命档)+凭证件表新 5 留任 2(刷新券/储备金袋RAP/同调电池/时沙/完美保险+小金币袋/应急口粮;代号制命名归用户,稀有度档配额面值归调参批)+上架原则(默认原则全渠道可出);§1.3 判据句与异质性节随迁重写(凭证全部即时消尽,异质性=账的寿命不在凭证上);池子档位形态(各档装什么)待用户裁后顺带 | ⟵〔更正注记 2026-10-19:①本行「五件新凭证用户裁准」系失实记载——当日用户所裁为池结构案D,未作此归类裁定;②本行「资源分类」已于 v3.20 改名「补给分类」〕 | -| **v3.3** | 2026-10-07 | **池结构与抽取写入文档(用户裁案D——归档打底做翼+曝光槽,道具三层重设计·奇物层)**:新增「池结构与抽取(重设计 v1)」节——令牌=出现次数上限明文化(拿消耗/没拿回池/刷新不消耗,「只刷出没拿」不计次,TP0 语义沿用);内容归档=普通档面粉打底、优秀/稀有档功能凭证做翼、传说档惊喜位(按决策影响力归档不按数值);曝光槽=三选一 2 格全池+1 格「优秀档以上」子池(子池空回退全池,池空直通同族);凭证维持独立计数体系不进子池;配额改动须用户重裁(TP0 结构锚非调参);MC 策略读数影响随实装复核 | -| **v3.4** | 2026-10-07 | **概率与上限解耦约束+耦合问题登记(用户指出的令牌模型冲突——道具三层重设计·奇物层)**:池结构节补两条——①**概率与上限解耦**(设计约束,新内容必检:概率位与已拿上限=两个独立字段,拿了才计/刷出不计,互不决定);②已知耦合问题与实现路径候选三案登记(令牌 N 张同时承担概率与上限不可独立设定——抽象权重表+独立计数器/令牌池+提前退役计数器/维持耦合已否;选型归实装批,影响面=MC 对账与断点存档)。用户裁:实现设计不定于现在,只落约束与问题点防后续撞车 | -| **v3.5** | 2026-10-07 | **秘宝域迁出两件迁入登记(用户裁——秘宝层归留裁决同批)**:淬毒刃纹→战斗系克制向(`on attack_commit + advantageous → 追加 +N`);标中殉爆→插旗系(`on flag_hit → 全体存活敌 N 群伤`,插旗系补第 4 件;数值均归调参批);惊巢反制→退役进素材库(归[秘宝](../跨局循环/秘宝.md)速览「目录处置」同批);实装批执行数据迁移 treasure→feats 并补入件表 | -| **v3.6** | 2026-10-09 | **旧条例外科摘除批(用户令——流派方向讨论中暴露的活矛盾)**:①分类表专长行、§1.1、生命周期表、P1 后置四处「流派标签·集件档位质变」残句摘除——v2.9 已框架级作废,残句以正文规则身份存活、持续误导设计(「战斗系占比须治理」伪问题即其衍生);②验收标准第 4 条 B1 铁律(每流派标签 ≥1 件挂排雷侧触发点)作废,替换为条件判据「收益必挂条件、无条件数值归属性值提升」(用户同日讯:纯属性增加不是专长,通过条件获得数值才是专长要做的);③待办两条(档位阈值匹配复裁 / charge 标签缺陷)因对象消亡注销。未动:冻结遗留(老 27 件清单与战斗结算侧现行代码行为描述)仍随重设计实装批整体替换;06-待办清单内三处描述性残留(BD 分层条目现状文 / charge 条 / 档位呈现裁点)归 06 条目自身生命周期,另行列出。 | -| **v3.7** | 2026-10-09 | **去毒批(用户立「文档去毒」为首要任务)**:退役术语魔法道具→秘宝(正文各处,含关联边界表)/档名三档→四级扫改(罕见→稀有)/凭证与刷新入表状态订正(迭代15② 已入库,调参表与 P1 与待办节同步)/资源成员指路凭证件表/验收第 3 条改令牌口径——新老框架分家第一步,老章节冻结段随实装批整体替换不变。 | -| **v3.8** | 2026-10-09 | **文档正确性审查批(用户令——状态记录与证据对齐)**:①§1.6 命名节例子「同标签达到 4 件时质变」摘除(流派标签集件档位 v2.9 已框架级作废,换为不引退役机制的归类指代例);②渠道轴交叉表专长行自撞「专长(专长)」修为「专长」(v2.7 同类自撞漏网);③§2.4 回复节现状句订正——shop.tres pool_shelf 六行已含回复(迭代15② 落地,默认原则对齐),「货架四项、回复缺席须补上」过期表述替换;④§2.5 在册事项订正——凭证形式已随迭代15② 入表实装,渠道分工仅 Boss 渠道直接给专长仍为目标状态;⑤生命周期表选定行老规则「选定即从池中剔除、任何渠道不再见」改令牌口径(拿消耗、刷出不计、耗尽不再出现——对齐验收第 3 条与 TP0 在役语义);⑥依赖与输出表摘除「档位求值结果」(集件档位作废的漏网输出);⑦§1.2 补成员变动在途注(行动点上限归属性值提升轴,在役仍三项、迁动归实装批——对齐 §1.3 表下现行事实源注)。 | -| **v3.9** | 2026-10-09 | **B3/B4 两裁写入文档(用户令)**:①P1 后置「两项合成高阶项」注销——非用户设计意图的脏信息,合成方向若需要按新体系重新生一件;②§3 刷新次数例外句口径换代——一律按最新设计口径:刷新次数由刷新券替代(凭证到手即结算进刷新存量账、加完消尽不进持有集),旧「进同一份持有账本」表述作废、随实装批整节删除 | -| **v3.10** | 2026-10-09 | 文档正确性审查批·独立复核(worktree docaudit-2026-10-09):①§1.3 异质性节「被写入的账」清单对齐凭证件表——旧四项时代「AP 上限」摘除(已归属性值提升轴,§1.2 在途注),补生命账/秘宝充能两账;②依赖与输出表 `relics.tres` 改 `feats.tres`(表文件已随词族对齐批换代,data/tables/ 无 relics.tres——代码实证) | -| **v3.11** | 2026-10-10 | **正文换代批(方案甲,用户裁「旧的删、误标改」——同秘宝.md v2.2 同法)**:①头部冻结横幅摘除——所指「流派/档位/27 件清单」旧章节正文已不存在,名单承载=[道具退役素材库](../../../research/道具退役素材库.md)表二;②专长/资源两节引言去「冻结遗留态/随实装批整体替换」错标,各落一句「新框架实装批落地前,现役代码按同框架运行」;③§1.3 旧资源四项枚举表删除(成员去向一行交代:行动点上限归属性值提升轴/刷新次数由刷新券替代/金币回复留任为小金币袋/应急口粮),回复归属裁定并入「资源为什么单独成一类」段;④§1.2 在途注与 §3 刷新例外去标注改正文(行动点上限归本轴/刷新券口径一律按最新设计);⑤§1.6 单件举例换新框架件(奥术余烬/贯穿射击→双管镐/疼痛记忆);⑥「谓词」用词清除——「可计算谓词」改「可计算条件」(正文与验收,版本历史行引述豁免);⑦验收 4/7/8/9 换代新口径+尾部现役代码运行线;⑧P1/P2 括注清算(已清偿/已注销条目由版本历史承载)+待办节收编为 06 单点指针。真旧内容承载=素材库表二+git 历史 | -| **v3.12** | 2026-10-11 | **自爆流扩容批(用户逐裁——踩雷系从被动补偿转主动输出循环)**:踩雷/受伤系 3→7——新增爆芯(踩雷→本轮攻击 +N,走面板乘区)/连爆(同轮多雷递进加层,与疼痛记忆 combo 涌现)/爆心冲击(踩雷→全体敌 雷伤×倍率 直伤,倍率 >1 结构锚——「角色与怪物互相吃伤害」系用户形态本体:开安全格零代价、引爆有代价故回报须更高)/雷蜜(踩雷→回复 N,比值 <1 结构锚);新增跨族桥引信标定(挖开有旗危险格→+1 层——印记=标定引信、挖=引爆,插旗×踩雷推理闭环);扩签登记 +3(本轮踩雷数计数器/被挖格当时有封印印记/雷罚伤害量);**踩雷转化对账锚**顺带登记(净血账期望须为负,两轮压不住砍血蜜——喂雷流 R5 甲教训同源的 kill-switch);用户裁定:主动/误踩不判定(不预判玩家意图,拿件自选收益最高操作)、爆芯走面板、爆心冲击按倍率非折扣;防御向两件(保险丝/安全帽)保留不动——双刃剑两刃相辅相成;附带修正基础件表战斗系计数 3→2(v3.0 起表头与行数不符),件表总 18→23 | -| **v3.13** | 2026-10-11 | **生存件扩容批(用户令「增加生存类的个数」——四类盘点呈报后逐裁)**:件表 23→27——①石肤(on 受伤:AC +1 本场累计上限 M)入踩雷/受伤系——恒定减伤形态被否(用户裁「太硬霸」),改受击成长型护甲;②背水(when 生命 ≤50%:受伤额外 −N)入踩雷/受伤系——风险联动减伤,低血不再是纯劣势;生命比例条件事实系其实现前置需求,用户批扩签+待办登记 06;③铁旗(on 标中:本轮 AC +N)入插旗系——生存奖励挂正确推理,与旗语回响共享事件;④战地包扎(on 战斗胜利:回复 N)入战斗系——战后通用恢复,补「恢复只服务自爆流」缺口。四类占比换代:减伤 2(安全帽/背水)/护甲 3(保险丝/石肤/铁旗)/恢复 2(雷蜜/战地包扎)对增伤 8 ≈ 1:1;用户口径订正=保险丝护盾归提升护甲类(AC 判定)、减伤专指受击直接扣减伤害 | -| **v3.14** | 2026-10-11 | **实装前置两项裁定写入文档(用户裁)**:①§2.5——Boss 渠道直接给专长(主渠道、唯一直接渠道)**已裁随专长实装批本批落地不再分期**;②§2.5 新增池结构选型澄清——池结构正主=案 D(v3.3 用户定夺在案:归档打底做翼+曝光槽 2+1+令牌=出现次数上限),「概率与上限解耦」实现路径(v3.4 在册三案)系**实装侧自选项非用户裁定项**(原裁定「实现设计不定于现在」=实装批内依代码事实自选不再上问)——成因=会话误将实装侧自选升级为用户裁定项重问已定夺事项,经历史记录(2026-10-07 讨论记忆+TP0 令牌池天然兼顾核实结论)找回定夺后澄清;06 渠道分工条状态行顺带同步 | -| **v3.15** | 2026-10-11 | **专长件第一版命名批(用户裁——对外命名纪律:无「雷」无「插旗」,插旗对外=封印、危险格对外风味=地下城陷阱/怪物巢穴;「扫雷插旗」系内部开发用语、对外=探索/挖掘地下城)**:九件代号换代——插旗系:旗语回响→**封印回响**/猎旗手→**封印匠**/铁旗→**封印桩**;踩雷/受伤系:爆芯→**陷阱本能**/连爆→**连环陷阱**/爆心冲击→**陷阱爆发**/雷蜜→**血蜜**;跨族桥:引信标定→**破封一击**;迁入登记:标中殉爆→**封印爆裂**;示警烟火/疼痛记忆/保险丝/见血开窍/石肤/背水/爆破会计等保留(无雷/旗字);纪律登记=术语表新增「对外命名纪律」节(v1.6);版本历史行引用旧代号系留痕不动;命名纪律试例=件名,后续全部对外命名(显示名/UI 文案)同尺 | -| **v3.16** | 2026-10-12 | **迭代 20 反哺落文批(用户令「先回写 GDD」——追认单①裁决齐,06 追认结果条承载裁决记录)**:①设计原则新增**落行注记**:「每第 N 次/积满触发」预评估落行=N−1(when 先于 do 读计数器现值,例:地质学家 eq 3/封印匠 mod_eq ref 2);②疼痛记忆件表「下场战斗」→「下一次攻击」(2026-10-12 用户定性笔误,无需 battle-gate 面);③弃图兑换落法回写=停手后首次攻击全额附加、用后清零、多攻击不拆分;④血税件表补生效时点(均**下一战起生效**——战末汇入冒险加算区,战界重建契约所致滞后一战)+账列换代双向同账细则;⑤时沙落法回写=下一战首轮 AP 队列兑付(hero_ap_bonus 既有通道),§1.3 判据句与异质性账清单「当前 AP=回合级」随迁「时沙暂记=至下一战首轮兑付」;⑥扩签登记节换代为实装承载记录(10 候选=6 fact+4 计数器改道/dig_stop 落/battle_won+mod_eq+hp_ratio 等随裁补位/新效果类型 7/rewrite_board 除名、清图事件继续暂缓);⑦专长/资源两节引言「新框架实装批落地前」过渡句随批落地 expiry 换代(29 行=基础 27+迁入 2/凭证新 5+留任 2 已落表);⑧流派口径澄清落档=**对外永不显示、对内保留事件族五系划分**(v2.9 作废所指=流派作玩法机制非对内划分本身,2026-10-12 用户重申——设计原则第 2 条原文已符,正文零改动);待办=血税卡面 desc(feats.tres)补「下一战起生效」系代码侧一行改,另行小批 | -| **v3.17** | 2026-10-15 | **简明技术中文用语规范批(用户令):词面修正 7 处**——「不得」→「禁止」3 处(信息红线条、代码词族 reward_* 句、验收第 6 条);「若干」→写具体数值 2 处(核心循环位置图「三关串联」、生命周期表出现行「3 个候选」);「收口」改写 2 处(§1.3 判据句「收口凭据」→「界定凭据」、§2.1 悬案句→「完成裁决」)。机制与数值零改动 | -| **v3.18** | 2026-10-18 | **凭证件裁削批(用户逐裁——①同调电池删除、②完美保险改归专长)**:①凭证件表计数「新 5+留任 2」→「**新 3+留任 2**」——同调电池整行删除(秘宝=局外同调件、冒险中零更换途径,与 2026-10-11 撤换装券/删回能器同一原则,且 UI 层从未接线选件入口);完美保险整行迁出资源类改归专长,理由=它给的是规则豁免而非可调动的余量(§1.4 判据),经文记入迁入登记节。②§1.3 异质性「被写入的账」清单注销「秘宝充能」「完美资格」两账;`attune_charges` 账本本身仍属秘宝基础设施保留(迭代 11),本次只删奇物侧写它的入口。③受影响的计数与指路同步换代:§1.3 引言、凭证件表标题、调参表「资源种类」行。④**一处失实记载订正**:资源节头注原写「2026-10-07 五件新凭证**用户裁准**写入文档」——当日用户所裁为池结构案D,未作此归类裁定,该句删除(「资源成员=转换源」判据句本身本批不动,是否复裁归 06 在册)。⑤本批**代码侧零改动**,归独立批:`CURIO_KINDS` 删两枚、`TIER_QUOTAS` rare 9→7 与总量 104→102(结构锚,用户已裁**净删**)、`feats.tres` 增完美保险行、效果引擎扩签一种效果类型、`grant_segment` 硬编码改订阅式(误标总数减豁免数得有效数,不改写既有计数值)。 | -| **v3.19** | 2026-10-19 | **一处误记载订正(用户定性=写文档时的误记,令改)**:§1.1、§2.2 与 `entities.yaml:629` 三处原写「专长凭证归专长、不归资源」——2026-10-19 考古确认其引入与后续两次改写(`d6c13809`/`b6b43ebc`/`6951632d`)分别只承载机制、子节点定名与术语更名,**无一处含归类裁断记录**,现三处统一改写为「专长在非 Boss 渠道的兑付形态」,不再对此作归类论断。**机制零改动**:非 Boss 渠道仍只给凭证、拿到即开、不可囤积、一局限购与计步保底全部不变,交叉表专长行仍是「凭证形式」。连带两处:完美保险改归专长的依据指针由 §1.1 改指 §1.4(**归属结论不动**);v2.2 历史行不改写字面,行尾追加更正注记指向本行。第 2 项(§1.3 资源判据句)本批不动,心智模型对齐前不裁,仍挂在 06 在册条目内。 | -| **v3.20** | 2026-10-19 | **定名批:「系统资源」立规范名+第三类改名「补给」(用户裁)**:①「系统资源」定为 GP/钥石/行动点当前值与上限/储备行动点/刷新存量持久量与当次临时量/生命/充能/时沙暂记等"战斗数值以外的数值容器"的规范名,唯一定义处=[核心循环](../../01-核心循环.md)「系统资源」节(每笔带寿命档+总线/抽屉两坐标);旧称「账/账本」「独立资源」「系统数值」全库退役,跨文档引用只写规范名加指路。②第三类由「资源」改名「**补给**」——原类名与系统资源同词,会把"给系统资源加一笔的件"误读成"系统资源本身";类定义改为"给某一笔系统资源做一次性加仓的凭证(转换源)",§1.3/§1.4/分类表/交叉表/凭证件表同步换代,§1.5 保留命名沿革备查。**机制与数值零改动**:五件凭证写入的账目、配额、寿命档全部不变。③连带:术语表补「系统资源」「补给」词条+节名改「系统资源与经济」;02-系统清单奇物行换代;entities.yaml categories 按 owner 同步。④v2.5/v3.2 历史行不改字面,行尾追加更正注。⑤**代码零改动**——`CURIO_KINDS` 的 kind 字面是账名(gp/ap/heal/refresh/rap/time_sand)不是分类名,不受本次改名影响。 | diff --git a/design/gdd/systems/冒险循环/难度曲线与Boss.md b/design/gdd/systems/冒险循环/难度曲线与Boss.md index 3482d90f..30ec5bc9 100644 --- a/design/gdd/systems/冒险循环/难度曲线与Boss.md +++ b/design/gdd/systems/冒险循环/难度曲线与Boss.md @@ -335,38 +335,3 @@ Boss 战的棋盘用本关最大板形(板形行值读棋盘参数表),板 ## 待办 本系统待办条目已统一收编至 [06-待办清单](../../06-待办清单.md),本节不再逐条登记。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v0.1 | 2026-09-15 | 自归档 GDD 压缩改写 | -| v0.2 | 2026-09-15 | 教学位掷骰自洽(用户拍板:代码不动、文档对齐):删除"教学位/首遇位固定不掷"豁免口径,教学位地精数量明确为开战掷骰区间 [1,2];D0 行数量列改 [1,2];Boss 血量锚 Σ=153.5 补逐数验算(区间期望口径下闭合) | -| v0.3 | 2026-09-15 | 雾格残留清理:关闭「待拍板」的雾相关供给验算失义条目(原供给与对账验算含雾板分层、雾成本负担比等输入分量);第二关新内容投放缺口条目改为引用「已从设计中移除的机制」(见不做清单)。曲线规则、供给带与对账义务不变 | -| v0.4 | 2026-09-15 | **护甲等级批(与战斗结算 / 敌人系统 / registry 同批登记)**:生存链区间模型补记护甲等级掷点带宽口径——峰值/谷值构成各含最坏/最好掷点带宽;EV 中性引入成文(期望伤害对齐现行表值、现行行值不重调,折扣档位与掷点形式定稿前区间扫描维持全额口径、带宽项随定稿批补扫,"零红档"验收与三档判定式不变);调参联动表新增"护甲等级 ↔ 攻击基线 ↔ 区间带宽"一行 | -| v0.5 | 2026-09-16 | **护甲等级掷点批·定稿落地(与战斗结算 / 敌人系统 / registry / 切片代码同批)**:带宽口径改写为"换装点锚定"——掷点形式与档位定稿(d20 / 缺口 1-3→×0.75 · 4-7→×0.5 · 8+→×0.25 / nat20 暴击 ×2 恒全额),基准 AC10 自带约 −21% 敌方输出期望(AC11 25% / AC12 28.75%),对比退役的 defense_up 满层 −60% 减伤墙为结构性削弱 + 伤害下限使零承伤轮结构性消失,方向性偏移与加难杠杆扫描合并处理、不单独重调行值;带宽补扫义务含暴击档与折扣档(并入加难扫描批);护甲等级行值:主角 10(暂定)、敌方首关 0(暂定,正式行值归怪物设定批);调参联动表"护甲等级"行改定稿口径;调参表主角表行与状态强度行同步(减伤 −30 → 护甲强化 +1 AC ×2 层) | -| v0.6 | 2026-09-16 | **敌人技能池批(与敌人系统 / 战斗结算 / 增益状态 / registry / 切片代码同批)**:曲线纪律两处改写(关间台阶"既有敌种新行为环段" → "既有池新技能";关内坡度"保持行为环读数不变" → "保持技能池 EV 读数不变〔权重即旋钮、EV 重锚随批登记〕");Boss 约定改专属池承载(独占技"硬化" + 权重轮廓,旧"专属四拍环且含蓄力拍"退役);调参表敌人行值表"行为环"列改"技能池(权重)"列并落建议池行值,新增"技能池投值"四行(池权重 / 技能冷却 / 保底 M / 池 EV 锚——含闸长期速率实测登记:地精 1.106〔保底闸抬升〕/ 熊地精 1.000 / 酋长 1.024);重击倍率注记随倍率归技能行删除;区间模型受伤峰值/谷值构成改按含闸长期速率复核口径;行值零改动(EV 中性锚定维持,重锚与权重投值随加难扫描批合并处理) | -| v0.7 | 2026-09-17 | **分支节点图批(L2 幽暗地域内容批——与切片代码 / registry / 关卡节点地图 / 06 待办同批)**:第二关深度轴行值填充收口(原 P1 后置项)——图版编号 D0–D8 九节点,战斗/Boss 七坐标在敌人表与棋盘表各有精确行(跨表校验强制);新敌种巨蜘蛛 giant_spider(群行 [2,3]、首遇位固定、轻甲)与 Boss 蛛化卓尔精灵 drider(重甲、血量 175 = r_boss provisional 锚);既有敌种 bugbear 池新技能突刺(兄弟精池差异化——关间台阶纪律两半均兑现);新技能行撕咬(×1.5 冷却 1)/ 毒爆(×2.5 冷却 4,蛛化卓尔精灵专属池独占);技能池投值表 / 棋盘参数表随批扩列,L2 池 EV 锚登记静态份额(≈1.28/1.11/1.33/1.67,含闸速率待抽样);首遇位绿档冒烟断言落地(基线 0 加成完美档 12 种子首遇战全胜且零踩雷)。全部行值 provisional,L2 整关通关率读数随批实测记录于切片汇报(精调归加难杠杆扫描批)。〔2026-09-18 注:本条为历史批注——血量 175、撕咬 ×1.5 / 毒爆 ×2.5 等读数已随数值压缩批作废,按数值纪律不再留值,现行值读 `enemy.tres` / `skills.tres`〕 | -| v0.8 | 2026-09-17 | **文档降级为模板批(用户拍板,与敌人系统 / 战斗结算同批)**:数值纪律定稿——本文只定规则、取值域与口径,全部具体行值移除、一律读配置表(切片 `data/tables/` 与 registry);调参表敌人行值十二行整表改行模板(敌种语义注记保留),技能池投值 / 主角表 / 棋盘参数 / 关键投值各表删除"现行值"列改口径登记;Boss Σ 逐数验算(153.5 闭合)移除改"调参日志留档"口径;换装点锚定句去 AC 硬读数;伏击上限、保底 M、教学位区间等散落行值改"读表"。背景:切片 `.tres` 数值压缩批后文档行值已滞后,双写失同步被实证 | -| v0.9 | 2026-09-17 | 数值纪律收口批:正文 knob 现行值改指路存根(事实源 data/tables/*.tres 与 registry),8 处失同步修正——曲线结论与换装点句残留读数改读 enemy.tres / settlement.tres;护甲克制 150/100/50 与联动表 d20 ×2 / 主角 10 / 敌 0 改读表(消双写);元进度换算率 +10≈1 轮 / 翻倍≈减半改 registry / 调参日志口径;**normal 模拟档目标带 [30,50]→[10,25] 用户拍板落文,旧读数 60% 删除(压缩批后失效,重测随验收批另批登记)**;通关余量带 p90≤13 / p10≥3 压缩前绝对血量带改相对量口径(含验收标准节同步,清单外顺手修正) | -| v0.10 | 2026-09-18 | **元进度定稿批(与 元进度 v1.0 / registry / 06-待办清单 同批)**:元进度接口预留节改定稿口径——区间平移换算率启用(带平移,判读口径不变),换算率表首版三行与护甲行强条目指路 registry `meta_progression_conversion_table`,数值标定归元进度设计批;P2「区间平移换算率定稿」行同步改剩余面口径。曲线规则与行值零改动 | -| v0.11 | 2026-09-18 | **甲效矩阵用户调参批同步(零代码,事实源 settlement.tres 五格改值——详见[战斗结算](../战斗循环/战斗结算.md) v0.15)**:正文克制矩阵节与调参表联动行「克制/中性/被克三档」措辞改五档(克制 / 弱克制 / 中性 / 弱被克 / 被克,档值读表);联动义务面扩写——矩阵档值变更与敌种护甲变更同列,都必须复算 Boss 与普通战的击杀区间。敌种甲类型行值零改动 | -| v0.12 | 2026-09-18 | **数值语言拍板批·甲效矩阵加法核换装同步(零行值改动——与 01-核心循环 数值语言条款 / 元进度 / registry / 06-待办清单 / 切片代码同批)**:正文克制矩阵节与调参表克制矩阵行两处五档措辞改三档加法(克制 / 中性 / 被克三档加法修正 +1 / 0 / −1 点,量纲由百分比改整数点数);重定价义务面扩写——矩阵加法修正点数随攻击成长的重定价与敌种护甲变更同列,均须复算 Boss 与普通战的击杀区间 | -| v0.13 | 2026-09-19 | **技能池节奏体验验证批(与 06-待办清单 / tools/skill_rhythm_audit.py / smoke/rhythm_batch.gd 同批,零行值改动)**:06 待办「单拍行为环的体验验证(改型:技能池节奏体验验证)」解决移除——判读带用户拍板(过旱 = 战斗整体全敌人零特殊技;过涝 = 连续特殊技无普攻基底);调参表「池 EV 锚」行登记 60 种子正式读数(份额对表 / 保底零越界 / 过涝无信号 / 过旱归短命杂鱼生存时长);**方法论规则成文:节奏/EV 类日志读数须 ≥50 distinct seeds**(4200 系 10 种子×网格重复曾产生地精一伙 0/484 突刺假象,4300 系复跑证伪——与 armor_roll 种子偏置发现同族,见 registry rng_service 关联面) | -| v0.14 | 2026-09-20 | **伏击单轮上限删除批同步(零行值改动——上限行值整体退役)**:关键投值节单轮伏击授予上限改述不设上限;原 advantage_per_round_cap 对账供给面随批作废 | -| v0.15 | 2026-09-20 | **格面资源八型批同步(零行值改动——与敌人系统 / 战斗结算 / 地图战斗资源 / 行动经济 / registry / 切片代码同批)**:① 受伤峰值构成去"伏击附加"项(伏击随八型批退役);② 关键投值节伏击上限措辞改述为群伤负向 = 警觉(敌方护甲等级 +1),原 advantage_per_round_cap 对账供给面维持同日先行作废;③ 警觉与行动点修正两新词的当量对账义务归本系统调参批(随 06 清单「调参批数值点评登记」条执行) | -| v0.16 | 2026-09-20 | **基线通关率带分带批 + MC 重投基线(用户拍板方案 A;台账 105〔登记时撞并行会话 103 号,顺延让号〕)**:① 基线通关率带由单一 [10%, 25%] 改为分带——第 1 关 [35%, 55%] / 第 2 关 [25%, 45%]:旧带锚定随机点击画像,普通画像换装基础定式后失锚;推导链 = 真人体验换算(模拟 47%/34% 对应真人新手约六成/五成)+ 与完美档带 [35,65] 错开一档保留元进度爬升空间;② MC 重投基线(N=300/画像/关 · unique · seed0=7000):完美档 55.7%/39.7% 落 [35,65]、普通档 46.7%/34.3% 落新带——双画像双关全落带,加难紧迫性解除;③ 残留越带唯一项 = L2 完美 Boss 承伤 51.6%(微越 1.6 点,归调参批);④ 报告 production/qa/mc-reinvest-baseline-2026-09-20.md;工具 level_monte_carlo.gd 增 baseline 参数 + F5 脚注随带同步 | -| v0.17 | 2026-09-20 | **第三关内容批(灰矮人矿城——与切片代码 / registry / 03-内容规模 / 棋盘生成 / 地形变异 同批,存量行值零改动)**:调参表新增第三关图版注记——敌种生态(灰矮人 duergar 单体重甲中坚 + 钩爪恐魔 hook_horror 群行复用撕咬 + Boss 灰矮人石君王 duergar_king 专属池独占妨害技大地脉动 = 乏力 sapped 第二妨害词汇首发)、首遇位节点 0/1 固定数量不加骰、克制面重轻错开(重甲首次登台,教学梯度轻→魔→重在 L3 补完)、Boss 血量锚 75 = Σ91 × r_boss≈0.82、棋盘 13×13 / Boss 14×14 密度 0.25 维持、地形落石 3 点 + 矿尘、armor_class 恒 0(正式投值仍归在案条目全表同批);期望值带节补 L3 口径——行值 provisional-pending-growth,零成长基线红档属预期、冒烟首遇绿档按成长代理档(atk+200 / hp+100)口径,正式通关率带与首遇绿档口径随 L3-A 玩家成长批(GP + 商店房)换装,归曲线调参批统一收带 | -| v0.18 | 2026-09-20 | **GP+商店房批(用户拍板"骨架先行、数值整体后置"——与 关卡节点地图 v1.1 / 冒险结构 v0.5 / 战斗结算 v0.23 / 地图战斗资源 v0.15 / registry / 切片同批,行值零改动)**:① 新增「商店与 GP 经济杠杆」节——GP 供给 × 商品定价 = 第三族玩家侧杠杆(掉落均值±方差 / 关级掉落加值 / 关级价格加成 / 首价与步长,全部读 shop.tres provisional-pending-曲线调参批),定价锚定口径 = 正常运气与运气极好可购档数的数学期望(期望账进商店表批注);② 分层验收 defer 成文——shop=off/on 双格 MC、shop=on 带平移、换算率登记全部随曲线调参批执行(与「基线通关率越带」「L2 Boss 承伤微越带」「大奖励数值联动」同窗),执行前 shop=on 只登记不判读;③ L3 首遇绿档成长代理档口径不变;④ 调参联动表 +GP 供给↔商品定价行、调参表 +shop.tres 行、验收标准 +杠杆在案条目 | -| v0.19 | 2026-09-23 | **基线通关率带测量口径退役(用户拍板单关直入口口径退役——与单关试玩入口退役同批)**:原带(第 1 关 [35,55] / 第 2 关 [25,45],v0.16 分带批)锚定直入口单关读数——满血零上下文进关,与真实冒险的条件通关率脱节(实证:直入口 L2 普通 5% 与营地检查点 L2 条件 90% 同期并存,曾误导曲线调参)。逐关读数改冒险条件口径(balance_verifier 冒险段派生:通关数/到达数);新带值重锚归曲线调参批,重锚前只测不判;调参表「基线通关率带」行与验收标准通关率带条同步改口径退役注记。行值零改动 | -| v0.20 | 2026-09-28 | 判读口径落档+回滚阶梯收编+Boss 锚漂移登记 | -| v0.21 | 2026-09-30 | 普通档改带 L1 [35,55]/L2 [10,15]+带表与验收标准回写现行口径 | -| v0.22 | 2026-10-03 | **商店定价公式换代(迭代 11 第②批 GP 商店房重构批——需求卡片 v1.3 P1 共享池/P4 ceil/P5 甲;06 条 2026-10-02 用户裁决)**:商店与 GP 经济杠杆节公式换代 = ceil(基价 × b^(关序−1) × A^(进店已购次数)),A/b provisional 投值 1.8/1.1(原 P5 甲 game-balancer 研究拍板改后置追认——零人工令);杠杆位表换货架基价四行+价格因子 A/b 两行;分层验收 defer 节补 v0.22 注记(shop=off=legacy 对照 off_n60 逐位 / shop=on 首锚 N=60 双策略带平移归调参批/终局池读数只测不判)。行值零结构改动(shop.tres 扩列不退役) | -| v0.23 | 2026-10-05 | **挖掘风险不等式判式换代(迭代14②号卡 T3——与行动经济/战斗结算/registry 同批)**:调参联动表 +6 新增行(旗溢价三件套 δ↔p_perfect↔ap_per_round / η 读数画像联动扩员 / β 带端点↔D_ref↔max_hp↔AC 折算 / 直伤雷三行↔正向同轴行〔同轴镜像比入对账面〕/ clear_blast 区间↔p_perfect / 标中强化池权重〔形态 b 条件生效行〕);P1 后置「挖掘风险不等式与清图支配性对账重跑」行改判读回执(不等式半边收口=判式重立+β 带检算接替,残留 u=3 β=1.17 登记态;清图支配性维持);五条经济契约对账段换代 | -| v0.24 | 2026-10-07 | **混编行集难度归属注记(敌人表行集多行批·组 A——与 敌人系统 v0.15 / registry / 06 清单同批)**:敌人表行值节新增混编行集难度归属注记——同一坐标多行混编后各行值按既有口径独立生效再叠加(数量区间各行各掷、行集实例总数 ≤ 4),不引入新难度轴或乘区;首个混编行连同 Boss 多行投放归后续内容批,投时行值 provisional 归本文调参口径不变+MC 取证先报批+难度带读数义务。本批零内容投放零数值变更 | -| v0.25 | 2026-10-09 | **文档正确性审查批(用户令——状态记录与证据对齐)**:①期望值带表「通关率带」行订正——「现行带:普通档 L1 [35,55] / L2 [10,15]、完美档 [35,65]」与同节「带换代」条及验收标准直接矛盾(2026-10-03 四带甲案已将其正式作废),改四带口径;②里程碑前缀按 2026-10-09 口径删「M-3」四处(判读口径同步条两处、回滚阶梯边界③一处、加难走廊扫描行一处)只留「迭代 5」;③杠杆位表与调参表「pool_shelf 四行」改「六行」(凭证与回复随迭代15② 入架);④P1 加难杠杆扫描行「扫描未执行」订正——域内取样扫描已随迭代 5 执行(与 Boss 设计节加难走廊行对齐),全杠杆落带扫描未收口;⑤第二关图版注记奖励点「(直通空态)」过期标注删除(奖励点兑付=提升三选一);⑥两处「见「待办」」悬空指针改指 06-待办清单。 | -| v0.26 | 2026-10-09 | 文档正确性审查批(定点):三处裸「M-4」标签按 2026-10-09 里程碑口径改「Beta 阶段(未排期)」——期望值带节(M-4 排序)、P1/P2 表全局作用域行(M-4 杠杆表)、调参表资源面偏斜行(M-4 杠杆表);批次登记事实不动 | -| v0.27 | 2026-10-09 | **文档卫生批(A5 过期指向收口——用户批准「按推荐做」)**:①调参表「血量锚比率 r_boss」行锚漂移登记尾句「复算与是否收锚归迭代 5 出口判读」改过期注记——迭代 5 已关闭未执行,r_boss 复算与收锚义务挂起、随数值批重开时核销;②期望值带节「期望承伤占比带复验义务随最近的减伤调整批执行」同款改过期注记——所指批次已关闭未执行,复验义务挂起、随数值批重开时核销。两义务内容不删、仅指向挂起 | -| v0.28 | 2026-10-12 | **迭代 20 反哺落文批·投放读数登记(用户裁③——数值暂不调整只落内容,只测不判)**:期望值带节新增「迭代 20 投放读数」注记——池换代构成四级 70/25/9/0=104 张(凭证四件入稀有档 +6 provisional)+MC shop=off 止步分布 {1:90, 2:10}→{1:93, 2:7}(通关率 0% 持平,新基线 seed 71000,位移归因曝光槽高档候选加速);判读与带重锚随曲线调参批,本批零数值变更零带改动 | -| v0.29 | 2026-10-14 | **迭代 24 反哺落文批·敌人表修批读数登记(用户裁「全部按呈报落文」——只测不判,数值终值归 M4)**:期望值带节新增「迭代 24 敌人表内容修批读数」注记——N2 普通敌技能投放后 perfect L2 通关 8→13/20、L3 全通 6→10/20(方向符合预期、量级低于二档判读带,倍率 provisional 归 M4);N3 敌方 attack_type 轴+克制消费后全局平移(重甲 −1/魔法甲 +1/轻甲 0,V5 实测单发恒 ±1,taken 中位上行系构成效应);N1 (1,2) 降档后 perfect L1 通关 19→20/20。判读与带重锚随 M4 数值批 | -| **v0.30** | 2026-10-19 | **系统资源定名传导批(用户裁,承接 42d64ec2/17ef0180)**:「HP 账本」→ HP(生命);「钱包账本归…GP 冒险账本节」→ GP 归…GP 节;「期望账」→ 期望读数——跨文档引用一律「规范名+指路 01-核心循环「系统资源」节」,定义源单点。机制与数值零改动。 | diff --git a/design/gdd/systems/战斗循环/地图战斗资源.md b/design/gdd/systems/战斗循环/地图战斗资源.md index e9379bdb..68cb1d3e 100644 --- a/design/gdd/systems/战斗循环/地图战斗资源.md +++ b/design/gdd/systems/战斗循环/地图战斗资源.md @@ -116,7 +116,7 @@ | 封印且留到轮末判定 | **−类型**:标错,该格资源的负向兑付(惩罚) | **+类型**:标中,该格资源的正向兑付(奖励) | | 封印格直接挖开(封印不可逆批 2026-09-19) | 零兑付(四情况④:零惩罚零奖励——标空不判、正向作废) | **−类型**照常(四情况②:只受挖雷一层惩罚——标中不发) | -矩阵的定义归本文;把矩阵跑起来的路由(结算队列、判定基线、逐行兑付)归[战斗结算](战斗结算.md)的授予段。blast 型负向 = 警觉。矩阵只描述现行规则;被本矩阵取代的旧体系与历次结构变更(撤旗退役、伏击换装等)一律记版本历史,不在正文复述。 +矩阵的定义归本文;把矩阵跑起来的路由(结算队列、判定基线、逐行兑付)归[战斗结算](战斗结算.md)的授予段。blast 型负向 = 警觉。矩阵只描述现行规则;被本矩阵取代的旧体系与历次结构变更(撤旗退役、伏击换装等)只进 git 提交史,不在正文复述。 举证:本节为枚举与路由定义,无计算。 @@ -249,32 +249,3 @@ ## 待办 本系统待办条目已统一收编至 [06-待办清单](../../06-待办清单.md),本节不再逐条登记。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v0.1 | 2026-09-15 | 自归档 GDD 压缩改写 | -| v0.2 | 2026-09-15 | 可选类注入递减基准对齐代码:逐图减半改为按实际获取件数递减;补明注入覆盖即时身份与"发放即获取、未挖到不计数"语义;验收标准首件保证改"必注入"口径 | -| v0.3 | 2026-09-15 | 雾格残留清理:关闭「待拍板」的雾格相关定价约束三条失义条目与随之取消的奖励配置表档位过滤门限 t_fog_min | -| v0.4 | 2026-09-15 | **格面资源批(用户拍板,2026-09-15)**:① 核心抽象改为格面资源(CellResource)——安全格与危险格一视同仁、单一类型池装板期摇定,极性由「动作 × 格型」矩阵决定(开安全格/标中雷 = 正向,开危险格/标错安全格 = 负向),取代踩雷固定伏击、标中固定削弱、标错三选一哈希反噬三套固定兑付;② 五型字典(attack/defense/heal/blast/weaken,正负各一行;weaken 负向 sapped 为新行,heal 负向为不经增益状态的直伤);③ 封锁格(初始展开格)恒无资源;④ 清图奖励改述为整图、可配置可替换的清图奖励对象,图类型差异化插槽保留;⑤ **可选类道具(刀/治疗包)整体删除**——供给控制器、注入概率、按板保底、关卡域库存、道具使用窗口的数据面全部下线,RewardConfigTable 随批废止;功能道具经其他渠道加入的结构位登记 P1;⑥ 行动经济对账锚与难度曲线重推义务随批登记(见 registry 修订记录) | -| v0.5 | 2026-09-16 | 更名批(用户拍板 2026-09-16):系统更名"奖励道具经济"→"地图战斗资源"——定义双向(正负由动作×格型决定)、格面承载、只在战斗结算生效;文件同步重命名;「待拍板」系统更名条目关闭;英文代号 REWARD_ITEM_ECONOMY 暂沿用 | -| v0.6 | 2026-09-16 | **护甲等级掷点批·换装(与战斗结算 / 增益状态 / registry / 切片同批)**:defense 型正向行 defense_up(减伤 −30%,hero_defense 池)换装为 ac_up(护甲强化 +1 护甲等级/层 ×2 层,显示名暂定"护甲强化")——百分比减伤行无双轨退役;cell_type defense / 权重 16 / 档位 2 零改动(v0.6 当下类型频次合计 79;v0.7 数值压缩批后 heal_minor 权重 15→3,合计降至 67——见 v0.7 条);五型字典表与 mvp 行表同步 | -| v0.7 | 2026-09-17 | **数值压缩批·文档同步(与 doc-conventions.md §5 数值纪律·强制收口条款同批)**:整体绝对值轴 ÷3(24/7→8/2 等,见 `data/tables/enemy.tres` 注释);奖励表 heal_minor 权重 ÷4(15→3);reward.tres 三 flat 行同步(spark_aoe power 4→1 · heal_backlash power 4→1 · heal_minor power [2,6]→[1,1] 定值);clear_blast 区间 [25,55]→[8,18](中点 13,期望不漂移)。**双写失同步收口**:① 五型字典表与调参表数值列改指路存根(指向 `data/tables/reward.tres` 与 旧 registry 条目 reward_table mvp_content);② 文档表格只锁字段语义与取值域,不再列具体数;③ 与 `增益状态.md` v0.7 / 旧 registry 条目 同批落地——五步收口(`.tres` 落批 · 切片 smoke 跑通 · GDD 表格指路化 · registry mvp_content 指路化 · 待办清单现状刷新)一并兑现 | -| v0.8 | 2026-09-17 | **候选集合节补强(与代码对齐)**:在「格面资源」节后新增「候选集合:安全格与危险格的资源池」——明确安全格与危险格候选集 = cell 池正向 5 行全集(attack_up · ac_up · spark_aoe · heal_minor · weaken),权重分布相同,类型频次合计 67(v0.7 压缩批后)。清图槽 clear_blast 独立于格面资源、整图作用域。代码事实源:`core/reward_economy.gd#roll_board`(`_rollable_rows` 不分格型)+ `core/minesweeper_rules.gd#_do_dig`(cell_revealed 通道 `resource=true` 对两种格一致)。同步修正 v0.6 历史条目"类型频次合计 79 不变"——v0.7 后改 67 | -| v0.9 | 2026-09-17 | **数值纪律收口批:正文与调参表 knob 现行值改指路存根(事实源 `data/tables/*.tres` 与 registry),3 处失同步值修正**——候选集合节"合计 = 67"字面量改指路 reward.tres cell 池正向行 weight 之和(现行值读表);候选集合表"类型频次合计"列两处 67 改"见 reward.tres";代码事实源清单五型 weight 明细(attack_up 20 · ac_up 16 · spark_aoe 16 · heal_minor 3 · weaken 12)改"5 行正向行 weight 现行值读 reward.tres" | -| v0.10 | 2026-09-18 | **伤害道具批(用户指令,2026-09-18)**:① 五型→七型——增补 pierce(穿刺)/ magic(魔法)两型,各正负一行:正向 = 单目标克制直伤道具(pierce_strike 穿刺弹 / magic_bolt 魔法矢,attack_type 字段载攻击类型轴,查战斗结算克制矩阵、必中全额不掷点、目标 = 固定顺位最前存活敌);负向 = 主角直伤(pierce_snare 穿刺陷阱 / magic_recoil 魔法反噬,复用反噬通道不经增益状态);② 权重再平衡(用户指令"保爆裂粉尘不变、等比下调其余"):spark_aoe 16 不动,attack_up 20→14 · ac_up 16→11 · heal_minor 3→2 · weaken 12→8(等比基准 ×35/51≈0.686,整取微差登记已知偏差),新行各 8——类型频次合计仍 67;③ 结构冻结"五型封闭"按 owner 修订流程改"七型封闭";切片同批落地(reward.tres 四新行 + schema 七型枚举 + attack_type 校验 + 结算兑付分支 + 棋盘徽标 穿/魔 + smoke 295 全绿;断言"主角先手攻击行存在"放宽为"存在或授予段终局"——单弱敌可被挖掘期兑付单独击杀,战斗段整段跳过为合法结局) | -| v0.11 | 2026-09-18 | **战斗数值结构修复批·极性矩阵同步(2026-09-18 盘问会话用户拍板,与战斗结算 v0.14 / 增益状态 v0.9 / registry / 切片代码同批)**:① defense 型负向 off_guard 行失同步修正——原残留"hero_defense 池,承伤加深"改"AC 掷点阈值轴负向、不入池"(off_guard 换装 AC 轴随结构修复批落地,effect_pool_map 删键);② weaken 型正向行补续时定案注记(同名重复授予只刷新剩余次数——2026-09-18,叠层措辞随批退役) | -| v0.12 | 2026-09-19 | **插旗不可逆批·极性矩阵同步(用户拍板全套落地,与战斗结算 v0.18 / 排雷玩法 v0.5 / registry / 切片代码同批)**:矩阵「标旗后当轮撤旗」行删除(撤旗动作退役)、「插旗格直接挖开」行新增——安全格零兑付(四情况④零惩罚零奖励)、危险格负向照常(四情况②只受挖雷一层惩罚、标中不发);路由描述「抵消过滤」随战斗结算改「判定基线」 | -| v0.13 | 2026-09-20 | **伏击单轮上限删除批同步(与战斗结算 v0.19 / 敌人系统 v0.11 等同批)**:负向即时节 blast 负向的伏击上限护栏与溢出行协议措辞删除,改直授无上限 | -| v0.14 | 2026-09-20 | **格面资源八型批(用户拍板——与敌人系统 / 战斗结算 / 行动经济 / registry / 切片代码同批)**:① 七型→八型(+action 行动点——正向 ap_up 下轮行动点 +1、负向 ap_drain 迟滞 −1,经 action_economy 排队、下一轮兑现);② blast 负向 ambush_double 退役换装 enemy_alert 警觉(敌方全体护甲等级 +1/层,`status_effects.tres` alert 行,side-wide);③ 极性矩阵/八型字典/负向即时节/候选集合/调参表/结构冻结/验收标准同步;正向权重合计 67→74(attack 14 / defense 11 / blast 16 / heal 2 / weaken 8 / pierce 8 / magic 8 / 清障炸药 1 / action 6) | -| v0.15 | 2026-09-20 | **格面资源九型批(GP+商店房批,用户拍板——格面 GP 获取途径推翻提案"格面池零修订"推荐:定位"低概率惊喜获取"、量与战斗掉落相当;与战斗结算 v0.23 / 冒险结构 v0.5 / 关卡节点地图 v1.1 / registry / 切片代码同批)**:① 八型→九型(+gp 金币——正向 gp_gain 金币袋 weight 2、负向 gp_loss 破财 weight=0 纯字典,power 语义 = 战斗内 GP 缓冲 ±,兑付编排归战斗结算、钱包账本归冒险结构);② 负向恒即时节补 gp 两向缓冲语义(战斗完成随 gp_dropped 统一到账,无库存语义不变);③ 候选集合/调参表/结构冻结(九型封闭枚举)/验收标准同步——正向权重合计 74→76;字典 16 格→18 格 | -| v0.16 | 2026-10-03 | **偏运硬币权重投影注记(迭代 11 第①批同调实施批——需求卡片 §十连带;池结构与冻结项零触碰)**:同调被动件「偏运硬币」装配时对装板摇号(roll_board 身份批,reward_roll 封闭流)注入池内权重投影——稀有正向 kinds {heal, gp, pierce, magic} 行 weight +N(表值 magnitude,provisional),危险格与安全格仍同池同分布、池成员集合与取号次数零变化(reward_economy._biased_cell_rows,luck_bias=0 时逐位返回原行集=off 态零扰动);摇号权重合计面 76 为九型基准值、投影后合计随 N 浮动(逐行归因不受影响——抽签按调整后池权重消费同一取号) | -| v0.17 | 2026-10-07 | **类型层身份裁决(道具三层重设计·地图层开场题——案甲用户裁,与 05-不做清单 v1.4 同批)**:设计目的节补「类型层身份」段——本层=规划素材层,未开格类型经微光可见(只读类型不读危险格与安全格,呈现归 HUD框架),「读敌拍板、抢类型」为正式设计意图;05 清单第 14 条同批收窄移出禁止面;微光实施归呈现批(06「未开格类型徽章呈现时机」条在案) | -| v0.18 | 2026-10-07 | 地图层内容题①裁案A(用户裁):兑付形态差异化方向转正——九型枚举不动、同型兑付形态将拉开(pierce/magic 同构为首要对象),具体形态设计归用户、实施归后续批次;九型字典节补方向注记 | -| v0.19 | 2026-10-07 | **地图层题四裁(用户裁——四档池结构)**:候选集合节新增「四档概率结构与保底」——档=概率位+保底上限两参数(T1 攻击类/T2 增益类·GP 小袋/T3 回复可保底档/T4 惊喜类永不保底档=上限 0 统一表达);保底按型登记(heal=每板 ≥1),超上限时每板随机选定兑现集合(暂定);补签四纪律(只改类型身份/不消费权重/粒度=板/不泄露元信息);GP 数值锚(小袋≈战斗结束 GP×1/10、大宝箱≈×1);大宝箱枚举新增归实装批(微光归通用增益组,五色相不变);调参表节补四档组织注记+旧「按板保底」失义句消歧;结构冻结条补「补签=装板期校验环节非重摇」;验收标准补四档保底条;袋装摇号备选挂号 06 | -| v0.20 | 2026-10-07 | **档位名映射随批(现行事实源=[核心循环](../../01-核心循环.md)「档位与获取规则」节 v1.5 同批落文)**:四档池节补对外稀有度映射行——T1=普通/T2=优秀/T3=稀有/T4=传说(T4=头奖级,与「极致罕见抽到就是爽」定位互证);同补护栏=任何概率提升不得改变本档保底承诺(保底=承诺非概率) | -| v0.21 | 2026-10-09 | **文档正确性审查批(用户令——状态记录与证据对齐)**:①格面资源节「没挖开的格子在界面上不显示里面是什么」订正——未开格类型身份已随 2026-10-07 类型层身份裁决经微光只读可见(不显示的是危险格与安全格),与 P1 呈现深度行同步(基础档已定);②清图节图类型词表 {dungeon, underdark} 补第三值 deep_underdark(第三关内容批在役,P1 差异化行同步);③负责表与 P1「功能道具渠道、渠道设计未定」订正——功能道具 = 秘宝局外同调件(渠道已随秘宝域与同调实施批落定),本系统结构位不变;④调参表 ap_up 行「weight=6」改域表述(数值纪律:行值读表)。 | -| v0.22 | 2026-10-09 | 文档正确性审查批·独立复核(worktree docaudit-2026-10-09):依赖与输出表秘宝行「秘宝的**背包**与使用归其管」过渡形态残留——同调形态无背包(关卡域库存已退役),改「秘宝件的装配与使用归其管」并补预读接口现行零投放注(与秘宝.md v1.7 依赖表对齐) | -| v0.23 | 2026-10-12 | **玩家向显示名跟随批(锻造工坊裁决会话 8a 连带·D 项执行)**:defense 正向行 `ac_up` 显示名「护甲强化」→「盾牌加护」(`reward.tres:22` / `status_effects.tres:18` 同批改名,`smoke_all.gd:1199` 断言同步;用户裁口径=临时叠层 AC 状态不该叫"护甲",附带约定「加护」=AC 判定层、「护盾」=吸收层不得混用);本文九型字典表与设计意图句跟随改现名;另 art-bible.md §4.6.1/§4.6.2 键名列、07 体验验证清单⑫同批跟随。机制与数值零改动 | -| v0.24 | 2026-10-15 | 简明技术中文用语规范(用户令):词面修正 2 处——四档概率结构与保底节「任何概率提升不得改变本档保底承诺」改「禁止改变」;验收标准加载护栏条「加载报错中止」改「加载时返回错误并中止」。机制与数值零改动 | diff --git a/design/gdd/systems/战斗循环/增益状态.md b/design/gdd/systems/战斗循环/增益状态.md index 25fc00b3..8c6b8233 100644 --- a/design/gdd/systems/战斗循环/增益状态.md +++ b/design/gdd/systems/战斗循环/增益状态.md @@ -96,7 +96,7 @@ ### 剩余次数怎么倒数:按结算次数衰减 -每个状态实例自带一个倒数计数——剩余结算次数(本文说的"衰减"就是它逐次递减、归零消失)。它不承诺"活几轮",而是数"经历过几次轮末结算":每轮结算先让状态起作用,随后计数减一,减到零状态即被移除。持续 1 的状态就是"一次性":在授予它的那轮结算里生效一次,轮末消失。MVP 时期六行内容均为一次性(削弱后改续时——见版本历史;2026-09-20 起主角增益两行也走续时、duration 表值仍为 1——重复拿等于重新获得一次当轮增益);跨轮持续的状态,寿命由表行初始值表达,给几就活几次结算。 +每个状态实例自带一个倒数计数——剩余结算次数(本文说的"衰减"就是它逐次递减、归零消失)。它不承诺"活几轮",而是数"经历过几次轮末结算":每轮结算先让状态起作用,随后计数减一,减到零状态即被移除。持续 1 的状态就是"一次性":在授予它的那轮结算里生效一次,轮末消失。MVP 时期六行内容均为一次性(削弱后改续时——见 git 提交史;2026-09-20 起主角增益两行也走续时、duration 表值仍为 1——重复拿等于重新获得一次当轮增益);跨轮持续的状态,寿命由表行初始值表达,给几就活几次结算。 ``` 一轮结算:查询生效清单 → 逐行兑付(层数 × 行值)→ 轮末衰减(全部实例剩余次数 −1)→ 归零实例移除 @@ -126,7 +126,7 @@ | 例子 | 容器输出 | 消费侧读法 | |---|---|---| -| 暴走叠两层 | +(2 × enrage 行幅度)(读表;越出单行取值域,原样输出) | 压在天花板 +100% 上:敌方输出乘区封顶 ×2(削弱已改续时——"叠两层压地板 −100% 归零"的读法随 2026-09-18 结构修复批退役,见版本历史) | +| 暴走叠两层 | +(2 × enrage 行幅度)(读表;越出单行取值域,原样输出) | 压在天花板 +100% 上:敌方输出乘区封顶 ×2(削弱已改续时——"叠两层压地板 −100% 归零"的读法随 2026-09-18 结构修复批退役) | | 主角盾牌加护再拿一份 | 层数恒 1、剩余结算次数重置(refresh——2026-09-20 主角增益续时批) | 不经任何池:掷点判定阈值 = 主角基准(读 hero 表)+ 层数(现行 +1——上限 2 层叠读取法退役,局内可达 AC 上限 11) | 容器还有一条快照纪律:实例的幅度、初始次数、量纲在授予那一刻从表行拷贝。战斗中配置表即使被重载,已授予实例不受任何影响,只影响后续授予。 @@ -149,7 +149,7 @@ | 状态 | 效果一句话 | 发给谁 | 幅度(现行值) | 时限 / 合并 | 来源类别 | |---|---|---|---|---|---| | attack_up 增伤 | 主角攻击提升 | 主角 | 见 `data/tables/status_effects.tres` attack_up 行 | 时限/上限读表 / 刷新(2026-09-20 续时批 stack→refresh,层数恒 1) | 安全格 | -| ac_up 盾牌加护 | 主角护甲等级提升(掷点折扣判定阈值——AC 轴,不入池) | 主角 | 见 `status_effects.tres` ac_up 行(2026-09-16 换装,原 defense_up 行已退役,见版本历史) | 时限/上限读表 / 刷新(2026-09-20 续时批 stack→refresh,层数恒 1) | 安全格 | +| ac_up 盾牌加护 | 主角护甲等级提升(掷点折扣判定阈值——AC 轴,不入池) | 主角 | 见 `status_effects.tres` ac_up 行(2026-09-16 换装,原 defense_up 行已退役) | 时限/上限读表 / 刷新(2026-09-20 续时批 stack→refresh,层数恒 1) | 安全格 | | alert 警觉 | 敌方护甲等级 +1/层 | 敌方 | 见 `status_effects.tres` alert 行 | 1 结算 / 叠加读表 | 踩雷 / 标空封印(blast 型负向) | | weaken 削弱 | 敌方攻击被削弱(同名重复标中只刷新剩余次数、层数恒 1) | 敌方 | 见 `status_effects.tres` weaken 行(取值域 [60,85],取负生效) | 时限读表 / 刷新(2026-09-18 续时定案) | 封印标中 | | enrage 暴走 | 敌方攻击提升 | 敌方 | 见 `status_effects.tres` enrage 行 | 时限/上限读表 / 叠加 | 标空封印反噬 / 踩雷(attack 型负向) | @@ -240,24 +240,3 @@ empower 与 fortify 是敌方技能池增益技在容器侧的数据落点(技 ## 待办 本系统待办条目已统一收编至 [06-待办清单](../../06-待办清单.md),本节不再逐条登记。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v0.1 | 2026-09-15 | 自归档 GDD 压缩改写 | -| v0.2 | 2026-09-15 | 状态表四行改六行:补暴走(enrage,敌方 +25%)与失衡(off_guard,主角承伤 +25%)两行,承载[战斗结算](战斗结算.md)标错反噬机制(2026-09-12 批已上线);来源类别四选一改五选一(新增标空旗);连带更新"MVP 四行/四类"表述与调参表 | -| v0.3 | 2026-09-15 | 并存分支补容量语义(实例数上界 = 受理授予数,有界确定、无满层语义);P2 后置登记并存行高频授予(持续伤害类)的容量复核 | -| v0.4 | 2026-09-16 | **护甲等级掷点批·换装(与战斗结算 / 难度曲线与Boss / registry / 切片同批)**:defense_up(减伤 −30% ×2 层)整行退役换装 ac_up(护甲强化 +1 护甲等级 ×2 层)——unit 新增 ac 量纲(护甲等级阈值轴,幅度域 [−20,20] 且非 0,不入任何池),消费面 = 战斗结算护甲等级掷点判定;例子表与调参表同步;"叠满减伤触池底"的免伤墙随换装结构性消失。注:sapped 行与极性路由措辞的文档同步归增益状态既有修订批(本批不扩 scope) | -| v0.5 | 2026-09-16 | **敌人技能池批(与敌人系统 / 战斗结算 / 难度曲线与Boss / registry / 切片同批)**:状态表六行 → 九行——新增 empower(蓄力:敌方 +100% 入 enemy_output 池)与 fortify(硬化:敌方 +100% 入**敌方防御池 enemy_defense** 新池——硬化技载体,主角攻击乘区消费面归战斗结算)两行敌方技能施放增益,来源类别 = 敌方技能施放(技能行 buff_ref 引用、施放时长由技能行 buff_duration 覆盖——技能冷却与增益持续两个计时器);两行 duration 2 = 1 个有效增益拍的容器口径成文;**顺手清偿 v0.4 挂起的 sapped 文档同步**(2026-09-15 格面资源批入表未登记的文档漂移——状态行表与调参表补行);P1"刷新类首批内容行"核销(empower/fortify 即首批) | -| v0.7 | 2026-09-17 | **数值压缩批·文档同步(与 doc-conventions.md §5 数值纪律·强制收口条款同批)**:ambush 幅度 +3 flat → +1 flat(量纲未变、压缩倍数三阶下发,参见 `data/tables/status_effects.tres` 注释)。**双写失同步收口**:① 状态行表与调参表数值列改指路存根(指向 `data/tables/status_effects.tres` 与 旧 registry 条目 status_effect mvp_content);② 调参表删除「现行值」列(敌人系统 v0.6 先例),仅保留 schema 模板与取值域;③ 与 `地图战斗资源.md` v0.7 / 旧 registry 条目 同批落地——五步收口一并兑现 | -| v0.8 | 2026-09-17 | **数值纪律收口批:正文与调参表 knob 现行值改指路存根(事实源 `data/tables/*.tres` 与 registry),8 处失同步值修正**——幅度例"两层 +50% 合计 +100"改"2 × 单行幅度(读表)";削弱例"−130 个百分点"改"−(2 × weaken 行幅度)(读表)";护甲例"AC10 → AC12(期望减免 21.25% → 28.75%)"改"基准 AC(读 hero 表)+ 层数"、派生读数删除;状态行表"时限/合并"列 1 次/×2/×16/×1 字面量改读表措辞;defense_up 退役条目删"−30%"数值;"两行 duration = 2"改"duration 表值(读表)";empower"×2"幅度与调参表"AC10 → 11 → 12"、"2 次 = 1 个有效增益拍"同步指路化 | -| v0.9 | 2026-09-18 | **战斗数值结构修复批(2026-09-18 盘问会话用户拍板,与战斗结算 / registry / 切片代码同批)**:三行语义改写(数值全部 provisional 归状态层重设计批)——① off_guard(失衡)换装 AC 轴:unit percent→ac、退出 hero_defense 池(effect_pool_map 删键,池清空结构保留),状态行表与调参表同步,"标错反噬三池"措辞改"三行";② fortify(硬化)符号纠正:旧正值入池实际 ×2 翻倍与"硬化=减伤"语义相反,改负值后主角攻击折半(正负号语义成文:负值 = 减伤方向);③ weaken(削弱)叠层改续时:stack→refresh、duration 表值 2——同名重复授予只刷新剩余次数、层数恒 1,×2 叠满池触底 ×0 的免伤轮结构性根治;消费侧例子表"削弱叠两层压地板"改"暴走叠两层封顶 ×2"(削弱叠层读法退役);"叠层不续命"对削弱不再适用,行动经济联动句随之失效;调参表一次性/叠层上限两行措辞同步 | -| v0.10 | 2026-09-19 | **技能池新效应词汇批(用户拍板——设计权威 proposal-status-vocabulary.md〔提案已吸收退役 git a6833b6a——现行事实源=敌人系统.md 词汇表/增益状态.md〕 v1.0,与 敌人系统 / 战斗结算 / registry / 切片代码同批)**:off_guard(失衡)新增第二来源类别 = 敌方技能施放(妨害技"蛛网束缚"的容器落点——首实装于 L2 Boss 蛛化卓尔精灵池;duration 由技能行 buff_duration=2 覆盖 = 1 个有效结算,empower/fortify 同款口径);容器语义零改动——同构实例、side 路由照常,妨害技零新状态行(乏力 sapped 留作妨害第二词汇,暂无载体) | -| v0.11 | 2026-09-20 | **格面资源八型批(用户拍板——与敌人系统 / 战斗结算 / registry / 切片代码同批)**:① 状态行表 ambush 行 → alert 警觉行(敌方护甲等级 +1,ac 量纲,side-wide);② 标空旗路由措辞纠正(2026-09-15 极性矩阵后已无三选一反噬,本批顺手收口);③ 敌人系统的伏击量纲定义/上限锚义务面随伏击退役移除 | -| v0.12 | 2026-09-20 | **主角增益只续时不叠层批(用户拍板「主角的其实也一样,都是按照叙事的方式,不要有叠层;只续时不叠层,变相削弱主角性能可接受」;与 status_effects.tres / smoke / registry / 06 清单同批)**:① attack_up(增伤)/ ac_up(护甲强化)两行 stack_policy stack→refresh——重复授予层数恒 1、剩余结算次数重置,对齐削弱 2026-09-18 续时定案;至此主角可重复获取的增益与减益合并语义统一(叠层策略仅剩敌侧 alert / enrage / off_guard / sapped 等行);② duration 表值 1 与 max_stack 2 不动(refresh 下 max_stack 不消费——weaken 先例;dur=1 下续时表现为重复拿重置当轮倒数,跨轮延续随将来 duration 拉长自然显形,数值归状态层重设计批);③ 影响面:增伤不再 +100%(hero_offense 池单层封顶 +50)、护甲强化不再 +2 AC(局内可达 AC 上限 11,AC12 折扣档采样探针随行降为 AC11)、这两行不再可达满层拒绝行;④ 同名状态合并策略表/幅度量纲例子表/调参表两行/联动纪律句/验收"叠层不减钟"条改述;06 清单「叠层不续命的读感」条目解决移除;冒烟三闸全过(ac_up 行断言与 AC 探针改形,无净增断言) | -| v0.13 | 2026-10-09 | **文档正确性审查批(用户令——状态记录与证据对齐)**:①设计目的「失衡是个例外」补乏力——主角侧减益为失衡与乏力两行(与「现行九行」节对齐);②状态行表来源类别列补全极性矩阵负向双分支——alert / enrage / off_guard / sapped 四负向行各补「标空旗 / 踩雷」另一分支(开危险格与标错旗均兑该型负向);③sapped 行与正文「暂无载体」订正——妨害第二词汇载体已落地(L3 Boss 石君王独占妨害技「大地脉动」,skills.tres earth_pulse→sapped)。注:版本号 v0.6 缺号(v0.5→v0.7)系既有断档不动,另行列呈报。 | -| v0.14 | 2026-10-12 | **玩家向显示名跟随批(锻造工坊裁决会话 8a 连带·D 项执行)**:`ac_up` 状态显示名「护甲强化」→「盾牌加护」(`status_effects.tres:18` 同批改名;用户裁口径=临时叠层 AC 状态不该叫"护甲",附带约定「加护」=AC 判定层、「护盾」=吸收层不得混用)——现行九行节、状态行表、同名状态合并策略表、幅度量纲例子表、联动纪律句五处现役描述跟随改现名;机制与数值零改动(版本历史各行的旧名留档不动) | -| v0.0 | 2026-10-11 | 术语统一补扫批(危险格更名收尾,2026-10-11 用户裁无类型划分):标中旗/踩雷两行「巢穴」表述换代——机制文档巢穴清零 | -| —— | 2026-10-09 | 缺号注记:v0.6 未登记(对应批次=未考——v0.5→v0.7 跳号,v0.7 行注引「敌人系统 v0.6 先例」,疑系 2026-09-17 文档降级为模板批未在本文件单独成行,登记见正文),卫生批仅注记不补写 | -| v0.15 | 2026-10-15 | 简明技术中文用语规范(用户令):词面修正 2 处——验收标准「合成不收口」改「合成不设上下限」(同句「不封顶不保底」语义不变);P1/P2 表并存容量行「随批复核容量读法」改「顺带复核」。机制与数值零改动 | diff --git a/design/gdd/systems/战斗循环/战斗结算.md b/design/gdd/systems/战斗循环/战斗结算.md index 584e2671..50c60414 100644 --- a/design/gdd/systems/战斗循环/战斗结算.md +++ b/design/gdd/systems/战斗循环/战斗结算.md @@ -214,7 +214,7 @@ percent 类(每结算、每层): E = |层数 × 行值| ÷ 100 × **护甲等级掷点:必中、非归零,只吃基础攻击分量**(2026-09-16 定稿落地,判定式与全部数值已拍板;判定对象措辞随敌人技能池批改述)。防守方由此多了一条数值轴——护甲等级(数据键 `armor_class`):攻击永远命中,没有 miss、没有零收益白回合;只有吃掷点的分量在掷点低于防守方护甲等级时按减伤档位打折,档位再重也不归零。判定式:攻击结算时掷单骰(骰面读表),掷点 ≥ 防守方护甲等级 + 攻击加成 → 全额;掷点 < 护甲等级按缺口(护甲等级 − 掷点)查减伤档位表打折——边界与档值读 `settlement.tres` 减伤档位表,三档皆非零档。暴击:天然最大面(读表)使该次基础攻击分量 ×暴击倍率(读表),双方同规,且天然最大面恒全额(暴击与折扣互斥;天然最大面〔nat20〕暴击是掷点层概念,与技能重击〔池技能〕严格区分——两层禁止混述)。伤害下限:**任何来源的伤害落地**至少 damage_floor(读表,全局 max(damage_floor, ·)——2026-09-20 用户拍板扩全来源:攻击双方、棋盘直伤与爆裂、地形变异、负向反噬;伤害取值域 [1, +∞),**不设上限**)——"被减伤归零 v=0"零值伤害行语义顺带退役,重档折扣的攻击行在行文本记"被压制"。掷点范围:只有基础攻击分量吃掷点——主角先手攻击的基础分量,敌方技能的基础伤害分量(= 攻击基线 × 技能伤害倍率,普通攻击倍率 1 为特例);无伤害分量的技能(增益/妨害类)不掷不折;棋盘来源一律无视护甲等级——爆裂、清障炸药、奖励即时伤害、技能必中附加分量(rider,2026-09-19)全部必中全额不掷,这是本机制的边界切口,与"奖励/惩罚必中"同构。护甲等级(数值轴,掷点打折)与护甲类型(属性轴,克制修正)严格分离:护甲类型不做护甲等级映射,克制修正点数读表、消费面不变,两概念在文档、表字段与代码键中禁止混用。数值载体:主角与敌方护甲等级行值读 hero / enemy 表的 armor_class 列(正式行值归怪物设定批,登记[待办清单](../../06-待办清单.md)),ac_up(盾牌加护)在其上加算(幅度/层数读 `status_effects.tres`)。攻击加成(`attack_bonus`)为结构位预留字段,切片恒 0,未来归元进度 / 武器附魔投值。掷点时机在结算战斗段内、每次基础攻击伤害计算时判定,消费 `armor_roll` 封闭流(逐次掷逐次取号,可逐位回放)。 -EV 参考数不入正文(派生读数,需要时按判定式与现行表值自行复算);旧 defense_up 的减伤墙已整体退役换装为 AC(无双轨,见版本历史)。微调旋钮 = 档位边界与档位值,不动护甲等级值。换装点锚定:基准 AC(读 hero 表)自带的方向性偏移与[难度曲线与Boss](../冒险循环/难度曲线与Boss.md)已登记的加难杠杆扫描合并处理;其生存链区间模型按掷点带宽口径复核(带宽含暴击档与折扣档),"零红档"验收保留。 +EV 参考数不入正文(派生读数,需要时按判定式与现行表值自行复算);旧 defense_up 的减伤墙已整体退役换装为 AC(无双轨)。微调旋钮 = 档位边界与档位值,不动护甲等级值。换装点锚定:基准 AC(读 hero 表)自带的方向性偏移与[难度曲线与Boss](../冒险循环/难度曲线与Boss.md)已登记的加难杠杆扫描合并处理;其生存链区间模型按掷点带宽口径复核 **结论**:先合成、再取整、全程非负;吃掷点分量必中非归零、低掷按档位折扣、天然最大面暴击恒全额(倍率读表)、落地伤害保底 ≥ damage_floor(读表);溢杀丢弃、治疗封顶、死亡即时判定。 @@ -357,40 +357,3 @@ EV 参考数不入正文(派生读数,需要时按判定式与现行表值 ## 待办 本系统待办条目已统一收编至 [06-待办清单](../../06-待办清单.md),本节不再逐条登记。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v0.1 | 2026-09-15 | 自归档 GDD 压缩改写 | -| v0.2 | 2026-09-15 | 标错反噬机制收编(2026-09-12 批已上线):旗判定批标空分支补"触发三选一确定性反噬",授予段新增反噬规则正文(三池内容、一次性时效、坐标×板序号确定性派生载体、不走随机流的可回放理由);P1 后置删除"标错惩罚落地"条目;待拍板"标错惩罚未定案"改写为已定案描述并保留正式侧载体候选注记 | -| v0.3 | 2026-09-15 | 明细流水行型清单 13 → 15:补窗口打开锚行 window_open / 窗口跳过锚行 window_skip 的语义、字段与落行时机,服务"窗口段恒在案、零选择记跳过、空库存记跳过";"无来源即炸"的两层豁免集合(行型四类 / 来源类别四类)成文并说明豁免不等于免检;验收标准窗口段措辞与实现对齐,新增行型封闭与行型新增纪律条目 | -| v0.4 | 2026-09-15 | 雾格残留清理:关闭「待拍板」的对账输入雾相关分量失义条目(原对账输入含雾成本负担比与雾板分层等分量)。现行对账输入 = 实测可推理率分布低分位值等现行读数,条款③⑤对账协议与判定式不变 | -| v0.5 | 2026-09-15 | 攻击/护甲命名去位置化(全仓统一,跨文档 + registry + 切片代码同批):攻击分量与充能池 {基础, 伤害A, 伤害B} → {普通, 穿刺, 魔法}(数据键 {base, dmg_a, dmg_b} → {normal, pierce, magic}),敌方护甲 {无甲, 护甲A, 护甲B} → {轻甲, 魔法护甲, 重甲}(数据键 {none, a, b} → {light, ward, heavy},映射沿教学梯度 none→light / a→ward / b→heavy);战斗段把甲效表从"三档措辞"改为 3×3 显式矩阵(行 = 攻击类型、列 = 护甲类型,克制 ×150 / 中性 ×100 / 被克 ×50,普通行恒 100)并补语义列;hero_attack 行分量字段 base/dmg_a/dmg_b → normal/pierce/magic;调参表参数名与措辞同步(伤害A→穿刺、伤害B→魔法、"被对位克制"→"被克");registry 与 敌人系统/难度曲线与Boss/03-内容规模/切片 schema·tres·core·presentation·smoke 同批改键(旧名仅在本次修订与各文件批次注记中作为"原名"留存) | -| v0.6 | 2026-09-15 | **攻击类型与奖励抽象分离**(用户裁定"攻击类型的定义和格子奖励要分离开;开格\|标雷 → 奖励;奖励如何定义是可以修改的;不要将两者绑定"):修正 v0.5 遗留的焊死命名——攻击类型是**伤害的属性轴**(只决定查甲效表哪一行,定义里不含任何棋盘来源);充能是**按攻击类型分桶的附加伤害储备**,"谁能充、充哪个桶"归**奖励定义**,开格 / 标中旗 / 踩雷 / 清图一律只作奖励触发源。战斗段:矩阵表去掉来源措辞(语义列改"穿透附魔护甲…"),新增"谁往桶里放东西属奖励定义"一段与"奖励触发源 × 现行奖励内容 × 换算上限"表;授予段:挖格批与旗判定批改为"按奖励定义累加充能计数"并加一句充能归属说明;调参表:穿刺每格 / 魔法每雷两行合并为「充能奖励定义 `charge_grants`」(触发源 → {attack_type, per_unit, cap}),v0.5 落下的 pierce_per_cell / pierce_cap / magic_per_flag 同批作废;新增「待拍板」条目登记充能奖励的正式归属。切片同批:`charge_grants` 承接三字段、`_charge_counts`(只计数)与 `_charge_points()`(按奖励定义投桶)、round_facts 改 `charge_counts` / `charge_points`、冒烟加"奖励定义在位 ×2 + 改投桶行为断言" | -| v0.7 | 2026-09-15 | **格面资源批(用户拍板四点)**:① 段序七段 → 五段——道具使用窗口与道具段随可选类道具整体删除(2026-09-15 用户裁定)下线,段序常量与 registry settlement_table 同步修订;② 授予段改述为"结算队列 + 抵消过滤":开格 / 标旗 / 撤旗入队,标旗后被撤旗的动作不结算(零兑付、行动点不返);③ 兑付统一走极性矩阵(开安全格 / 标中旗 = 正向,开危险格 / 标错旗 = 负向,字典归奖励道具经济),取代踩雷固定伏击、标中固定削弱、标错三选一哈希反噬三套固定兑付;④ 明细行型 15 → 10(删道具行 / 已消耗未生效行 / 使用被拒行 / 窗口打开锚行 / 窗口跳过锚行),两层豁免集合改两类 + 三类;⑤ 战斗道具背包与库存语义下线,关卡收束只清辅助道具背包;⑥ 收益对照表 flat 类措辞去道具;验收标准改五段全序 + 抵消过滤 + 极性路由正确,删窗口类断言。行动经济 F1 对账锚(伏击共享池)与难度曲线重推义务随批登记(见 registry 修订记录),切片侧修改指导随批产出 | -| v0.8 | 2026-09-15 | **护甲等级批(用户拍板登记,只改文档与 registry、不动代码)**:战斗段新增护甲等级掷点规则——必中、非归零,掷点低于防守方护甲等级按减伤档位折扣,没有 miss、没有零收益白回合;只吃基础攻击分量(主角普通分量 / 敌方攻击拍与重击拍基线),穿刺/魔法充能分量不吃;棋盘来源(伏击附加、道具、清障炸药、奖励即时)一律无视;护甲等级(数值轴,数据键 `armor_class`)与护甲类型(克制属性轴)命名区分成文。随机口径修订:结算换算层首次引入回合内随机,可回放契约从"结算路径零随机"改为"封闭随机流可回放"(同种子同输入逐位复现);开战掷骰属初始化随机维持不变。调参表新增护甲等级掷点 / 减伤档位表 / `armor_class` 三行(全部 provisional 未定值);伤害行补掷点读数与折扣档位随行留档(行型 10 类封闭不变);验收标准新增护甲等级掷点与折扣零值归路两条、可回放条改封闭随机流口径;EV 中性引入成文(期望伤害对齐现行表值,"零红档"验收保留);待拍板新增"掷点形式与数值域""掷点的随机流归属"两条 | -| v0.9 | 2026-09-16 | 新增「呈现只读面」节(06 清单「呈现只读面契约登记缺口」闭合):把切片已实现的呈现面函数与信号登记为对外契约——呈现状态快照 `presentation_snapshot`、战斗进行中谓词 `is_battle_live`、奖励身份查询 `query_reward_identity`、结算快照信号 `settlement_snapshot`、战斗结束信号 `battle_finished` 五件成文(载荷字段、消费方、销毁前捕获语义),并登记"呈现层唯一状态读取出口、禁链式穿透"的出口纪律与诊断观测面的非契约定位;依赖与输出表 HUD 框架下游行补指路 | -| v0.10 | 2026-09-16 | **护甲等级掷点批·定稿落地(用户拍板,数字即规范——与敌人系统 / 难度曲线与Boss / registry / 切片代码同批)**:判定式定稿——掷 1d20,掷点 ≥ 防守方护甲等级 + 攻击加成(结构位 `attack_bonus`,切片恒 0)→ 全额,低掷按缺口三档折扣(1-3 → ×0.75 · 4-7 → ×0.5 · 8+ → ×0.25,无零档);nat20 暴击该基础攻击分量 ×2 且恒全额(双方同规);伤害下限全局 max(1, ·)(`damage_floor` = 1)——"被减伤归零 v=0"零值伤害行语义退役,重档折扣行文本记"被压制";百分比减伤增益 defense_up 整体退役换装 ac_up(护甲强化 +1 AC/层 ×2 层,`unit=ac` 新量纲、不入任何池,无双轨),off_guard 与池结构零改动;护甲等级与护甲类型分离成文(数值轴 / 属性轴,不做映射)。数值载体:主角 armor_class 10(暂定)、敌方首关 0(暂定,正式行值归怪物设定批,登记待办清单);掷点流归属定稿 = `armor_roll` 封闭流(逐次掷逐次取号,可逐位回放),调参表掷点/档位/下限/加成五行由未定改拍板值;EV 参考数成文(AC10 21.25% / AC11 25% / AC12 28.75%,按判定式复算),换装点锚定(基准 AC10 自带约 −21% 敌方输出期望)与加难杠杆扫描合并处理;验收标准改写掷点条目 + 新增伤害下限与留档条目;切片同批:settlement.tres 七参数入表、战斗段掷点判定/暴击/下限/行留档(roll/ac/tier/crit 字段)、armor_roll 流接入 rng_service(黄金向量 m=42 scope0 = 4806095330042243845)、零值伤害行分支删除、冒烟护栏与掷点行为断言(nat20 种子 / AC12 档位分布 / 池触底保底 / 棋盘必中)、英雄卡与敌人卡 AC 展示、ac_up 状态槽图标、nat20 金框高亮 | -| v0.11 | 2026-09-16 | **敌人技能池批(用户拍板,设计权威 proposal-skill-pool.md〔提案已吸收退役 git a6833b6a——现行事实源=敌人系统.md 技能池节〕 v1.0——与敌人系统 / 增益状态 / 难度曲线与Boss / 战斗表现 / HUD框架 / registry / 切片代码同批)**:① 随机口径两处 → 三处——技能摇号 `behavior_roll` 封闭流(回合内、开轮时点、步骤流之外,每敌按生成序派生独立子流、单敌轨迹可独立复放)入册,可回放契约扩写为"三处皆封闭流,同种子同输入逐位复现";② 战斗段成文开轮摇号与敌方技能兑现(每轮恰摇一次、轮内刷新不重摇、摇定后兑现前死亡作废)、增益技 = 施放行 + 状态授予(0 伤害不掷不折不兑伏击);③ 三乘法链成文(技能倍率乘在最前:基线 × 倍率 → AC 掷点 → 甲效 → 既有链不动);④ AC 判定对象措辞四处改述("敌方攻击拍与重击拍基线" → "敌方技能基础伤害分量",含正文/公式行/边界表/验收标准);⑤ 敌方防御池入乘区(`enemy_defense` 新池——硬化载体):主角攻击 Σ三分量后 ×(100+enemy_defense)/100,四池对称成文(hero_offense 现行走普通分量直乘的切片现状登记待办);⑥ 行型改型:蓄力行 `charge` → 施放行 `cast`(10 类封闭不变);⑦ 呈现快照敌人数组字段定稿(当前拍/行动环进度 → 摇定动作三字段 + 敌方增益 effects);验收标准新增开轮摇号条目、战斗段次序与可回放条目改写;切片同批:`_roll_round_actions` 开轮编排、技能摇号器独立服务类、单位容器实例池/冷却/执行上报、settlement.tres effect_pool_map 增 empower/fortify、施放行格式化、摇定动画位 | -| v0.12 | 2026-09-17 | **数值纪律收口批:正文与调参表 knob 现行值改指路存根(事实源 `data/tables/*.tres` 与 registry),20 余处失同步值修正**——收益对照表参考敞口 12 / 完美乘数 200 改指路 settlement.tres(equivalence_ref_damage / p_perfect);伏击加层"+2 层"改"+stacks 层(读 reward.tres ambush_double 行)";充能供给表与 charge_grants 行"每格 1 / 上限 8 / 每雷 2"改 per_unit/cap 读表;三乘法链与甲效矩阵 1.5/1.0/0.5、150/100/50 改三档读表;掷点判定 1d20 / nat20 ×2 / 缺口档 ×0.75/×0.5/×0.25 / 边界 [3,7] / 档位 [75,50,25] / damage_floor=1 / AC 10·0 / ac_up +1×2 层全部改指路 settlement.tres·status_effects.tres·hero/enemy 表;EV 参考数(AC10 21.25% 等)与"旧 defense_up 满层 −60%"删除(派生读数 / 退役值,版本历史可查);调参表与验收标准同步 | -| v0.13 | 2026-09-18 | **营地扩展前置批·主角双轴可配置(用户指令,与敌人系统 / registry / 切片代码同批)**:① hero 表新增 armor_type({light, ward, heavy},缺省 light)——主角护甲类型轴可配置可修改,消费面 = 甲效矩阵(现行敌方攻击恒 normal 档 = 数值中性的结构位,轴生效待敌方技能攻击类型批);② hero 表新增 attack_type({normal, pierce, magic},缺省 normal)——**基础攻击量与攻击类型抽象分离**:基础分量类型不再硬编码普通、改读主角表值,营地永久强化"换成魔法/穿刺攻击"= 改字段,atk 量轴与掷点口径零改动;③ 同桶充能照加语义成文(基础分量与充能同型时,充能分量保持不掷不折);正文三分量表述、甲效矩阵"普通"行注记、分量固有属性措辞三处同步 | -| v0.14 | 2026-09-18 | **战斗数值结构修复批(2026-09-18 盘问会话用户拍板,与增益状态 / registry / 切片代码同批)**:① 主角侧乘区接线——hero_offense 池入主角攻击乘区:Σ三分量后 ×(100+hero_offense)/100 ×(100+enemy_defense)/100 两池串乘,增伤/乏力覆盖面 = 普通+穿刺+魔法 合计;attack_up 普通分量直乘旁路退役(正文甲效矩阵"普通"行注记、池乘区公式行、v0.11 切片现状注记三处同步销项);② off_guard(失衡)换装 AC 轴——unit percent→ac(幅度 provisional 归状态层重设计批),effect_pool_map 删 off_guard 键,hero_defense 池清空、结构保留,消费走既有掷点判定读法零改动;③ fortify(硬化)符号纠正——旧 +100 入敌方防御池实际 ×2 翻倍与"硬化=减伤"语义相反,改负值(读表)后主角攻击折半;④ weaken(削弱)叠层改续时——同名重复授予只刷新剩余结算数、层数恒 1,×2 叠满池触底 ×0 的免伤轮结构性根治(消饱和);duration 终值、off_guard 幅度、当量锚复算全部归状态层重设计批。切片同批:battle_orchestrator 池接线与直乘删除、status_effects.tres 三行、settlement.tres 删键、冒烟护栏(削弱续时 / 乘区接线 ×1.5·×0.75 / 硬化折半方向三组新断言,旧"削弱×2 池触底"采样通道随批退役) | -| v0.15 | 2026-09-18 | **甲效矩阵用户调参批(用户逐格给值,事实源 settlement.tres 五格改值、四格不动,零代码)**:普通行 ward 100→120 / heavy 100→50;穿刺行 light 100→80 / ward 150→120 / heavy 50→80;魔法行与普通-轻甲不动——「克制/中性/被克」三档结构与「普通行恒中性」退役,改五档(克制 / 弱克制 / 中性 / 弱被克 / 被克,档值读表)。矩阵消费面成文 = 主角侧(奖励直伤道具 / 主角攻击三分量 / 充能分量),敌方攻击不查矩阵、主角 armor_type 轴仍休眠(v0.13「敌方攻击恒 normal 档故中性」的归因改述——轴休眠是结构性的非数值性的)。语义列两行同步(穿刺「破不开重甲」重压语义弱化为与轻甲同档折损)。切片同批:settlement.tres 批注、冒烟矩阵三行断言改五档读数 + 乘区接线穿刺分量 3→2(3 点 ×80% 取整)随批改形,冒烟 300 项 0 失败 + 四探针 PASS;registry(enemy/hero armor_type 两行注记)与 敌人系统 / 难度曲线与Boss 三档措辞同步 | -| v0.16 | 2026-09-18 | **甲效矩阵加法核换装批(用户拍板数值语言——小整数加法核,与 01-核心循环 数值语言条款 / registry / 切片代码同批)**:量纲 percent→整数点数,三档(克制 +1/中性 0/被克 −1)九格改值〔normal 0/+1/−1、pierce −1/+1/0、magic 0/−1/+1〕,pierce×heavy = 0 中性为用户特别拍板;五档词表与百分比乘区退役(v0.15 的五档表随批短命退役,理由=个位数刻度假粒度);分量算术改述=折算取整后加修正点数;缺项回退 100→0;奖励直伤行 payload 键 effectiveness 保留、值语义改点数;池乘区/AC 折扣档/暴击保留百分比并成文粒度口径(数值语言条款:百分比仅此三处既有粗档+开发侧工具);切片同批:settlement.tres/settlement_table.gd/damage_math/battle_orchestrator/smoke/registry/01-核心循环同步 | -| v0.17 | 2026-09-19 | **技能池新效应词汇批(用户拍板——设计权威 proposal-status-vocabulary.md〔提案已吸收退役 git a6833b6a——现行事实源=敌人系统.md 词汇表/增益状态.md〕 v1.0,与 敌人系统 / 增益状态 / registry / 切片代码同批)**:① 三乘法链尾部 +必中附加分量 rider(伤害技 rider_mult 字段:max(伤害下限, floor(攻击基线 × rider_mult))——后置加法、必中全额、不进乘区不出暴击、价位锚 0.75 = AC 折扣档最轻档;"固定值伤害"改形——固定值不随基线缩放与共享技能表前提冲突);② 增益/妨害技 = 同族施放行(0 伤害不掷不折不兑伏击),妨害状态按状态行 target_side 落主角——零新授予通道;③ 必中家族清单 +rider(掷点边界切口);④ 公式行/吃掷点行/验收标准三处同步 + 新效应词汇验收条目(rider 逐拍精确复算 + rider 键封闭 + 妨害落主角端到端);⑤ 实装面 = 仅 L2 Boss 卓尔(毒爆 +rider、新行蛛网束缚妨害→失衡),其余敌种不动;多段命中经用户拍板退役不入词汇表 | -| v0.18 | 2026-09-19 | **插旗不可逆批(用户拍板全套落地,2026-09-18 提案转正;与排雷玩法 v0.5 / 行动经济 v0.4 / 地图战斗资源 v0.12 / registry / 切片代码同批)**:① 授予段「抵消过滤」改述「判定基线」——撤旗动作退役,旗判定以轮末在场旗为基线,被挖开的旗不入基线;② 新增插旗不可逆四情况兑付表:①标中照常 / ②插旗危险格直挖只吃挖雷惩罚标中不发 / ③标空照常 / ④插旗安全格直挖零惩罚零奖励(正向作废 + reward_ineffective 归因行);③ 挖格批兑付表补四情况分支;④ 标中资格措辞改「旗无移除手段」(拔旗重插通道消失);⑤ P0 闭环第 2/4 步与验收标准同步(「抵消过滤」条改「挖旗格兑付改判」)。切片同批:minesweeper_rules 挖旗格放行 + flag_pull 出目录 + dug_under_flag 事件标记、battle_orchestrator 情况④零奖励抑制、action_economy 表 flag_pull_ap_cost 删除、冒烟 317→327 项 0 失败(四情况探针 `_smoke_flag_irreversible_quadrants`) | -| v0.19 | 2026-09-20 | **伤害下限全来源批(用户拍板「任何伤害取值域 [1,+∞),最小值一定是 1」;与 06 清单「零伤害/无威胁组合的跨字段护栏」收口 / registry / 切片代码同批,台账 100)**:① 下限语义从"任何攻击落地伤害"扩为"任何来源的伤害落地"——攻击双方(原有)+棋盘克制直伤(counter_component 增 landed_floor 参数,空桶不吃修正恒 0 边界不变)+爆裂正向+负向反噬(穿刺陷阱/魔法反噬/heal 反噬)+地形变异 flat_damage,全部收进 damage_floor 闸内;② 取值域成文 [1, +∞) **不设上限**——「零伤害/无威胁组合」条目的跨表上界护栏半边随拍板裁决为不设(上不封顶),敌种攻击基线 0 的退化态经下限自然消解(0 基线攻击落地仍 ≥1,"无威胁敌"结构性不存在);③ 现行表值下零行为变更(棋盘直伤贴底值 2−1=1 本就在闸内),本批=结构保证+调参防误配;④ 判读口径/约束表/调参表/验收四处措辞同步;冒烟 352→355 项 0 失败(+贴底/穿透/空桶三断言)。版本号注记:v0.19 在伏击上限删除批(未合并分支)中已被占用,本条与之合并时以先入库者为准顺延避让 | -| v0.20 | 2026-10-12 | **玩家向显示名跟随批(锻造工坊裁决会话 8a 连带·D 项执行)**:数值载体节 `ac_up`(护甲强化)→ `ac_up`(盾牌加护)——`reward.tres:22` / `status_effects.tres:18` 同批改名(用户裁口径=临时叠层 AC 状态不该叫"护甲";附带约定「加护」=AC 判定层、「护盾」=吸收层不得混用);机制描述与数值零改动,版本历史各行旧名留档不动 | -| v0.20 | 2026-09-20 | **伏击单轮上限删除批(用户拍板——与 敌人系统 / 地图战斗资源 / 难度曲线与Boss / registry / 切片代码同批)**:① 行型协议 10 类→9 类——溢出未生效行下线(唯一发射源 = 伏击上限截流,上限删除后零发射面);② 授予段伏击加层改直授无上限(反灾难护栏退役——一轮踩雷数由行动点预算天然封顶);③ 核验清单伏击守恒条改伏击池共享;④ 切片同批:enemy.tres 12 行字段删除、敌表校验/编排器截流/单位容器 F3 计划函数/日志视图 overflow 格式化删除、冒烟 blast 负向断言改直授累加(330 项 0 失败) | -| v0.21 | 2026-09-20 | **格面资源八型批(用户拍板——与 敌人系统 / 地图战斗资源 / 行动经济 / registry / 切片代码同批)**:① 三乘法链与敌方技能攻击公式删伏击附加项及其"后置加法不进乘区"解释短语(rider 保留);② 授予段兑付表 blast 负向换装警觉加层(enemy_alert → alert 行)+ 新增 action 型行动点修正行(queue_ap_delta 排队、下一轮开始兑现、下限 0、明细记 effect_id=ap_delta);③ EV flat 类枚举伏击→行动点;④ 呈现快照两处伏击层数拆除(警觉并入敌方增益 effects 投影);⑤ 棋盘来源必中枚举去伏击(两处);⑥ 核验清单伏击池共享改警觉共享 | -| v0.22 | 2026-09-19 | **充能退役批(版本号避让注记:原登 v0.16 与甲效矩阵加法核换装批撞号——2026-09-20 R10 版本号唯一性规则上线发现,后入库者顺延;用户拍板,与切片代码 / registry / 07 清单 / README 同批)**:主角攻击三分量模型(普通 + 穿刺/魔法充能)整体退役,回归单分量——量 = 攻击基线、类型 = 主角表 attack_type;挖格批/旗判定批的充能计数条款删除、充能供给表与 charge_grants 调参行删除、乘区公式与粒度口径改"攻击合计";退役理由 = 克制策略归冒险前配置(营地换型/未来冒险前参数面),局内不再有挖掘攒弹药的第二伤害供给;保留面 = 攻击类型属性轴与棋盘奖励触发源的抽象分离、奖励直伤道具(穿刺弹/魔法矢)的克制直伤消费不变。切片同批:battle_orchestrator 攻击段单分量化 + _charge_points/_charge_counts/round_facts 充能键删除、DamageMath.charge_component → counter_component 改名(奖励直伤唯一消费方)、settlement.tres charge_grants 键与 schema 校验删除、冒烟充能断言组退役改形(乘区接线单分量基线 100、标中正向兑付行断言、恢复点探针换种子 42)、冒烟 293 项 0 失败 | -| v0.23 | 2026-09-20 | **GP+商店房批(用户拍板——与 关卡节点地图 v1.1 / 冒险结构 v0.5 / 地图战斗资源 v0.15 / 难度曲线与Boss v0.18 / registry / 切片代码同批;版本号注记:v0.22 已被充能退役批占用,表尾顺延)**:① 呈现只读面表 battle_finished 载荷 +gp_dropped(掉落掷定 + 关级加值 + 战斗内缓冲的合计——字段增删走本文修订条款兑现);② 授予段兑付形态表新增 GP 缓冲行:gp 正/负向(金币袋 / 破财——九型批)兑付 = 战斗内 GP 缓冲 ±power,战斗完成统一上抛入钱包账本(账本归冒险结构),战斗域零钱包状态;③ 随机口径六处→七处:战斗结束掉落掷定消费 `gp_drop` 封闭流(出口随机、步骤流之外);九型字典措辞与验收标准可回放条目同步 | -| v0.24 | 2026-09-24 | **伤害管线单据化批(用户三裁决——与切片代码同批,06 台账 148)**:新增「伤害单据与伤害控制器」一节——伤害对象抽象补全:五族伤害来源收口伤害控制器单点管线、兑付配方封闭五种;三裁决落文——①结账时机双模式(现行 = 段界结账:授予段尾 / 清图批同步点 / 战斗段尾;开单即结保留为回切结构位,切换走代码不走调参)②目标结账时刻照规则解析③死亡事件由单位自行宣布(怪死其未结单据作废、主角死兑付终止);授予段兑付与战斗段两节补结账时点句;验收标准 +伤害单据管线条目。切片同批:`core/damage_controller.gd` 新建(单据构造/开单/结账/死亡事件消费/管线算术收口)、battle_orchestrator 六调用点改开单、掷点/折扣/克制/池乘/攻击行文本助手迁出(`_defender_ac`/`_clamped_pool` 留薄委托)、unit_container 增 `unit_died` 信号;冒烟 557 项 0 失败双模式全绿 + A/B 对拍四配置全确定且真实分岔(行数恒等、纯次序位移);历史基线读数自本批起以段界结账口径为准(重测归曲线调参批) | -| v0.25 | 2026-10-05 | **挖掘风险不等式判式换代(迭代14②号卡 T3/T4——与行动经济/难度曲线与Boss/registry 同批)**:①收益对照表补 gp/ap 当量口径注记(gp=flat power 代理 3/2 假设 A5 口径空白登记、ap=flat 表值 1 机会成本口径仅登记假设 A6,精确口径归商店批复核);②验收标准 +条款3 对账条(聚合健康式+β 带逐 u 检算 / 旗溢价兑付三形态覆盖·标空与挖格不乘·同池零触碰);③T4 机制载体 = settlement.tres 新键 flag_hit_premium=125(percent 域 provisional)——标中旗正向兑付 ×(1+δ),整数四舍五入取整与伤害管线 floor 分域(registry 随批登记);DamageController 零改、危险格与安全格同池冻结不动、直伤雷 6/8/8 与 p_perfect 不动 | -| v0.26 | 2026-10-06 | **地图伤害账殿后批(案C,用户裁——歧义质询触发)**:①五段总览①③行改写——授予段只兑非伤害形态,伤害形态兑付(爆裂/直伤/反噬/地形变异/战旗军规/熔火反噬等)暂存到战斗段末、按「主角先手→逐敌还手→地图账」统一落地;②战斗段节补地图账殿后与死亡守卫(主角死于怪物→暂存单整体不兑,逐单留「未生效(主角已倒下)」行);③结账时机双模式改述:现行=段界结账+地图账殿后,清图批同步读数改「将兑付」回报口径(完美第二份依据开单时点事实),历史基线读数以 2026-10-06 前授予段结账口径封存;④兑付形态表 blast 正向/heal 负向兑付时点改战斗段末;⑤P0 闭环第 5 步补地图账;⑥顺手清充能退役遗留:三分量句改单分量、三处「主角普通分量」改「基础分量」。切片同批:battle_orchestrator 暂存闸 `_defer_board_damage`/`_deferred_board` + `_submit` 案C 分流 + `_outcome_of` + 战斗段末补提交块 + 授予段四处直提改走闸;冒烟 783 项 0 失败(新增案C 段内序断言+行相位分类器换代)+ run_all 17 套全绿 + probe_gate --click 全绿;旧行为 MC 锚全数作废,重锚归数值批 | -| v0.27 | 2026-10-09 | **文档正确性审查批(用户令——状态记录与证据对齐)**:①依赖表冒险结构行「provisional,MVP 冒烟直供」过期注记订正——覆盖值通道与接口四件套已随冒险结构实现批(2026-09-21)正式接线;②P1 后置「冒险侧真实供给接线」已随同批落地——行移除;③两处「对账现状见「待办」」悬空指针改指 06-待办清单。 | -| v0.28 | 2026-10-09 | 文档正确性审查批·独立复核(worktree docaudit-2026-10-09):「秘宝背包」三处(五出口表关卡结束行/轮次生命周期节/验收关卡收束条)补机械惰性承载注——清空对象=关卡域库存 treasure_inventory(代码实证在役:level_runner.gd:520 快照计数、battle_orchestrator.gd:745 consume),投放渠道已随迭代 11 第①批全退役、现行恒空,同调装配件不经此域,拆线归实装批;行为描述与代码一致,仅补现状口径 | -| v0.0 | 2026-10-11 | 术语统一补扫批(危险格更名收尾,2026-10-11):②插旗后挖开行「惊动危险格」表述换代 | -| v0.29 | 2026-10-15 | 简明技术中文用语规范(用户令):词面修正 7 处——明细流水节「宁可报错」改「宁可返回错误」;伤害控制器节「全部收口控制器单点」改「全部统一到控制器单点」;护甲等级掷点节「两层不得混述」「两概念在文档、表字段与代码键中不得混用」改「禁止」;边界表「每池独立收口 ±100 百分点」改「每池独立封顶」(与池乘区公式行同词);调参表护甲等级行「两概念不得混用」改「禁止混用」;行型封闭条「未登记行型不得落行」改「禁止落行」。机制与数值零改动 | -| **v0.30** | 2026-10-19 | **系统资源定名传导批(用户裁,承接 42d64ec2/17ef0180)**:图「账本扣费」→ 系统资源扣费;「非伤害账/地图伤害账」→ 非伤害单据/地图伤害单据;节标题「四类动作各归各账」→ 各归各系统资源——跨文档引用一律「规范名+指路 01-核心循环「系统资源」节」,定义源单点。机制与数值零改动。 | diff --git a/design/gdd/systems/战斗循环/战斗表现.md b/design/gdd/systems/战斗循环/战斗表现.md index 16ac48fd..0fac1db6 100644 --- a/design/gdd/systems/战斗循环/战斗表现.md +++ b/design/gdd/systems/战斗循环/战斗表现.md @@ -159,15 +159,3 @@ MVP 不要求本文的闭环:不做清单把战斗动画演出列为 MVP 打 3. 演出速度档位:逐行兑现的加速与跳过交互(约束:信息载体不可整体跳过)。 4. 来源格可读化的形态二选一:缩略图还是格子高亮(登记时两者并列,未裁决)。 5. 坍塌显形连锁动画与音效的挂点协同,安排在哪个批次合并设计。——已约定:对位批次 = 表现层升级批(P1,随样张锁定的动画方案后;音效侧同口径登记)。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v0.1 | 2026-09-15 | 自归档线索整合为范围草案(旧体系未单独成文) | -| v0.2 | 2026-09-16 | 新增「一屏样张的验收标准」:内容清单、五项按序判定与判定回退成文,四件锁定物(角色剪影/动画方案/战斗空间/敌层插入位置)的过判口径落到已冻结口径上(06 清单「样张验收标准未成文」闭合);依赖与输出表"五区"改"四区"随 UI 收口批同步 | -| v0.3 | 2026-09-16 | **敌人技能池批(与敌人系统 / 战斗结算 / HUD框架 / registry / 切片代码同批)**:上游呈现输入清单「敌种姿态资产定稿」行改型——行为环姿态预告(一态与三态)随行为环退役,改「特殊技技能动画定稿」(普通攻击零表示、特殊技攻/防系两型动画映射,暴击掷点层无前置表示);摇定动画位呈现语义 = 开轮摇定即可见、纯类型级提醒(池与权重不公开),样张验收联动口径不变 | -| v0.4 | 2026-09-20 | **敌人卡形态裁决收口批(与 battle.md / HUD框架 / 06 清单同批,台账 99)**:敌人呈现形态拍板全站桩式(无框立绘+底座,主角同站桩、状态小图标挂血条下,卡片式退役)——「前置美术测试是硬前置」节相邻裁定句改裁决已下;样张内容清单「敌人卡两候选形态对照」项划线解除(正式样张按站桩形态单版出样,owner 修订);判定与回退节第 5 项拆出形态对照半边(已收口);敌人层插入位置裁决义务保留随样张批 | -| v0.5 | 2026-09-30 | **拍板点 3 收口批(GDD 概念覆盖审计——用户裁甲:演出权威定义节落位)**:新增「结算演出与轮间节奏」节(五要素:定义/作用对象与范围/生命周期/关联与边界/状态)——结算演出覆盖层(迭代 6)与轮间结算节奏化(迭代 8 卡⑦:段间 0.3s/段内 0.22s/轮横幅 0.6s+减动效双态)的呈现规则自 06 已收口条目与代码注释收编入现行事实源;段内常量按代码实态 0.22s 登记(06 条目旧记 0.06s 系三轮修改批前值);常量以代码为事实源。孤儿 1(演出 spec 零承载)随本节解除 | -| v0.6 | 2026-10-09 | **文档正确性审查批(用户令——状态记录与证据对齐)**:①输入清单「特殊技攻/防系两型动画」订正——2026-09-19 新效应词汇批已扩三族(攻击系/增益系/妨害系,敌人系统意图呈现节);②P1「溢出行呈现」改「奖励未生效行呈现」(溢出未生效行型已随 2026-09-20 伏击上限删除批下线,与输入清单行措辞对齐)。 | -| v0.7 | 2026-10-15 | 简明技术中文用语规范(用户令):词面修正 10 处——「死亡不得瞬消」「退场有过程不得瞬消」「不得被遮挡到不可辨」「都不得越过」「不得遮挡数字」「不得在挖掘期抢焦」「不得进入生产」7 处「不得」改「禁止」;「提前收口」「提前裁决收口」2 处改「完成」(样张内容清单/判定与回退节);结算演出节「MC 对拍口径」改「MC 与基线数据逐项比对」口径。机制与数值零改动 | diff --git a/design/gdd/systems/战斗循环/敌人系统.md b/design/gdd/systems/战斗循环/敌人系统.md index 2055024a..f56c403c 100644 --- a/design/gdd/systems/战斗循环/敌人系统.md +++ b/design/gdd/systems/战斗循环/敌人系统.md @@ -282,28 +282,3 @@ Boss 专属身份 = 专属池承载:独占技能 + 权重轮廓(**技能错 ## 待办 本系统待办条目已统一收编至 [06-待办清单](../../06-待办清单.md),本节不再逐条登记。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v0.1 | 2026-09-15 | 自归档 GDD 压缩改写 | -| v0.2 | 2026-09-15 | 教学位掷骰口径自洽(随[难度曲线与Boss](../冒险循环/难度曲线与Boss.md)同批修订):unit_count 字段说明、地精敌种定位与现行行值句中"教学位固定 1 只/固定不掷"改为 ×[1,2] 开战掷定 | -| v0.3 | 2026-09-15 | **护甲等级批(用户拍板登记,与战斗结算 / 难度曲线与Boss / registry 同批,不动代码)**:敌人表与主角表 schema 各增 armor_class(护甲等级)字段(取值域随掷点形式定稿,provisional);三敌种表补护甲等级列(行值未定);护甲等级(数值轴)与护甲类型(克制属性轴)命名区分成文;结构冻结清单"零随机"措辞按新口径修订——本系统自身语义零随机不变,掷点随机在战斗结算换算层按封闭随机流消费、可回放契约 = 同种子同输入逐位复现;待拍板新增"护甲等级行值未定"条目 | -| v0.4 | 2026-09-16 | **护甲等级掷点批·定稿落地(与战斗结算 / 难度曲线与Boss / registry / 切片代码同批)**:armor_class 域定稿 [0, 999](缺省 0 向后兼容);主角行值 10(暂定)、三敌种首关行值 0(暂定)——"行值未定"改"暂定值 + 待办",敌方正式行值归怪物设定批(第一关怪物 AC 相对较低,值待怪物设定投值,登记待办清单);敌种表护甲等级列同步落值;调参表两行改域与现行值 | -| v0.5 | 2026-09-16 | **敌人技能池批(用户拍板,设计权威 proposal-skill-pool.md〔提案已吸收退役 git a6833b6a——现行事实源=敌人系统.md 技能池节〕 v1.0;与战斗结算 / 增益状态 / 难度曲线与Boss / 战斗表现 / HUD框架 / registry / 切片代码同批)**:行为环章节整体退役——固定出招剧本、拍枚举(攻击/蓄力/重击)、环指针、同种锁步、heavy_multiplier 字段全部废除;技能池语义成文(三层对象〔技能行/池模板/实例池〕、技能行词汇表、池构成纪律、两道闸〔全技能各自冷却 + 保底〕、开轮摇号时序、死亡作废、独立子流);蓄力语义改写(纯攻击增益技、与重击无组合语义——纠偏二;施放行继承零兑付伏击);Boss 专属身份改专属池承载;意图呈现改三档可见性(普攻零表示 / 特殊技类型级预告 / 暴击掷点层);敌人表 schema pattern → pool;调参表增技能表与池 EV 锚(含闸长期速率实测登记);验收标准按摇号口径重写 | -| v0.6 | 2026-09-17 | **文档降级为模板批(用户拍板,与难度曲线与Boss / 战斗结算同批)**:数值纪律定稿——本文只锁字段、取值域与规则,全部具体行值(敌种表池权重 / 护甲等级行值 / 两道闸表值 / 伏击每层附加与上限 / 技能行倍率与冷却 / 主角三字段 / 三敌种行值与池 EV 实测读数)自本文移除、一律读配置表(切片 `data/tables/` 与 registry);调参表三表删除"现行值"列改纯 schema 模板;伏击公式与验算改符号化(a = 每层伏击表值);验收标准同步去数值。背景:切片 `.tres` 数值压缩批后文档行值已滞后,双写失同步被实证 | -| v0.7 | 2026-09-17 | **数值纪律收口批:正文与调参表 knob 现行值改指路存根(事实源 `data/tables/*.tres` 与 registry),2 处失同步值修正**——共享技能表示例"熊地精 9×2=18"改符号化"基线 A × 技能倍率 M(行值读 enemy.tres / skills.tres)";蓄力语义"施加'攻击×2'状态""×2 遇 ×2 = ×4"改"施加 empower 状态(幅度读 status_effects.tres)",两层乘法组合语义保留符号表述 | -| v0.8 | 2026-09-18 | **营地扩展前置批 + 护甲类型重配(用户指令,与战斗结算 / registry / 切片代码同批)**:① hero 表新增 armor_type / attack_type 两根可配置轴(缺省 light / normal;主角字段表同步两行)——护甲类型轴入矩阵消费面(敌方技能攻击类型轴未开前数值中性),基础攻击类型轴 = 量与类型抽象分离的营地换型落点;② 敌种护甲类型行值重配(数据面):关卡 1 全部轻甲(食人魔酋长 heavy→light、熊地精两行 ward→light),关卡 2 除 Boss 蛛化卓尔精灵 heavy→ward(魔法甲)外全部轻甲(熊地精四行 ward→light,巨蜘蛛既有 light 不动);现行克制三角读数效果 = L1 克制轴中性化、L2 仅 Boss 战非中性(魔法矢 ×150 / 穿刺弹 ×50 对 Boss) | -| v0.9 | 2026-09-18 | **甲效矩阵用户调参批同步(零代码,事实源 settlement.tres 五格改值——详见[战斗结算](战斗结算.md) v0.15)**:主角字段表 armor_type 行注记归因改述——轴休眠的理由由「敌方攻击恒 normal 档故中性」(依赖普通行恒 100 的旧数值结构)改为「矩阵消费面 = 主角侧、敌方攻击不查克制矩阵」(结构性,与数值无关),轴生效仍待敌方技能攻击类型批。历史注记:v0.8 行「魔法矢 ×150 / 穿刺弹 ×50 对 Boss」与当时矩阵(穿刺×魔法甲=150 / 魔法×魔法甲=50)正反互倒,系当批笔误,按历史不改写留档,正确读数见战斗结算 | -| v0.10 | 2026-09-19 | **技能池新效应词汇批(用户拍板——设计权威 proposal-status-vocabulary.md〔提案已吸收退役 git a6833b6a——现行事实源=敌人系统.md 词汇表/增益状态.md〕 v1.0,与 战斗结算 / 增益状态 / registry / 切片代码同批)**:① 技能类型枚举三→四(+妨害 debuff——对主角施减益的 0 伤害施放动作,字段复用 buff_ref/buff_duration,落点由状态行 target_side 路由〔增益 → 敌方侧 / 妨害 → 主角侧,施放类 side 守卫加载拒绝〕,执行与增益技同族施放行语义——不掷不折不兑付伏击);② 伤害技新字段 rider_mult(必中附加分量——"固定值伤害"改形:固定值不随基线缩放与共享技能表前提冲突,必中小倍率承载"躲不掉的稳定伤害");③ 池构成纪律 +每池妨害 ≤1;④ 意图三档特殊技预告扩三族(攻击系 ⚔ / 增益系 ✦ / 妨害系 ☠);⑤ 三词收敛两词——多段命中经用户拍板退役(无防御磨损体系,无对照机制),P1 字段位「命中段数」保留;⑥ 实装面 = 仅 L2 Boss 蛛化卓尔精灵(venom_burst + rider_mult 0.75;新行 web_snare 蛛网束缚 debuff→off_guard,首发载荷 = 失衡〔用户拍板〕,乏力 sapped 留作第二词汇),其余敌种不动 | -| v0.11 | 2026-09-20 | **伏击单轮上限删除批(用户拍板——与 战斗结算 / 地图战斗资源 / 难度曲线与Boss / registry / 切片代码同批)**:① 伏击节上限段与溢出可见行删除,一轮踩雷数由行动点预算天然封顶成文;② 字段表 advantage_per_round_cap 行删除(原 0 = 免疫伏击语义作废);③ 结构冻结联动纪律去单轮上限 × 攻击基线、数量 × 上限两条;④ 验收标准伏击授予与表校验条同步 | -| v0.12 | 2026-09-20 | **格面资源八型批(用户拍板——与战斗结算 / 地图战斗资源 / 行动经济 / registry / 切片代码同批)**:① 伏击节整体退役改写(复利集中单血条与群伤奖励双重不对称,用户裁决);② 责任表/结构冻结/验收标准的伏击词条目拆除;③ 群伤负向现况 = 警觉(敌方护甲等级 +1),定义与承载移交增益状态 | -| v0.13 | 2026-10-05 | **技能池执行批(迭代14④——D1-D8 全裁零待裁,与 skills.tres/enemy.tres/registry 同批)**:①池构成表 8 敌种全覆盖(补 L2+L3 五敌种行:巨蜘蛛/蛛化卓尔精灵/灰矮人/钩爪恐魔/石君王——池构成轮廓+定位列,权重数值不登)+护甲列改读表口径(失同步欠账清偿);②Boss 句改三代错峰口径;③意图呈现节补半血解锁弹出规格句(**Boss 半血解锁新独占伤害技**:字段 unlock_hp_pct〔1,99] 缺省无=无门槛/单向闩/双面过滤/保底不逼锁定/解锁出一次归因行+一次性技能名 toast——D8 只报名不报数值零演出;三 Boss=震地怒击 ×2.5/CD4·遏毒 ×2.0/CD3·岩崩 ×2.5/CD4 案甲 provisional 归调参);④首拍加权取消〔D2〕杂鱼纹理注销不立文 | -| v0.14 | 2026-10-06 | **事件发射点登记(内容数据驱动扩展批)**:半血解锁判定点升级为通用事件 `enemy_hp_threshold` 发射点(对所有带 unlock_hp_pct 字段的敌人逐个发射——非 Boss 专属,Boss 语义留给订阅者条件判定;本批零订阅者,登记归效果引擎事件词汇 16 发射点之一,后续内容批随批接线)。零行为变化。 -| v0.15 | 2026-10-07 | **行集混编口径批(敌人表行集多行批·组 A 先行——与 难度曲线与Boss / registry / 06 清单 / 切片代码同批)**:①「每个坐标只出一种敌种」规则改写为行集构成纪律三条(行集内 enemy_id 唯一 / 同坐标多行文件内相邻且行序 = 声明序 = 生成序 / 行集实例总数 ≤ 4〔= 各行骰后数量求和,行数不设上限,单行数量域 [1,3] 不变、UNIT_COUNT_MAX 语义改单种数〕)——同坐标多行混编合法(P1 甲 + P4 乙用户裁:Boss 行集同样放开);②开战生成节改「取出整个行集逐行实例化」口径(生成序 = 文件行序即契约)+ 区间掷定改按行各掷一次(单行行集掷定次数与既有逐位一致——零内容期随机流零变化);③「敌方效果对全体生效」前提句去同种假设(效果按存活单位逐一生效);④结构冻结「每坐标恰一敌种」换代、验收标准开战生成与表校验两条同步。知情代价登记:Boss 行集多行后开战叙述取首行 display_name、Boss 节点遭遇骰读首行数量区间(= 全行集骰域)——两读数面随批写出口报告。零内容投放(P3 丙):本批表内容不变,首个混编行归后续内容批 | -| v0.16 | 2026-10-09 | **文档正确性审查批(用户令——状态记录与证据对齐)**:①不负责表「遭遇构成与跨战斗血量保留→关卡节点地图」拆分——跨战斗血量保留归冒险结构生命账本;②敌种表引言「首发敌种共三种」与表内八行不符——补「L2/L3 内容批扩至现行八种」;③P2「精英 / Boss 遭遇编码位」行收口——不设编码位(同层多遭遇由节点编号消解,关卡节点地图 v1.0⑥ 裁决),「随定稿强制核对」前置已解除;④结构冻结节「见待办」悬空指针改指 06-待办清单。注:版本表 v0.15 居首、v0.14/v0.13 在尾的既有乱序不动,另行列呈报。 | -| v0.0 | 2026-10-11 | 术语统一补扫批(危险格更名收尾,2026-10-11):头部「惊动危险格」表述换代 | -| v0.17 | 2026-10-12 | **玩家向显示名跟随批(锻造工坊裁决会话 8a 连带·D 项执行)**:enemy.tres 字段表 armor_class 行「ac_up(护甲强化)」→「ac_up(盾牌加护)」——`reward.tres:22` / `status_effects.tres:18` 同批改名(用户裁口径=临时叠层 AC 状态不该叫"护甲";附带约定「加护」=AC 判定层、「护盾」=吸收层不得混用);字段语义与数值零改动 | -| v0.18 | 2026-10-14 | **迭代 24 反哺落文批(实现报告 §六,用户裁「全部按呈报落文」)**:①调参表敌人表字段集增 `attack_type` 行(枚举 {普通, 穿刺, 魔法}、缺省普通、消费面=敌方技兑付查克制矩阵)+ 主角表 armor_type 行休眠注记换代(矩阵消费面双向在役,现役敌方全 normal 档,三甲型读数差 重甲 −1/魔法甲 +1/轻甲 0);②Boss 专属身份节「三代错峰」口径扩为**技能错峰两轨**(Boss 独占技轨 + 普通敌错峰轨,N2 毒吐/盾击投放实录);③敌种表巨蜘蛛族+毒吐、灰矮人族+盾击两行池构成列随 N2 变动;④敌种表增 hobgoblin 缺口登记注(有数据行 (1,3)、无立绘、不在敌种表——已知缺口归敌种内容批)。机制零改动(N2/N3 实现事实登记) | -| v0.19 | 2026-10-15 | 简明技术中文用语规范(用户令):词面修正 8 处——设计目的「敌人若干」改「敌人一至四个(数量随遭遇行集骰定,见开战生成节)」;「报错止动」2 处(行集构成纪律/验收标准表校验)改「返回错误并止动」;「不得混用」2 处与「保底不得逼出未解锁技」改「禁止」;P1 单体寻址「随批裁决」改「顺带裁决」;P2 编码位「已收口」改「已完成」。机制与数值零改动 | diff --git a/design/gdd/systems/排雷循环/地形变异.md b/design/gdd/systems/排雷循环/地形变异.md index b0d665e4..4587e54b 100644 --- a/design/gdd/systems/排雷循环/地形变异.md +++ b/design/gdd/systems/排雷循环/地形变异.md @@ -155,18 +155,3 @@ region 型变异是「格子级」的:布置段往候选格域写格子快照 - 布置域:变异格全在初始展开区外(伤害型 closed_only 由设置顺序结构保障)且不吃危险格;每图至多一种类型;连通片 ≤ pack_max。 - 配套义务闭环(**已作废,2026-10-03 终裁**):原「定稿批须含反制兑现条目否则验收不通过」随反制道具配套义务一并作废;counter_items 恒空为合法态。 - 全局作用域型(2026-10-04 首发批):替换制生效——Boss 图恰一行整图变异+零格子级变异标记;普通图 region 路径逐位不变(同种子布置/摇号快照与批前基线逐项比对);off 态零扰动(effect_value=0 资源摇号与无偏斜逐位相同,白名单三行任何状态逐位不动);L1 Boss 零全局变异;Boss 图全局池空回落 region;全局取用零取号(确定性,不消费布置随机流);资源面偏斜正向池合计恒 77。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v0.1 | 2026-09-15 | 自归档 GDD 压缩改写 | -| v0.2 | 2026-09-15 | 雾格残留清理:删除上一版设计遗留的「待拍板」失义条目十条;变异框架本体不变 | -| v0.3 | 2026-09-20 | 首批类型定稿批:四类型两轴×两关(荆棘丛/藤蔓缠绕/岩浆/烬覆)落地;机制枚举化(effect/trigger/placement 三枚举 + 跨字段互锁);布置段改排战斗初始化第 4 步(2026-09-19 用户拍板棋盘设置顺序);biome 系命名退役对齐 board_type 词表;反制兑现与全局作用域改排 Alpha;岩浆/冰冻旧占位名退役(冰冻退役、岩浆落位第二关) | -| v0.4 | 2026-09-20 | **第三关内容批(与切片代码 / registry / 03-内容规模 / 棋盘生成 / 难度曲线与Boss 同批)**:类型清单加第三关两行——落石(伤害型 flat_damage 3)+ 矿尘(信息型 hide_number 数字遮蔽),凑齐两轴 × 三关(unlock_level 3、地形 deep_underdark);布量走既有公式(第三关自动 9%,零新配置);反制道具兑现维持改排 Alpha(counter_items 字段位同批预留);调参表直伤量行随批补落石 3。行值全 provisional 归 难度曲线与Boss | -| v0.5 | 2026-09-21 | **变异布置基数修正批(用户试玩反馈「小图变异格非常多」+基数假设实测证实后拍板)**:数量公式百分比基数由总格数改候选池格数(安全格 − 初始展开区,即实际可挖格)——实测初始展开均值占全板 56–67%,旧基数使有效密度膨胀 4–6 倍(L1 10×10 板配置 5% 实际 30.1%,极端板可挖格 100% 覆盖);percent 语义 = 占可挖格比例,关卡递增由 per_level_bonus 绝对格数承载;表值零变更(provisional 归 难度曲线与Boss 调参批重标,正式重基线同批) | -| v0.6 | 2026-10-03 | **反制道具配套义务作废批(2026-10-03 用户终裁——层级错配失败设计)**:①负责表义务行+§反制道具配套义务节改作废注记并附终裁理由(同调位反制件=冒险周期常驻资源对抗关卡周期局部威胁;变异=受控纯税现状维持);②counter_items 字段保留恒空=合法态,承载形态待迭代 12 双层 BD 调研重定(变异应对若做只挂局内);③依赖表秘宝行/P1P2 后置表 Alpha 行/验收「配套义务闭环」条同步作废;④批位移迭代 12(调研前置后重新立项)。连带 秘宝.md v0.8 同批;范围裁定注记见 roadmap 迭代 11+ 行(原 06 条目已收口移除) | -| v0.7 | 2026-10-04 | **全局作用域变异首发批(迭代 14 ③号卡——需求卡片裁决 P1-P8+Q1-Q4 全按推荐案)**:①类型清单加行贫矿脉(scope=global 首发型=案A 资源面·微贫向偏斜,effect_value=30 provisional);②新增 §全局作用域型 语义节(整图承载/替换制/兜底回落/恒定制/资源面偏斜口径/三层预告);③「每图一型」整图推广=普通图 region、Boss/精英图 global;④候选池门控扩第三维=节点身份(global 行仅 boss/elite 入池,普通节点静默跳过;elite 前向词位零表行);⑤布置段节补全局决议前置于资源格设置(数据依赖——偏斜旋钮先于摇号定型,零取号);⑥P1/P2 表 Alpha 行换代已落地(撤 2026-09-19「留 Alpha 再设计」挂起——P1 裁决);⑦调参表+验收标准+影响面随批;⑧呈现三层承载归 HUD框架.md 同批(横幅+常驻角标+手册行);⑨遗留知情代价:迭代 12 四件地形应对件在 Boss 图无的放矢(替换制无地形格——Q3 知情代价,registry/调参日志登记) | -| v0.8 | 2026-10-04 | **文案常规化修订(用户人闸反馈)**:§全局作用域型 玩家体验句俚语表述(「这层奶薄、枪很肥」)改常规描述——玩家可见三层文案同步(横幅/角标/手册,代码同批);机制与数值零改动 | -| v0.9 | 2026-10-09 | 文档正确性审查批(定点):P1/P2 表全局作用域行「(M-4)」裸标签按 2026-10-09 里程碑口径改「(Beta 阶段,未排期)」;行其余部分不动(批次登记事实保留) | -| v1.0 | 2026-10-15 | 简明技术中文用语规范(用户令):词面修正 3 处——候选池门控节「不报错、不警告」改「不返回错误、不警告」;零特判原则节「变异不得改写扫雷规则本体」改「变异禁止改写」;验收标准全局作用域型条「快照对拍批前基线」改「快照与批前基线逐项比对」。机制与数值零改动 | diff --git a/design/gdd/systems/排雷循环/排雷玩法.md b/design/gdd/systems/排雷循环/排雷玩法.md index bec4278d..d4500571 100644 --- a/design/gdd/systems/排雷循环/排雷玩法.md +++ b/design/gdd/systems/排雷循环/排雷玩法.md @@ -240,16 +240,3 @@ ## 待办 本系统待办条目已统一收编至 [06-待办清单](../../06-待办清单.md),本节不再逐条登记。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v0.1 | 2026-09-15 | 自归档 GDD 压缩改写 | -| v0.2 | 2026-09-15 | 雾格残留清理:关闭「待拍板」三条雾失义登记(连锁开雾格与雾内旗恒不中、开格事件的变异标记透传、四格态中的两个雾态)——现行连锁与旗判定口径已按"全部安全格"写在正文,开格事件仍携带随格只读的变异标记(通用变异框架保留),格态呈现收窄为已开 / 未开两态。规则本体不变 | -| v0.3 | 2026-09-15 | **格面资源批(用户拍板四点)**:① 初始展开格定名**封锁格**(已开、计入清图进度、恒无格面资源、不再有任何加成),铁律表"无奖励"改"无格面资源";② 挖开格事件"奖励资格"字段改"格面资源资格"——安全格与危险格恒有(危险格不再恒无),封锁格恒无;③ 旗生命周期补结算队列口径:标旗 / 撤旗都是动作,轮末经战斗结算抵消过滤(标旗后被撤旗不兑付、行动点不返;开格不可撤);④ 标错惩罚条目与 P1 后置删除——惩罚已定为该安全格格面资源的负向兑付(极性矩阵,归奖励道具经济 / 战斗结算),本系统只报"标空"事实;⑤ 清图呈现口径注记:剩余安全格计数即"剩余未探索安全区域"。玩家说法"失控反噬"随三选一反噬下线改"控制失败" | -| v0.4 | 2026-09-17 | 数值纪律收口批:正文与调参表 knob 现行值改指路存根(事实源 data/tables/*.tres 与 registry),0 处失同步修正——动作价面值改「按标准动作价计费(价目见 action_economy.tres)」口径,连锁免费、移动免费等结构语义保留 | -| v0.5 | 2026-09-19 | **插旗不可逆批(用户拍板全套落地,2026-09-18 提案转正)**:① 挖旗格放行——挖的合法对象去掉"无旗"前提,旗格直挖被受理、旗随挖掘消失、该旗轮末不再上报判定;② 拔旗动作退役——意图目录删 flag_pull,动作表与拒绝原因清单删对应项(flag_absent);③ 旗生命周期改写:旗无任何移除手段、纠错路径 = 挖开(兑付改判四情况归战斗结算 v0.18);④ 验收标准"挖有旗格被拒"改"挖旗格放行"。冒烟 327 项 0 失败(四情况探针 `_smoke_flag_irreversible_quadrants` 在案) | -| v0.0 | 2026-10-11 | **术语统一批(全库危险格/整图/专长凭证更名,2026-10-11 用户裁)**:首节定义句换代——对内名「雷格」与界面名「惩罚格」统一为「危险格」(怪物巢穴保留为危险格类型名、简称巢穴);机制零改动 | -| v0.6 | 2026-10-15 | 简明技术中文用语规范(用户令):词面修正 1 处——初始展开铁律表「无格面资源」行「下游不得对它们做任何兑付」改「禁止下游对它们做任何兑付」。机制与数值零改动 | -| **v0.7** | 2026-10-19 | **系统资源定名传导批(用户裁,承接 42d64ec2/17ef0180)**:「账本归行动经济」→ 系统资源归行动经济;「请账本扣费」→ 请行动经济扣费——跨文档引用一律「规范名+指路 01-核心循环「系统资源」节」,定义源单点。机制与数值零改动。 | diff --git a/design/gdd/systems/排雷循环/棋盘生成.md b/design/gdd/systems/排雷循环/棋盘生成.md index d9e3c002..819dd426 100644 --- a/design/gdd/systems/排雷循环/棋盘生成.md +++ b/design/gdd/systems/排雷循环/棋盘生成.md @@ -232,14 +232,3 @@ - R₀≤cap 闸(2026-10-05 初始展开收窄批):每张出图自然 R₀ ≤ 该行 r0_max_cap(合法板),或带非法产物标记(accept_worst 诚实降级);闸触发次数入指标集 r0_cap_rejected。 - 剃雷域参数化(同批):剃雷域=出生中心切比雪夫 ≤1+shave_ring_radius 的方域,出图 ring_removed ≤ 域内候选危险格数 (3+2r)²−9;同种子布雷序列与收窄前逐位一致(零 RNG 消费变化)。 - 表实一致:配置表字段定义与 `data/schemas/board_gen_table.gd` 一致。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v0.1 | 2026-09-15 | 自归档 GDD 压缩改写 | -| v0.2 | 2026-09-15 | 雾格残留清理:删除「待拍板」五项旧版失义条目(雾参数两字段与雾域跨字段校验、双判据与 inferability_core、雾相关生成约束、雾致清图预算增量两指标、黄金图向量的 core 整数对);验收标准「表实一致」条去掉指向该节的清理登记。参数表、五阶段管线与三分支出图等现行规则不变 | -| v0.3 | 2026-09-17 | 数值纪律收口批:正文与调参表 knob 现行值改指路存根(事实源 data/tables/*.tres 与 registry),3 处失同步修正(雷密度、可推理率及格线、生成尝试上限——文档面旧 provisional 值与 board_gen.tres 现值不一致,改指路);成本闸 16384 改标注「结构护栏常数,登记于 registry board_gen_table 条目」,其余引用处指路;调参表「现行值」列整列指路化 | -| v0.4 | 2026-09-20 | **第三关内容批(与切片代码 / registry / 03-内容规模 / 难度曲线与Boss / 地形变异 同批,参数行值零改动)**:图类型词表 v1.0 → v1.1,增补第三值 deep_underdark(灰矮人矿道方向);正文词表句与调参表 board_type 行随批同步(L3 = deep_underdark)。[地图战斗资源](../战斗循环/地图战斗资源.md)的图类型差异化插槽句不随批动——clear_deep_underdark 启用仍为预留 | -| v0.5 | 2026-10-05 | **初始展开收窄批(迭代14①号卡 T7——甲乙混合,用户裁 D1-D5+S1 方案A)**:①反退化规则表「先布后删」行换代(剃雷域=出生 3×3∪外扩 r 环参数化,全域 flood 剃雷退役)+新增「R₀≤cap 重掷闸」行;②调参表 +2 行(shave_ring_radius [0,2] 现行 1 / r0_max_cap 护栏 [9,半板] 现行 45/43/51/59——10×10 经 S1 停机呈报用户裁上调 30→45);③验收标准 +2 条(R₀≤cap 闸 / 剃雷域参数化+ring_removed 量级);④改后结构读数入 registry initial_expansion_narrowing 条(R₀ 均值 39.7/37.9/42.8/46.6,收窄自 68.6/83.2;雷密度 19.2-21.6% <25% 相变线;inf 全行达标);玩法侧零改动(排雷玩法「初始展开恰等」验收原样为真);裸数字截断路否决退役(D3)不立文 | -| v0.6 | 2026-10-15 | 简明技术中文用语规范(用户令):词面修正 4 处——设计目的「终局不得不猜的一格」改「终局只能猜的一格」(清「不得」词面误中,语义不变);反退化规则表「开局白给板拒绝」行「不得覆盖」改「禁止覆盖」;生成重试节「质量分不得掩盖功能残废」改「质量分禁止掩盖」;P1/P2 表划线条目「已收口」改「已完成」。机制与数值零改动 | diff --git a/design/gdd/systems/排雷循环/行动经济.md b/design/gdd/systems/排雷循环/行动经济.md index efc88fb2..79836f41 100644 --- a/design/gdd/systems/排雷循环/行动经济.md +++ b/design/gdd/systems/排雷循环/行动经济.md @@ -258,23 +258,3 @@ ## 待办 本系统待办条目已统一收编至 [06-待办清单](../../06-待办清单.md),本节不再逐条登记。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v0.1 | 2026-09-14 | 自归档 GDD 压缩改写 | -| v0.2 | 2026-09-16 | AP 压速批文档面值同步(用户拍板 8→6,削标旗 rush 单轮兑付吞吐为无伤通关根因的主阀门):ap_per_round 与 rap_refresh_cost 现行值 8→6,随动保持"满预算停手 = 恰好一刷"耦合;数据表与 registry 已同批改,本批补文档面正文两处与调参表两行 | -| v0.3 | 2026-09-17 | 数值纪律收口批:正文与调参表 knob 现行值改指路存根(事实源 data/tables/*.tres 与 registry),0 处失同步修正——价目改「统一价目 / 标准价(见 action_economy.tres)」口径,每轮点数与刷新门槛改表值指路;调参表「现行值」列整列指路化;注记 refresh_cap_per_round 与表字段 refresh_max_per_round 命名不一致(字段名对齐待批)。顺带:P0 闭环「扣 1 点」改「按价扣费」;终扫补两处漏网——巢穴约束例句「每轮花 2 点重插」改「重复计费重插」、P0 闭环「每轮至多 2 次」改刷新上限读表 | -| v0.4 | 2026-09-19 | 插旗不可逆批(用户拍板全套落地):拔旗动作退役——设计目的/统一价目/价目表/布尔入口清单/P0 闭环/调参表六处删"拔旗",flag_pull_ap_cost 字段随 schema 与 data 表同批删除;插旗行补"旗 = 一次性承诺、纠错 = 直接挖开"口径 | -| v0.12 | 2026-10-12 | **迭代 22 反哺落文批(实现报告 §三⑦,用户裁「落文」)**:「停手与储备行动点」节补转存率参数化注记——`finish_round_stop(transfer_pct)` 缺省 100=1:1 逐位同旧;秘宝「储备罐」注入 125=1.25:1(整数除法向下取整,每 4 点剩余 AP 多转 1)。机制结构零改动(参数面已随迭代 22 T3 在役) | -| v0.5 | 2026-09-20 | **格面资源八型批同步(用户拍板——与敌人系统 / 战斗结算 / 地图战斗资源 / registry / 切片代码同批)**:① F1 条款 3 改写——原"敌方伏击暴露不等式"随伏击机制退役作废,惩罚当量对账模型归难度曲线与Boss 调参批重立;② 新增「下轮行动点修正」节——action 型格面资源经 queue_ap_delta 排队、下一轮开始兑现(基线 ap_per_round + 净值、下限 0、兑现后清零),跨轮携带量口径改写(RAP 唯一显式携带资源 + 一次性修正队列);③ 节拍不变式(满停一轮 = 恰好一刷)补扰动注记 | -| v0.6 | 2026-10-01 | **失同步清偿 + 跨冒险行动点加成轴节(迭代 10 奖励重构批——与冒险结构 / registry 同批)**:①失同步项清偿——ap_per_round 真实配置 = **8**(action_economy.tres,Package B 2026-09-22 批 6→8 回调,表内批注在案);v0.2 批 8→6 系最后一次文档面记录,此后配置面单独回调未回写本文,本批补记(rap_refresh_cost 与 ap_per_round 的「满预算停手 = 恰好一刷」节拍耦合以现行 8/8 维持);②新增「跨冒险行动点加成轴」节——统一冒险加算区扩第四轴(行动点),经战斗开始入参覆盖值通道、只在每场战斗开轮首轮兑现一次;价值锚 = 冒险表 bonus_ap_flat / bonus_cap_ap(迭代 10 三选一 AP 件,全冒险 2 次上限),调参表补跨表行 | -| v0.7 | 2026-10-03 | **两 AP 件兑现通道注记(迭代 11 第①批同调实施批——需求卡片 §十连带)**:同调目录两 AP 件兑现通道落位——①工兵晨令(被动·限时)=战斗开始首轮 queue_ap_delta 入队 + 轮始段续队(前 effective_rounds 轮每轮 +1,表值化 P4 甲),复用「跨冒险行动点加成轴」同族排队通道;②掘进蓄能(主动·充能)=grant_ap 当轮加量(同挖掘期 ap_grant 通道),受理闸=战斗域安全开格积点(charge_n 格/点);账本零新机制(queue_ap_delta/grant_ap 两既有原语),充能扣减经共享账本(attune_charges)同引用直改 | -| v0.8 | 2026-10-05 | **挖掘风险不等式判式换代(迭代14②号卡 T3——与战斗结算/难度曲线与Boss/registry 同批)**:F1 条款3 重立——三层口径并行立(条款2 标中旗锚不动/条款3 聚合健康式「(1−ρ̂)E_dig−ρ̂V_mine≥0」只留下限 0/旗边际引理+条件二旗溢价「E[标中兑付]≥(1+δ)·E_dig」δ=0.25 provisional 形态 a 兑付溢价);条件二落文按登记已知破·T4 机制闭合;β 比值带 [1.2,2.5] 判读入文(u=3 登记态微破下限);η 降格读数入文(分母=全部插旗数);推导节变量表换代(E_dig/V_mine/ρ̂/β/δ 五锚);旧界形式与「惩罚当量对账模型归调参批重立」挂账句全部清偿 | -| v0.9 | 2026-10-07 | **生命周期轴裁决随批(框架现行事实源=核心循环「生命周期轴」节同批落文)**:「每轮预算与价目」节首补 AP 两账定义段——AP 上限=冒险级角色属性(开局基值+冒险中秘宝/属性提升抬高,兑现细则归「跨冒险行动点加成轴」节)、当前 AP=回合级池(每轮灌满、归零收轮,本账本只管后者);既有规则面零改动 | -| v0.10 | 2026-10-09 | 文档正确性审查批:巢穴约束表「资格认危险格实例」行重复短语清除(「堵死重复计费重插刷收益的农场」一句两写删一) | -| v0.11 | 2026-10-09 | 文档正确性审查批·独立复核(worktree docaudit-2026-10-09):依赖与输出表排雷玩法行「挖/插/**拔**的调用方」退役动作残留清除——拔旗已随插旗不可逆批(2026-09-19)退役,v0.4 批六处删「拔旗」时本处漏网 | -| v0.0 | 2026-10-11 | 术语统一补扫批(2026-10-11):「巢穴」机制表述两处换代危险格 | -| v0.13 | 2026-10-15 | 简明技术中文用语规范(用户令):词面修正 3 处——推导节条件二「登记态(落文时点)」改「登记态(写入文档时点)」、「按…纪律落文」改「按…纪律写入文档」;调参表注「任一动作成本不得超过每轮预算」改「禁止超过」。机制与数值零改动 | -| **v0.14** | 2026-10-19 | **系统资源定名传导批(用户裁,承接 42d64ec2/17ef0180)**:定义句「这本账」→ 行动点这一笔系统资源;表行「行动点账本」→「行动点(当前池)」;「AP 分两本账」→ 行动点分两笔;扣费入口/事务/休眠表述统一——跨文档引用一律「规范名+指路 01-核心循环「系统资源」节」,定义源单点。机制与数值零改动。 | diff --git a/design/gdd/systems/表现与支撑/HUD框架.md b/design/gdd/systems/表现与支撑/HUD框架.md index 18d9a2fc..2d2cd3af 100644 --- a/design/gdd/systems/表现与支撑/HUD框架.md +++ b/design/gdd/systems/表现与支撑/HUD框架.md @@ -288,28 +288,3 @@ HUD框架站在玩家与全部玩法系统之间:挖掘期它是输入的翻 ## 待办 本系统待办条目已统一收编至 [06-待办清单](../../06-待办清单.md),本节不再逐条登记。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v0.17 | 2026-10-13 | **迭代 21 反哺⑤落文(用户裁「按呈报落文」)**:核心规则新增「营地覆盖层:四柜台并排(程序占位)」小节——树淬炼/锻造工坊/秘宝匣/图鉴四柜台结构实态登记(迭代 21 落地),视觉与布局终稿归 HUD 营地视觉批(未立项);本篇原无营地柜台登记面,随批补缺。机制零改动 | -| v0.1 | 2026-09-15 | 自归档 GDD 压缩改写 | -| v0.2 | 2026-09-15 | 雾格残留清理:关闭「待拍板」五条雾失义登记(雾图例条目、雾首遇一次性提示、四格态中的两个雾态、雾纹带与已开雾格 tint 残留、雾区全开合并域完成信号)。现行口径 = 格态两态一眼可辨(已开 / 未开)、图例面板只载现行格态与变异语义;通用变异框架的纹带形状通道保留为未来变异类型的呈现位 | -| v0.4 | 2026-09-16 | **敌人技能池批(与敌人系统 / 战斗结算 / registry / 切片代码同批)**:敌人卡义务改写——行为环环点拆除(proposal §2.4),意图徽标语义改「本拍摇定结果的动画占位」(普通攻击零表示 / 特殊技类型级提示两型:攻击系 ⚔ / 增益系 ✦),护甲行(护甲类型 + AC)保留常驻;敌方增益显示(蓄力/硬化)入敌卡状态行 + 状态槽图标键增 empower/fortify 两键(状态表九行全映射);呈现快照敌人字段消费面同步(摇定动作三字段 + effects,池与权重不投影);上游敌人系统行与验收条目同步 | -| v0.3 | 2026-09-16 | 格面资源批 UI 欠账收口(可选类道具与其轮末窗口已随 2026-09-15 代码批删除):战斗屏布局五区 → 四区(删 E 道具栏行,D 区加宽至约 1036px 并同步装板校验变量);删道具窗口弹层条款(原位点亮、非模态不入栈)、P0 闭环窗口锚点条目、「道具窗口原位点亮 / 至多选一件 / 禁用件带原因 / 空库存不弹窗」验收行;依赖与输出表的窗口选择提交、道具使用窗口呈现、库存查询义务删除或改述为现行口径(奖励身份投影经 `query_identity` 只读回调,零直读);关卡末清库反馈义务改载秘宝背包,随秘宝 P0 落地。秘宝预留义务行与「待拍板」登记保持 | -| v0.5 | 2026-09-17 | 数值纪律收口批:调参表标注文档自持口径(无表承载常量的唯一事实源声明) | -| v0.6 | 2026-09-20 | **敌人卡形态裁决收口批(与 battle.md / 战斗表现 / 06 清单同批,台账 99)**:全站桩形态拍板——B 区主角与敌人均为无框立绘+底座、状态小图标挂血条正下方,英雄卡/敌人卡退役;B 区行、敌人呈现义务行(载体由卡改立绘,意图占位/共享层数各立绘同值/死亡灰化退场等义务面平移)、下游战斗表现交付行、就地更新示例措辞四处同步;攻击值等规划数据仍归 C 区数据框(C 区不动)。呈现快照数据面零改动(消费字段不变,只换呈现载体) | -| v0.7 | 2026-09-20 | **表现层三批落地 + 义务清单补行(代码同日三批:样式收敛 / 站桩改造 / 结算演出链)**:呈现义务来源清单补「关卡节点地图」行(节点链进度常显 + 选路覆盖层只读呈现——此前漏登记);新增结算演出覆盖层(跨区弹道/光带载体,兑现演出因果可视);减动效承诺落地(UiKit.motion 单点包装全部呈现层 tween 时长,开启时长减半、可挖域呼吸停格;切片期入口 = TunePanel 开关,正式设置层归设置批)。代码侧站桩载体(StandeeView)与卡片退役随 v0.6 裁决执行 | -| v0.8 | 2026-09-23 | **停点前移批(冒险入口流程倒置修复,用户 2026-09-23 拍板;上位裁决 = 棋盘/战斗舞台 Node2D 迁移批(已执行完毕,git 历史可查),代码实装另批并行)**:① 战斗屏布局四区 → 三区——删 A 区关卡进度条行(LevelStripView 退役删除,节点链进度呈现移出战斗屏、只留关卡画面);C/D 区纵向 520 → 548;装板校验变量与实算同步(棋盘区高 504、可用高度 488);② 呈现义务来源清单「关卡节点地图」行改承载口径——节点链进度由关卡画面选路覆盖层节点态承载(暗金已过 / 金当前 / 候选下一跳通道亮金 / Boss 旗朱描边),不另设进度条组件;③ 「四区」措辞全线改「三区」(负责表、节题、结构冻结、验收、下游战斗表现交付行),双舞台常驻语义不动。**批内代拍板三项已追认(2026-09-24 用户确认)**:① B/C/D 字母保持不重编(字母是跨文档/代码注释的承载标识);② A 区 28px 纵向空间划归 C/D 底行(520 → 548;1920 档换算仍归表现层升级批);③ 关卡画面进度呈现由选路覆盖层节点态直接承载、不另设进度条组件 | -| v0.9 | 2026-09-23 | 渲染技术注记(棋盘 Node2D 迁移批 Phase A,代码实装同批):棋盘本体 Node2D 化——BoardView 内部由 GridContainer+逐格控件改为 Control 壳 + SubViewport + Node2D 世界,类名/信号/公共方法契约不变、探针零改造;三区布局与性能预算(同屏 draw calls < 200)不变;程序化占位视觉等价平移,素材终稿按 art-bible §8.2 格面 32×32 暂定档槽位 1:1 换入 | -| v0.10 | 2026-09-26 | 渲染技术注记(战斗舞台 Node2D 迁移批 Phase B,代码实装同批):B 区战斗舞台 Node2D 化——BattleStageView 内部由 PanelContainer+Control 站桩改为 Control 壳 + SubViewportContainer + SubViewport + Node2D 世界(StageWorld/StandeeBody),类名/setter 面/公共方法契约不变、调用点零改造;状态图标行与悬停 tooltip 保留 Control 载体挂壳层(伴随件);C6 字体注入挂点复用(set_world_font);三区布局与性能预算(同屏 draw calls < 200)不变;占位表现等价平移(时序常量逐字对照——等价证明=git 提交 7f24b64,文件已按生命周期条款退役) | -| v0.11 | 2026-09-27 | 关卡画面 UX spec 建档([level-map](../../ux/level-map.md),关卡画面 UX 批——用户拍板立项):义务清单「关卡节点地图」行挂屏级 spec 指针;屏级权威行与不负责表改按屏分治口径(战斗屏 = battle.md / 关卡画面 = level-map.md)。文档面零机制改动 | -| v0.12 | 2026-09-30 | **未开格类型微光概念收口批(用户裁决落位)**:新增「未开格类型微光」节=全项目唯一权威定义(五要素——作用对象=英雄周围 8 格内的未开格〔与可挖域同圈〕/信息内容=只类型不泄危险格与安全格/生命周期=入圈亮出圈灭开格灭/关联边界/实装状态=契约定稿〔样张 v2〕游戏内待实施批);核心规则章六节改七节;呈现义务来源清单「地图战斗资源」行补微光指路;验收标准补微光呈现线。背景:该概念此前只活在 06 登记与 art-bible 复述,「常显/全部未开格」无范围表述酿成理解事故(2026-09-30 用户纠正口径),本批落位权威文档、他文只许指路 | -| v0.13 | 2026-10-04 | **地形变异三层预告义务批(全局作用域变异首发批——迭代 14 ③号卡,代码同批)**:呈现义务来源清单补「地形变异」行(开战横幅一行〔减动效=静态驻留,轮横幅先例同款双态〕+ C 区常驻角标〔空态整节隐藏=奇物段先例,摆位 provisional〕+ 帮助手册一行〔零交互教学〕);验收标准补三层预告线(普通图恒空态零打扰);数据面走呈现快照 board_variants 投影(核心→呈现唯一读取面)。语义现行事实源=地形变异.md §全局作用域型,本文只锁呈现承载 | -| v0.14 | 2026-10-03 | **视野迷雾实施批入库注记(迭代 11 第④批)**:迷雾节补「实施状态」注记(四裁决逐条对账:纯呈现两态逐位一致/暗淡记忆态灰显可读/LIGHT_RADIUS=8 参数化〔提灯 +2 插值位预留未接〕/类型微光仍贴身 8 邻格);实装状态行「待实施批」改「已实装」;验收标准迷雾行去「待实施批落地后验收」括注转正式验收。机制定义零改动(定义一句话/作用范围/生命周期/关联边界/配套拍板全段原样);黑暗区域渲染规格落 art-bible §6.5(v3.5) | -| v0.13 | 2026-09-30 | **视野迷雾概念落位批(用户拍板立项)**:新增「视野迷雾」节=权威定义(菱形灯光区+黑暗边界;区外已开格=暗淡记忆态灰显可读、区外未开格=全黑;灯光半径起步=微光环 8 格同圈;纯呈现层,与已退役雾格无关);验收标准补迷雾线;配套拍板随节登记(魔法提灯灯甲外扩 +2 格、类型微光不随视野扩、初始展开收窄后置 Alpha 差异化批)。实施待主线编卡 | -| v0.15 | 2026-10-09 | **文档正确性审查批·独立复核(worktree docaudit-2026-10-09)**:①视野迷雾配套拍板段补魔法提灯退役注(2026-10-09 用户裁——fog_lantern 数据行与卡④接线拆除归退役删行批,功能由新目录「阔视野带」承接,06 登记条在册);②呈现义务清单秘宝行「库存条常读」改「装配件与充能常读」(同调形态无库存条——与秘宝.md v1.7 依赖表对齐)+补在役旧框架注;③P0 闭环第 6 步与验收「终局」条的关卡末清库载体补机械惰性承载注(关卡域库存恒空、拆线归实装批——与战斗结算 v0.28 同款口径);④P1 相邻域屏行「节点奖励屏随秘宝内容重定批」过期批次名清偿(node-reward.md v2.5 令牌池已在役) | -| v0.16 | 2026-10-10 | 柜台名扫改(2026-10-10 天赋树设计会话裁「道具工坊」改名「秘宝匣」):迭代 19 卡④入库注记内「营地道具工坊同调装配获渠」改「营地秘宝匣同调装配获渠」。机制与接线零改动 | -| v0.18 | 2026-10-15 | 简明技术中文用语规范(用户令):词面修正 5 处——核心规则导语「收口」→「完成」;装板校验「报错中止」→「显示错误并中止」;迷雾实施状态注记「随批」→「顺带」2 处(探针断言扩、测试引导语);营地覆盖层注记「随批补缺」→「顺带补缺」。机制、数值、结构零改动 | -| v0.19 | 2026-10-17 | **未开格类型微光实装入库注记(迭代 30 卡①,合并 `7ffd1dc0`)**:①微光节实装状态行「游戏内待实施批」→「已实装」(2026-09-30 核证的「无独立实现」状态注销),在役实现(ui_kit TG_GLOW_* 五组、格面微光子件 + 距离场 shader)随行登记;②口径史注记后补「两带分工」注记(卡顶色带 = 条目级静态色带 / 格面微光 = 棋盘格内动态微光,禁互为引用;统一面归 06 两带统一条);③验收标准类型微光行去「待实施批落地后验收」括注转正式验收。微光定义(一句话/作用范围/生命周期/关联边界)零改动;明度档 provisional 值登记归 art-bible 版本历史 | diff --git a/design/gdd/systems/表现与支撑/存档序列化.md b/design/gdd/systems/表现与支撑/存档序列化.md index 6b35e4ba..de4ff699 100644 --- a/design/gdd/systems/表现与支撑/存档序列化.md +++ b/design/gdd/systems/表现与支撑/存档序列化.md @@ -181,20 +181,3 @@ MVP 不要求本系统的闭环([不做清单](../../05-不做清单.md)把单 ## 待办 本系统待办条目已统一收编至 [06-待办清单](../../06-待办清单.md),本节不再逐条登记。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v0.1 | 2026-09-15 | 自归档线索整合为范围草案(旧体系未单独成文) | -| v1.0 | 2026-09-21 | **存档序列化批(SaveManager 落地)**:格式裁决 JSON 单档 `user://save.json`;数据模型逐域成文(元进度四件 + 最近冒险摘要 cap 10);读写时机(启动读盘/冒险收束写盘/营地即时写/测试入口不写)+ tmp+rename 原子写;版本策略(高版本拒读禁写/低版本链式迁移/缺域补齐);损坏兜底(.corrupt.bak 备份 + 默认新档);待设计问题清单六条全部裁决成文(1/2/3/5/6 入核心规则,4 = 单档 MVP 多档留 P2)。自范围草案升定稿 | -| v1.1 | 2026-09-23 | 单关测试直入口(L2/L3)退役(用户拍板——唯一试玩入口 = 完整冒险):不写档条款改口径为「调试两层与 headless 单关测试路径(LevelRunner.start_level,仅 QA 工具)」;写盘面零改动(正式冒险收束唯一写档点不变) | -| v1.2 | 2026-09-29 | **断点域出生(迭代 8 卡①,schema v1→v2)**:`breakpoint` 域登记(停点粒度续玩快照,内容 owner=冒险结构);反面清单收窄到 meta 域+断点域豁免条款;写盘时机+停点快照/三结局清除;生产迁移链 v1→v2 补空;P1 快照预挂号兑现(rng `restore_adventure` 回填面);域界验收口径随改 | -| v1.3 | 2026-10-01 | **版本兼容口径批(迭代 10 追加批 g 裁——用户拍板:版本兼容对齐 semantic version 标准)**:①版本策略成文口径——本域版本号语义 = **向后兼容的次序版本**:升版只允许「旧档在新代码可读可玩可续玩」(缺新键=合法空态、内容零丢失、断点可续),禁「新档在旧代码可读」承诺(向前兼容不做);②v2→v3 迁移体=空迁移(断点附随件扩列〔bonus_taken/bonus_pending/bonus_result/bonus_aux_carry/keystone_drops + bonus.ap 轴〕与摘要 additive 键 keystone_drops 均由读取方 .get 兜底——兼容性由冒烟 v1→v3 与 v2→v3 断点续玩断言承载,2026-10-01 增);③中断节点兼容义务:每升版必须在冒烟断言「旧版断点→新版续玩受理」(现行三档 v1/v2/v3 齐) | -| v1.4 | 2026-10-09 | **文档正确性审查批·独立复核(worktree docaudit-2026-10-09——版本滞后四代换代,全部代码实证 save_manager.gd SAVE_FORMAT_VERSION=6)**:①数据模型 JSON 与域清单表换代 v2→v6——补 v4 同调三域(boss_kill_count/attunement_equipped/attune_refresh_level,迭代 11①)、v5 树域(tree_nodes/fork_sides,迭代 12)、v6 生涯两终身计数域(adventure_total/adventure_cleared,迭代 18 卡④)逐域 owner 行;②版本与迁移节换代——当前=6、迁移链五件(v1→v2…v5→v6,含 v4→v5 三体系迁移指路天赋树);③调参表版本常量 2→6;④缺键补齐纪律句补记(读取方默认补零/空集合,收束自增唯一入账=apply_adventure_summary)。注:v3/v4/v5/v6 四次升版当时均未回写本文,本批一次性清偿 | -| v1.5 | 2026-10-12 | **锻造工坊完备性检查批随迁(用户令:新加内容现在补、不等实装批)**:①**预登记锻造路线域**(计划 v7):域清单表 + 版本沿革补 `forge_routes`(三武器等级+三甲等级+当前选中标记、无特效域、旧档破坏性废弃归锻造工坊实装批;域名以实装批定名为准);②**清偿 forge_levels 残留**——JSON 示例、域清单表删该域(代码侧已随迭代 21 T5 删除:`save_manager.gd:12-14/:399-401` 白名单收窄);迁移链 v4→v5 的「三体系迁移」体改述为已删除(`save_manager.gd:96-98`、`meta_progression.gd:294-295`);③**补登两漏域**(代码实证 `save_manager.gd:119-139`):`tree_struct`(树结构版本标记,迭代 21 T5,缺失=换代前结构加载废弃重置,owner 天赋树)、`first_adventure_done`(首冒险完成标记,新档默认 false、旧档缺省按已完成兜底,`meta_progression.gd:100` 置位,owner 元进度);④消费面纪律句「读写锻造等级」→「读写树等级」(访问器已随行族退役删除)。版本号常量仍 =6(v7 未落地) | -| v1.6 | 2026-10-12 | **迭代 22 反哺落文批(实现报告 §三⑥,用户裁「落文」)**:域清单表补 `vision_used` 行(真视使用终身计数,迭代 22 新增,v6 域后扩列补零不升版本——迭代 21 先例;断点随件 `vision_counter_used` 同批新增、旧随件键 `bonus_aux_carry` 随替换子交互拆除退役);缺键补齐纪律句补 v6 扩列注;零迁移口径复核=SAVE_FORMAT_VERSION 仍 6(`save_manager.gd:49`),无迁移分支新增 | -| v1.7 | 2026-10-12 | **锻造工坊实装批随迁(迭代 23 T5——v7 落地;承 v1.6 的 vision_used 登记)**:①域清单表 `forge_routes` 计划行→实际落地态({levels 六路线等级 + unlocked 直购解锁清单 + weapon/armor 当前选中标记},域内键名以实装批定名);②版本与迁移节——当前 =7、迁移链补 v6→v7(空迁移=缺键补齐模式,解锁态派生不落档三通道);③旧档口径订正——「破坏性废弃」→「缺键补齐 = 初始持有态」(开发阶段禁迁移禁折算纪律不变,契约 4);④域界注记——forge_routes 属 meta 永久进度域(契约 2 反面清单不涉) | -| v1.8 | 2026-10-13 | **Y 断点随存缺陷修批(06「天赋树实装批登记欠账三条」③——用户令单独开修)**:断点域扩列随件键 `attune_refresh_y`(Y 冒险周期池消耗余量——续玩优先读断点、不自参数面整额重注入=堵「用完退菜单再续玩满血复活」可利用漏洞;旧断点缺键回退参数面整额注入=旧档行为零变化);**v7 域后扩列不升版**(v1.6 vision_used 先例同款,SAVE_FORMAT_VERSION 仍 7、无迁移分支新增);断点字段口径 owner=冒险结构(v0.21 随批登记) | -| v1.9 | 2026-10-15 | 简明技术中文用语规范(用户令):词面修正 5 处——断点域豁免注记「随批」→「顺带」2 处;「白名单收口」→「白名单收窄」2 处(forge_levels 退役行与迁移链 v4→v5 述——「收口」系白名单收紧义,按本篇既有词「收窄」就近改写);钥石判据「不得破坏」→「禁止破坏」。域、版本、迁移语义零改动 | -| **v1.10** | 2026-10-19 | **系统资源定名传导批(用户裁,承接 42d64ec2/17ef0180)**:「局内资源」→ 局内系统资源(不入档/单局清零两处);「生命账本、GP」→ 生命、GP——跨文档引用一律「规范名+指路 01-核心循环「系统资源」节」,定义源单点。机制与数值零改动。 | diff --git a/design/gdd/systems/表现与支撑/教学引导.md b/design/gdd/systems/表现与支撑/教学引导.md index bff1fc85..88b81957 100644 --- a/design/gdd/systems/表现与支撑/教学引导.md +++ b/design/gdd/systems/表现与支撑/教学引导.md @@ -108,14 +108,3 @@ HUD 框架定稿时已为教学留好两个承载位,本系统的内容将来 3. 图例面板的条目全集与分组方式。 4. 教学文案的定稿权归属,以及与本地化流程的分工。 5. 是否提供"再教一次"的入口(图例面板是否兼任手册)。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v0.1 | 2026-09-14 | 自归档线索整合为范围草案(旧体系未单独成文) | -| v0.2 | 2026-09-15 | 雾格残留清理:删除「待拍板」的雾类教学条目失义登记(图例条目"迷雾 = 无雷盲区"与雾格首遇三要点提示),"待设计问题清单"第 3 条去掉雾条目删除的限定。教学条目清单与承载设施不变 | -| v0.3 | 2026-09-17 | 数值纪律收口批:呈现常量复述改指路 HUD 框架调参表 | -| v0.4 | 2026-10-04 | **地形变异手册行批(全局作用域变异首发批——迭代 14 ③号卡,代码同批)**:已登记的教学条目表补「Boss 图整图变异说明行」——三层预告中的手册层承载(帮助文案块一行,零交互教学),横幅/角标两层归 HUD 框架;语义现行事实源=地形变异.md §全局作用域型 | -| v0.5 | 2026-10-09 | **文档正确性审查批·独立复核(worktree docaudit-2026-10-09)**:①内容原则与 P1 后置「里程碑定位 Alpha」改排 **Beta 阶段**(2026-10-04 用户拍板教学引导整体改排,06 节头注记在案——本文漏同步);②教学条目「库存关卡末清空」行补机械惰性承载注(清空对象=关卡域库存恒空、拆线归实装批,本条目随拆线失效——与战斗结算 v0.28 同款口径) | -| **v0.6** | 2026-10-19 | **系统资源定名传导批(用户裁,承接 42d64ec2/17ef0180)**:「教血账与恢复」→ 教生命与恢复——跨文档引用一律「规范名+指路 01-核心循环「系统资源」节」,定义源单点。机制与数值零改动。 | \ No newline at end of file diff --git a/design/gdd/systems/表现与支撑/数据配置.md b/design/gdd/systems/表现与支撑/数据配置.md index 205b47e6..d9586baa 100644 --- a/design/gdd/systems/表现与支撑/数据配置.md +++ b/design/gdd/systems/表现与支撑/数据配置.md @@ -210,15 +210,3 @@ ## 待办 本系统待办条目已统一收编至 [06-待办清单](../../06-待办清单.md),本节不再逐条登记。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v0.1 | 2026-09-15 | 自归档 GDD 压缩改写 | -| v0.2 | 2026-09-15 | 雾格残留清理:关闭「待拍板」的棋盘生成参数表雾字段清理登记(fog_region_count / fog_target_ratio 两字段、雾占比绝对上限与雾域跨字段校验)——字段与校验随雾格移除同批删除,registry `board_gen_table` 条目同步修订。表清单与校验纪律不变 | -| v0.3 | 2026-09-17 | 代币→钥石统一拍板随批措辞清偿:表清单冒险表行「代币记账」改「钥石入账」;registry adventure_table 同批改键 token_per_level→keystone_per_level。表清单与校验纪律不变 | -| v0.4 | 2026-09-18 | **进度坐标解析口径修订(用户拍板,场景三讨论产物)**:① 取整方向「就近向下」→「**向上取整**」——无精确行取不低于请求坐标的最近行,理由 = 保证偏难(宁高估难度让工具读数保守,不静默降难掩盖断档);② 越域致命补齐——低于合法域(关卡序号 <1、节点深度 <0)走运行期致命:Fatal 级诊断 + 进程退出码 1,与装载期致命纪律并轨;**同日追加拍板**:高于最大已有行不致命,封顶取最大已有行并留警告(用户裁定「可取范围内向上取整,超过了最大值就用最大值」);③ registry enemy_table 条目「进度键 floor」随批改 ceil;切片 config_db._resolve_progress 同批落地(ceil 选择器 + _fatal 通道 + 配置致命探针〔smoke/config_fatal_probe.gd,迭代 19 退役删除,断言并入 `tests/unit/data_config/config_db_fatal_oob_test.gd`〕 + 冒烟 ceil 断言) | -| v0.5 | 2026-09-27 | **统一随机流批(2026-09-27 用户两轮复裁终选「统一用一个流」并拍「全面执行」)**:§「封闭随机流」整节改「统一随机流」口径——唯一主种子+单盐派生+唯一全局取数计数器,七流并一;取号参数降格为**用途标签**(只进事件日志不参与派生,七流名保留为封闭词表);新增**全事件日志**(冒险会话制 user://logs/rng_log_<主种子>.jsonl,逐次取数落 scope/标签/派生种子——号位全序化后单点定位的承载面);快照契约=主种子+全局计数器;扩签通道替代增流通道;表清单/依赖表/P0/验收行随批。代码实证:rng_service.gd 重写+七消费点迁移+armor_roll_stream 字段降格标签+behavior_roll 子流派生向量退役;新黄金向量 8 常量重登记(scope 0-3 与旧 board_gen 向量逐位连续)| -| v0.6 | 2026-10-09 | **文档正确性审查批·独立复核(worktree docaudit-2026-10-09——四处表清单失同步,全部代码实证)**:①变异表行「现行六行」→七行(variation.tres 实测 7 行=region 6+global 贫矿脉,2026-10-04 首发批漏登);②奖励配置表 `RewardConfigTable` 行删除(表已随可选类删除下线——reward_config.tres 与类名全仓零命中);③秘宝表 `AuxItemTable`→`TreasureItemTable`(treasure_items.tres,词族对齐批换代漏登);④MetaTable「四行族」→现行五行族(+attune_refresh_upgrade,同调批扩列漏登);⑤主角表行补 armor_class 字段 | -| v0.7 | 2026-10-15 | 简明技术中文用语规范(用户令):词面修正 5 处——fail-fast 节与 P0 第 3 步「报错」→「显示错误」3 处(均动词义);MetaTable 行与越域验收行「随批」→「顺带」2 处。另 v0.4 行死链清偿 1 处:smoke/config_fatal_probe.gd 探针迭代 19 退役删除、断言并入 `tests/unit/data_config/config_db_fatal_oob_test.gd`(去向经 roadmap 迭代 19 卡①「探针收编」与本文验收行双证)。表、校验、随机语义零改动 | diff --git a/design/gdd/systems/表现与支撑/设置与本地化.md b/design/gdd/systems/表现与支撑/设置与本地化.md index 32c30190..407dcbc5 100644 --- a/design/gdd/systems/表现与支撑/设置与本地化.md +++ b/design/gdd/systems/表现与支撑/设置与本地化.md @@ -122,10 +122,3 @@ MVP 不要求本系统的闭环:[不做清单](../../05-不做清单.md)把设 4. 文案生产流程:文本键(每条文案在工程里的唯一编号,机器据此找到译文)怎么管理、谁负责校对、翻译在流程的哪一步介入。 5. 设置界面的入口与形态:从哪里打开、什么时刻可以打开——与 HUD 框架协作定。 6. 键位映射表是否转化为改键设置项。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v0.1 | 2026-09-15 | 自归档线索整合为范围草案(旧体系未单独成文) | -| v0.2 | 2026-09-29 | **最小设置面落地(迭代 8 卡④)**:P1 两项(音量入口+减动效开关)随迭代 8 兑现——三件面(音量 master bus 实时生效+即改即存/全屏/减动效转正)+退出游戏入口+调试入口 DS_DEBUG 门控;独立存储落地=`user://settings.cfg`(ConfigFile 三节 audio/display/motion,与存档两分按 2026-09-19 拍板);减动效开关自测试调整板退役(设置面唯一入口,battle.md 呈现承诺不变) | diff --git a/design/gdd/systems/表现与支撑/音频.md b/design/gdd/systems/表现与支撑/音频.md index aaef039d..f1df7227 100644 --- a/design/gdd/systems/表现与支撑/音频.md +++ b/design/gdd/systems/表现与支撑/音频.md @@ -151,12 +151,3 @@ 3. 混音与总线方案:音乐与音效怎么分层、相对音量关系怎么定。 4. 与减动效选项的关系:呈现侧已承诺减动效——音频侧是否配对应的减噪、动态范围收缩,未拍板。 5. 四个基础反馈位之外的基础音效(封印、移动、清图奖励等)尚未见挂点登记——是否补登记、归谁提出,未定。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v0.1 | 2026-09-15 | 自归档线索整合为范围草案(旧体系未单独成文) | -| v0.2 | 2026-09-16 | 新增「临时音效的覆盖清单」:必覆盖五挂点、选配两候选、明确不覆盖两挂点与切片期验收口径成文(06 清单「临时音效的覆盖清单」闭合),P0 最小闭环改指本节;明细流水行型数 15→10、例举去"道具"行,随战斗结算格面资源批行协议同步(追记 2026-09-30:现行 9 类——2026-09-20 伏击上限删除批下线溢出未生效行) | -| v0.0 | 2026-10-11 | 术语统一补扫批(2026-10-11):音频触发名「惊动巢穴」三处换代「惊动危险格」 | -| v0.3 | 2026-10-15 | 简明技术中文用语规范(用户令):词面修正 1 处——「切片期验收口径」句内「不得先于事件」→「禁止先于事件」。覆盖清单与验收判据零改动 | diff --git a/design/gdd/systems/跨局循环/元进度.md b/design/gdd/systems/跨局循环/元进度.md index d853fb6f..5a12d47b 100644 --- a/design/gdd/systems/跨局循环/元进度.md +++ b/design/gdd/systems/跨局循环/元进度.md @@ -157,35 +157,3 @@ MVP 不要求本系统的闭环([不做清单](../../05-不做清单.md)整体 ## 待办 本系统待办条目已统一收编至 [06-待办清单](../../06-待办清单.md),本节不再逐条登记。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v1.18 | 2026-10-13 | **迭代 23 反哺落文批(实现报告 §五,用户裁「在这里进行更新」)**:①「跨局注入」节补终态句——入战 AC 三层第一层「甲型基础 AC」= 选中甲路线行 base_ac(forge.tres 轻 10/重 12/魔法护甲 9 provisional),effective_ac 三层已随迭代 23 在役;②属性锻造段落代——「实装待办在册 06、待用户发令」过期态换代为已随迭代 23 实装入库(新表 forge.tres),并登记营地钥石入口族三写口(forge_buy_level/forge_buy_unlock/forge_select_*——buy_forge 退役后的新族,契约 9 写口唯一)。机制与数值零改动 | -| v1.19 | 2026-10-13 | **暂停层改名批随迁(用户令:暂停层/暂停角标→状态面板/状态角标,全标识符+文案换代、行为零变化)**:「解锁界面:双入口框架」节正文名称换代+改名括注(版本历史行内旧名按历史记载保留);pause_overlay.gd→status_panel.gd(StatusPanel)。机制零改动 | -| v1.20 | 2026-10-13 | **迭代 21 反哺②落文(用户裁「按呈报落文」)**:「营地统一」段落地终态换代——属性锻造柜台已随迭代 21 退役、属性升级唯一入口=树脊柱淬炼节点、四柜台并排已实装(原「落地前维持现役」过渡态终结)。机制零改动 | -| v0.1 | 2026-09-15 | 自归档线索整合为范围草案(旧体系未单独成文) | -| v0.2 | 2026-09-17 | 代币→钥石统一拍板随批措辞清偿:资源模型裁决闭合(同一资源,渠道 = 关卡大奖励入账 + Boss 掉落),「代币记账」改名「钥石入账」。机制未动(本文仍为范围草案) | -| v0.3 | 2026-09-17 | 数值纪律收口批:正文 knob 现行值改指路存根(事实源 data/tables/*.tres 与 registry),3 处失同步修正(钥石入账 +10/关 三处改「每关固定值,行值读冒险表 keystone_per_level」) | -| v1.0 | 2026-09-18 | **元进度定稿批(用户拍板六件收口)**:定名「永久强化」(系统族名元进度保留,「天赋树」退役、「营地」为界面壳);营地三柜台(属性锻造三档含护甲等级 / 道具工坊六件首版通关次数渠道 / 奖励格图鉴结构位);Boss 重复获取 = 首杀全量 + 重复杀固定小额;定价几何递增原则;区间平移换算率启用(换算率表首版三行、护甲行强条目、数值读 data/tables);注入 = 冒险开始参数面 + 覆盖值通道(override 集合操作:追加 / 替换);解锁界面双入口框架。本文自范围草案升定稿 | -| v1.1 | 2026-09-18 | **数值语言拍板批(与 01-核心循环 数值语言条款 / 难度曲线与Boss / registry / 06-待办清单 / 切片代码同批)**:营地三柜台节新增投值语言锁定条款——属性投值语言锁定 flat 整数加减,数值投值仍归设计批 | -| v1.2 | 2026-09-20 | GP+商店房批注记(知会性质——与冒险结构 v0.5 同批):钥石节新增与 GP 的分工一行——钥石 = 跨局持久解锁、GP(「金币」)= 冒险内一次性属性提升、局内清零不入存档,双币生命周期切分成文、永不互兑。机制零改动 | -| v1.3 | 2026-09-21 | **元进度实现批(与切片代码 / registry / 02 / 03 / 05 / 06 同批)**:本批 = 本文的实现批——MetaTable 四行族建表(`data/tables/meta.tres`,数值全 provisional 归设计批配读数);MetaProgression 账本服务(余额/几何定价/购买/工坊解锁/Boss 两档入账/注入计算,Core 层零 UI 零信号);注入通道落地(start_adventure params.hero_override → LevelRunner base_override,叠加序 = 表值+永久强化 flat+加算区 flat × 测试面板 pct);呈现面(营地覆盖层三柜台+主菜单入口+A 区顶栏钥石余额+结算屏入账明细,ui_kit 程序占位——视觉终稿归 HUD 协作批)。正文零改动(实现面不回流正文——正文零历史叙述纪律) | -| v1.4 | 2026-09-23 | **换算率标定批(用户指令「现在标定」;与切片代码 / registry / 06-待办清单 / 判定端工具同批)**:换算率节回填现行表值(生命 6 / 攻击 9 / 护甲 1 点每级——OFAT 冒险注入档与白板同种子配对的逐关条件通关率差实测,冒险条件口径;同日单关直入口口径退役使首轮直入口面读数作废重测);护甲行强条目重测履行并暴露修复护甲断链(begin_battle hero_armor_class 参数零消费→_defender_ac 接线);判定端带平移表值驱动接线(带重锚后随换算率平移判);排期表 P1 行销项 | -| v1.5 | 2026-10-01 | **钥石渠道改一批(迭代 10 奖励重构——用户 2026-09-30 拍板;与冒险结构 v0.12 / registry 同批)**:钥石渠道自二改一——「关卡大奖励入账(keystone_per_level)」随大奖励三件套退役,渠道 = Boss/精英怪击杀掉落(逐杀实时入账,行值读 meta.tres boss_keystone 首杀/复杀两档;精英掉 1 预留);首杀大额/复杀小额规则不变。**产出重标义务重开**:现行两关冒险产出结构从「大奖励 10×2 + Boss 首杀 5」改「Boss 掉落 ×N(精英未实装零贡献)」,标定随元进度设计批/调参批重开(06 登记) | -| v1.6 | 2026-10-03 | **同调位账本批(迭代 11 第①批同调实施批——save v4 / meta.tres attune_refresh_upgrade 行族 / registry 同批)**:①道具工坊柜台职责改写——解锁→谓词表形态(unlock_requires 行,首批全解锁=空谓词合法态,底稿 §2.2 用户裁),柜台内新增「同调装配」段(装配/换装/Slots 点亮 + Y 刷新升级行购买——程序占位面,视觉终稿归营地批;满位禁选/写档持久 MetaProgression.toggle_attunement 唯一写口);②Boss 击杀总数计数登记(boss_kill_count 含重复,收束入账=apply_adventure_summary 逐通关关次 +1,attunement_growth 谓词表计数源);③Y 刷新升级行登记(attune_refresh_upgrade 行族 L1→Y1/L2→Y2,钥石直购,provisional);④装配关系入存档持久(attunement_equipped save v4 域,冒险中途不可换装——底稿 §8.5) | -| v1.7 | 2026-10-07 | **生命周期轴裁决随批(框架现行事实源=核心循环「生命周期轴」节同批落文)**:设计目的节补独立资源口径——钥石与 GP=两条平行独立资源不立统一上位概念,钥石=存档级账归本文、GP=冒险级账归冒险结构(同批落文);既有账本语义零改动 | -| v1.8 | 2026-10-09 | **文档正确性审查批(用户令——状态记录与证据对齐)**:①设计目的「渠道有二:关卡大奖励入账、关底 Boss 掉落」与核心规则「渠道自迭代 10 起改一」自相矛盾——订正为 Boss/精英怪击杀掉落单渠道;②道具工坊行订正——工兵令已退役(treasure_items.tres retired 旗),可解锁在役=探巢摆钟/爆破工兵包两件;「本柜台职责随同调实施批改写」的未来式订正为已落地(2026-10-03 v1.6);③定名节补审查注——「本作不存在树形结构」失义(属性锻造随迭代 12 T9 落地为锻造脉节点结构,存档域 tree_nodes/fork_sides),章节归后续修订;④里程碑前缀按 2026-10-09 口径删「M-3」(视觉终稿行)只留「迭代 9」;⑤调参表钥石产出行删「每关入账值 keystone_per_level」(行值已退役)改 boss_keystone 行指路。 | -| v1.9 | 2026-10-09 | 文档正确性审查批(定点):解锁双入口框架节「局内暂停层入口未实装(随 HUD 批 M-4)」过期订正——暂停层只读入口已实装(2026-10-06 迭代 17 卡③,实机目检待用户;06 登记条在册);裸 M-4 标签随订正消除 | -| v1.10 | 2026-10-09 | **B2 裁决落文(用户令「删除旧的、直接写新的」)**:道具工坊行删旧写新——旧「现行六行」登记作废(旧目录已随秘宝 v1.5 全退役),改写=件的目录与效果现行事实源指路秘宝.md「目录(重设计 v1)」+解锁门槛谓词分级(普通 0 门槛/优秀中里程碑/稀有高里程碑,阈值归调参批)+通关次数渠道与钥石直购价归定价批后补 | -| v1.11 | 2026-10-09 | **B1 裁决落文(用户令「元进度让他们都独立去写」——天赋树独立成文)**:①定名节冲突表述换代——「归档线索里的『天赋树』一词就此退役」与 v1.8 审查注(「本作不存在树形结构」失义登记)同步摘除,改写 = 退役的是归档线索旧概念的旧义、树形结构已随迭代 12 以锻造脉形态落地在役(系统现行事实源 = 天赋树.md,本批新建 v0.1);②三柜台节补指路句——属性锻造树形节点结构现行事实源 = 天赋树.md,旧三档柜台与树四线 flat 注入面叠加实态随句登记。机制零改动 | -| v1.12 | 2026-10-09 | 武器锻造成文批随迁(用户令「完成文档编写、代码不实现、记录待办」):三柜台节补指路句——属性锻造攻击/护甲两档的路线化改造设计权威文档 = [武器锻造](锻造工坊.md) v0.1(按 2026-10-07 提案推荐案成文、17 裁点开放在册、实装待办在册 06;改造落地前三档直购维持现役)。机制零改动 | -| v1.14 | 2026-10-11 | 秘宝匣行换代随批(秘宝.md v2.7 目录修正批):13 件三档+解锁混合制口径;旧「正主/谓词分级」表述同步清除(拾取渠道指路同日追加又随终裁废止) | -| v1.13 | 2026-10-10 | **「道具工坊」改名「秘宝匣」(2026-10-10 天赋树设计会话裁——树上解锁节点与营地柜台同名)**:现行正文六处扫改(三柜台行 / 柜台行 / 柜台纪律 / 后续商品行 / 调参表 P1 / 定价表行);版本历史行一律不动;别名「道具工坊」登记 registry 术语条保留检索。机制零改动 | -| v1.14 | 2026-10-11 | **营地统一案甲随迁(2026-10-11 天赋树设计会话终裁)**:三柜台节补「营地统一」段——树=营地本体、属性升级唯一入口=树脊柱淬炼节点、本属性锻造柜台随 06「天赋树实装批」退役吸收进脊柱(落地前维持现役)、锻造柜台与秘宝匣转工作间钥匙模型、图鉴常开;设计权威文档指路 = 天赋树.md v0.2。机制零改动(退役与公式换代随实装批) | -| v1.15 | 2026-10-11 | 锻造工坊更名批随迁(机械扫):三柜台节指路句随系统更名「武器锻造→锻造工坊」换代链接与名称(06 实装批条名同步「锻造工坊实装批」;版本历史行内旧名按历史记载保留)。机制零改动 | -| v1.16 | 2026-10-12 | **完备性检查批随迁(用户令:有缺漏即补齐)**:①「跨局注入」节补开局属性四层叠加公式(角色基础值+树生命/命中 flat+锻造路线加值+局内加算区 flat;入战 AC 三层)——锻造工坊与天赋树两文档共指本节为「通道现行事实源」而公式缺位,本次落实;原「属性锻造三档是数值覆盖」随迭代 21 T5 行族退役换代;②锻造工坊 v0.6 引用版本号 v0.1→v0.5 连带校正(三柜台节)。机制零改动 | -| v1.17 | 2026-10-12 | **迭代 22 反哺落文批(实现报告 §三④,用户裁「落文」)**:秘宝匣行补迭代 22 实装实录(购买钮禁用态/条件进度呈现/分档装配呈现/空目录合法态/treasure_shop_status 投影/旧道具工坊渠道面退役);柜台纪律「首版只挂通关次数渠道」排期态消解注记;P1 秘宝匣定价行换代(provisional 10/25 已投,终值归调参批)。机制零改动 | -| v1.21 | 2026-10-15 | **简明技术中文用语规范批(用户令):词面修正 2 处+死链修复 1 处**——「收口」→删(文头状态行「用户拍板收口」→「用户拍板」,已定稿语义由句首承载);「不得」→「禁止」1 处(验收·换算可审计条护甲行);死链修复:v1.12 行的武器锻造死链指路改指锻造工坊.md(2026-10-11 更名漏改,显示文字与行内其余文字同步换代为现行名,其余不动)。机制与数值零改动 | -| **v1.22** | 2026-10-19 | **系统资源定名传导批(用户裁,承接 42d64ec2/17ef0180)**:「独立资源口径…两条平行独立资源」→「系统资源口径…两条平行独立的系统资源」;钥石表行改「钥石(存档级)」——跨文档引用一律「规范名+指路 01-核心循环「系统资源」节」,定义源单点。机制与数值零改动。 | diff --git a/design/gdd/systems/跨局循环/天赋树.md b/design/gdd/systems/跨局循环/天赋树.md index 69e5824c..8fcf9286 100644 --- a/design/gdd/systems/跨局循环/天赋树.md +++ b/design/gdd/systems/跨局循环/天赋树.md @@ -196,20 +196,3 @@ A/B 态只放规则面:节点行持 a/b 双效果键(封闭规则键词表 R ## 待办 本系统待办条目已统一收编至 [06-待办清单](../../06-待办清单.md)「天赋树实装批」条,本节不再逐条登记。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v0.10 | 2026-10-13 | **R1 机制位批(用户推翻迭代 21 追认单 #1 裁撤案)**:「等级阈值前置」以机制位形态随批重立——schema requires_level 字段(Dictionary{node_id: n},键悬空/阈值 <1/类型错加载即拒)+ tree_can_buy 判定分支 + 行板门槛呈现(未达标 🔒+悬停文案 gate_text)+ 单测 tree_requires_level_test 八断言(run_all 24→25 套);现役 12 行零配置=空转零行为影响(冒烟 938/0+全闸复跑零漂移),配置归表行随需填。六处 R1 表述换代(状态行/范围表/schema 连带/购买校验③/调参表/验收前置行) | -| v0.9 | 2026-10-13 | **迭代 21 反哺落文批(实现报告 §五①③⑥,用户裁「按呈报落文」)**:①实装落地态全文档换代七处——头部状态行 / 系统范围表 / 节点总表前言与三行 / schema 连带句 / 依赖表 / P0 段 / 验收实态注(原「实装未落、现役 33 节点」过渡态终结;迭代 21 = 2026-10-12 入库);③「财富之道」设计避让句按卡片 v1.7 ⑪②裁决改写为折扣定义边界口径(散=只覆盖商品购买价,键 gp_cost_mult,不含两处刷新——定义边界非临时避让);⑥验收实态注(机检读数+命中线契约 6 括注定性);连带:已建未接面节换代(同调位判定源已切树点亮数 / 刷新升级同账路由 / 命中线契约 6 维持——两接一维持)。机制与数值零改动 | -| v0.8 | 2026-10-11 | **Fork 一节点双态换代批(用户裁)**:①开局姿态/危险直觉/财富之道三天赋=三节点——现役 A/B 双行结构(迭代 12 沿袭,「付一次钱得双态开关」裁决未落进节点组织=落文错误已纠正)收编为单行双态,同调脉 9→6(同调位 3+Fork 3)、全树 15→12;②节点语义=购买解锁双态开关(cap1、零重复购买)、解锁默认 A 态、营地零币切换(互斥由单态承载);fork_sides 存档语义不变(组→激活态),tree_buy_fork=购买解锁/tree_toggle_fork=零币切态;schema=Fork 行持 a/b 双效果键、效果按激活态取值、Fork 组词表校验改每组恰一节点;③R1(「等级阈值前置」形态去留)不随本批变化,仍开放待裁(推荐裁撤)。实装归 06「天赋树实装批」(33→12 连带,需求卡片 v1.6 同批) | -| v0.7 | 2026-10-11 | **一线一节点换代批(用户裁)**:①脊柱淬炼一线一节点——生命淬炼/命中淬炼各收编为单节点 4 级(原「一线 4 层×层内 3 购」层=级收编;用户明裁:一个内容一个节点、等级在节点内、不拆多节点),脊柱 8→2、全树 21→15;②行门槛平移——SPINE_ROW_GATE=4 公式不变,门槛主语从「层 N」改「节点第 N 级」(第 2~4 级需全树总投入 ≥4/8/12),row 字段随层行退役;③彩蛋条件随结构换代为「生命/命中两节点 4 级拉满 且 同调位 1/2/3 全部解锁」;④R1(「等级阈值前置」形态去留)不随本批变化,仍开放待裁(推荐裁撤)。实装归 06「天赋树实装批」(33→15 连带,需求卡片 v1.5 同批) | -| v0.6 | 2026-10-11 | **攻防所有权切分落文批(锻造工坊裁决会话 A 组定案,天赋树会话交接落文)**:①脊柱换代 16→8——攻击淬炼×4 层与护甲淬炼×4 层删除,脊柱=生命/命中两线×4 层,全树 29→21 节点(每根数值轴全游戏单一来源:生命/命中→树脊柱、攻击→锻造工坊武器路线、AC→甲路线,树零攻防来源=红线);②锻造工坊钥匙节点前置改「无」(free、直接可点亮,原「攻击淬炼累计 ≥2 且 护甲淬炼累计 ≥2」等级阈值前置随两线砍除作废)——连带开放待裁点 R1:schema「等级阈值前置」新形态现无消费者,裁撤(推荐)/留作机制位待用户裁;③地脉共鸣换代——条件改「生命/命中两线全部买满(8 节点全上限)且 同调位 1/2/3 全部解锁」、效果改生命/命中两线 flat(攻/护分量摘除),上限 3 枚不变;④行门槛 SPINE_ROW_GATE=4 规则保留(层 N 需全树总等级 ≥4×(N−1)),两线换代后总等级供给结构变化=达成节奏重算注记在册、值归数值批;⑤叠加公式换代——开局属性=角色基础值+树生命/命中淬炼 flat+锻造路线加值(只按当前选中生效)+局内加算区 flat(命中在账未注入披露不变);⑥营地呈现措辞对齐四柜台并排(树淬炼柜台=树脊柱界面形态、锻造工坊柜台钥匙点亮前=锁定态,机制语义=树营地本体/钥匙模型/图鉴常开不变,A② 裁);⑦节点总表/一脊三脉/验收标准/调参表/依赖表连带换代。实装归 06「天赋树实装批」(结构目标 33→21 连带换代,需求卡片 v1.4 同批) | -| v0.5 | 2026-10-11 | 锻造工坊更名批随迁(机械扫):五处「武器锻造」链接随系统更名「锻造工坊」换代为 [锻造工坊](锻造工坊.md)(v0.2 历史行内旧名按历史记载保留)。结构零改动 | -| v0.4 | 2026-10-11 | **歧义扫描清零批(/grilling 六裁落文)**:①Q1 术语回归正主——分叉效果废「陷阱/危险标记」自造词,改「踩中危险格伤害减半」「危险格标记错误返还行动点」,玩家文案沿「危险格/安全格」;②Q2 地脉共鸣效果改生命/攻击/护甲三线(命中分量待命中线注入随批加回,不留永久无效分量);③Q3 行门槛总等级口径写明=tree_nodes 全部节点等级之和(免费点亮与分叉激活计入,沿现役实态);④Q4 财富之道范围定界——聚=仅战斗掉落渠道、散=全部 GP 消费面(用户裁);⑤Q5 限次计数生命周期落句(随冒险持久/按关重置/新冒险清零/断点保留);⑥Q6 三处旧裁决换代——已建未接面槽位判定源句换 Q2 裁决(树点亮数+旧条件作废删除)、刷新升级条补 Q1 双入口并存、存档域节「迁移重做」整节换代为「旧档废弃」(Q3 裁决落文,禁迁移红线);顺带清「Y 升级行族」黑话为「刷新升级行族」。结构零改动 | -| v0.3 | 2026-10-11 | **节点台账补全批(用户令:台账指引升格文首+29 节点总表落文)**:文档最前新增「节点台账指引」块(节点结构查本文总表 / 数值查配置文件 `game/data/tables/meta_tree.tres` 双源分工声明);核心规则节补「节点总表(29 节点)」——17 行折叠式全名单(脊柱四线按层折叠),逐节点名称/脉/类型/前置/效果方向,数值不进正文沿配置纪律。结构零改动(纯台账补全) | -| v0.2 | 2026-10-11 | **天赋树设计会话裁决批(结构换代+分叉效果定案+营地统一)**:①结构换代 33→29——锻造枝三属性节点(武器锻造/护身锻造/甲胄锻造,旧柜台镜像重复件)删除换单个免费解锁节点「锻造工坊」(前置=攻击淬炼累计≥2 且护甲淬炼累计≥2,等级阈值前置新形态);克制专精 Fork 对整组砍除(类型表达归武器锻造);②分叉效果定案——开局姿态两侧收每关首轮窗(先手压制=每关首轮 AP+1 / 稳健拓荒=每关首轮内受击减伤)、雷感直觉改名危险直觉(锋=陷阱伤害减半 / 守=误标返 AP·均每关限次;标错机制存在性 T0 实查在册)、经济人格改名财富之道(聚=GP 获取增益 / 散=消费折价,避开两处在册旋钮);现役两键占位态随实装批终结;③营地统一案甲——树=营地本体,属性升级唯一入口=树淬炼节点,旧属性锻造柜台退役吸收进脊柱,工作间钥匙模型(锻造工坊/秘宝匣两钥匙+图鉴常开);④叠加公式换代=基础值+树淬炼+锻造路线加值+局内加算;⑤同调位 1 改无前置根节点、串行保留;地脉共鸣条件改四线全部买满;⑥「道具工坊」改名「秘宝匣」;⑦树上刷新升级节点定性缺陷(购买写 attune_refresh_level 同账修复随批);迁移映射重做(forge_levels→脊柱线)。全部实装归 06「天赋树实装批」(原「已建未接面两件」+「结构重构批」两条合并) | -| v0.1 | 2026-10-09 | **B1 裁决补写批(用户令「元进度让他们都独立去写」)**:系统随迭代 12 双层 BD 实施批实装在役(33 节点 + 存档 v5 树域 + 营地树界面 + A/B 面 MC 两侧差 0.0pp 过 <~3pp 验收线,2026-10-04 落地 = 合并 e780063 系),本文补写其设计文档——机制描述以代码实态(meta_tree.tres / MetaTreeTable schema / MetaProgression 树段 / save_manager v5 域 / 效果引擎规则键消费面)与迭代 12 落地裁决(整合定稿 R1 甲融合案、2026-10-07 树全钥石单币裁甲)为据;设计底稿《双层BD体系-整合定稿-2026-10-03》已按吸收即死退役(删除 = git 8e02dcf,内容经 git 历史取证)。已建未接面三条如实登记(同调位 / 刷新升级 / 命中线),处置权归后续批 | -| v0.11 | 2026-10-15 | **简明技术中文用语规范批(用户令):死链修复 1 处**——v0.5 行更名记载内的武器锻造死链改指锻造工坊.md(2026-10-11 更名漏改指路;显示文字「武器锻造」系更名记载的旧名内容本身,按对照性豁免保留,仅换链接目标)。词面修正 0 处、机制零改动 | -| **v0.12** | 2026-10-19 | **系统资源定名传导批(用户裁,承接 42d64ec2/17ef0180)**:「跨局账/这本账/树域账/钥石账本」→ 系统资源表述;「同账路由」→ 同路由;「命中在账未注入」→ 命中未注入——跨文档引用一律「规范名+指路 01-核心循环「系统资源」节」,定义源单点。机制与数值零改动。 | diff --git a/design/gdd/systems/跨局循环/生涯.md b/design/gdd/systems/跨局循环/生涯.md index baabc742..c8ba53cc 100644 --- a/design/gdd/systems/跨局循环/生涯.md +++ b/design/gdd/systems/跨局循环/生涯.md @@ -78,7 +78,7 @@ | 期 | 内容 | 前置 | 建议窗口(候选) | |---|---|---|---| -| 期一 | 跨局汇总页 + 主菜单生涯入口落位。总局数/通关局数两个终身计数域随该批做存档 schema 迁移——**✅ 已实装(2026-10-07 迭代 18 卡④)**:汇总段六类九项+营地与系统组生涯钮+存档 v6 两终身计数域〔v5 升 v6 幂等迁移〕;闸读数与代拍板追认单见 design/qa/iter18-career-exit-report-2026-10-07.md | 提纲评审通过。实装批前置义务 = 对齐迭代 16 UI 批后的现行基线:`FS_*` 六档字号 / `TG_*` 语义色 / `BUTTON_MIN_H=40`(`ui_kit.gd:437`)/ 色板单源 / `page_shell` 模态栈纪律(`ui_kit.gd:394`)——与卡③需求卡片同款红线,本文只登记、不展开 | Alpha 后最近一个 UI 窗口 | +| 期一 | 跨局汇总页 + 主菜单生涯入口落位。总局数/通关局数两个终身计数域随该批做存档 schema 迁移——**✅ 已实装(2026-10-07 迭代 18 卡④)**:汇总段六类九项+营地与系统组生涯钮+存档 v6 两终身计数域〔v5 升 v6 幂等迁移〕;闸读数与代拍板追认单原记于该批出口报告,该件已按「吸收即死」在提交 8e02dcf0 删除,读数以本行与该批提交信息为准 | 提纲评审通过。实装批前置义务 = 对齐迭代 16 UI 批后的现行基线:`FS_*` 六档字号 / `TG_*` 语义色 / `BUTTON_MIN_H=40`(`ui_kit.gd:437`)/ 色板单源 / `page_shell` 模态栈纪律(`ui_kit.gd:394`)——与卡③需求卡片同款红线,本文只登记、不展开 | Alpha 后最近一个 UI 窗口 | | 期二 | 历史冒险回看整段:N 扩容 + 用时埋点 + 旧档摘要迁移 + 逐局列表 + 单局明细(`settlement_review_overlay.gd` 复活承接)+ 营地条带处置(P6 裁案落地) | 期一。实装批开工前须向用户呈报两件:N 终值读数(20 / 50 / 维持 10 三选一)与「用时」埋点口径(计时起点、暂停是否计入——字段级细节本文不做) | 期一落地后独立批 | | 期三 | 图鉴承接(敌人优先,范围与顺序随 P3 甲);「见过」记账面 schema 义务随该批执行 | 期二或独立评估 | Beta 窗口候选(与教学引导同段评估——图鉴的「认得」轴与教学相关;06 教学引导节各条 2026-10-04 起已整体标 Beta 阶段) | @@ -99,11 +99,3 @@ P0-P5 六点已于 2026-10-06 用户全裁(案甲 × 6,备选案与淘汰依 | 丙 | 条带原样永久保留(固定存 10 条,不随 N 动) | 改动最小;淘汰候选:与生涯列表长期双轨,上限语义分裂(营地固定 10 / 生涯 N),N 大于 10 后两处看到的条数对不上 | 裁决方式:随本提纲评审一并定案,期二实装批执行。 - -## 版本历史 - -| 版本 | 日期 | 说明 | -|---|---|---| -| v0.2 | 2026-10-07 | 期一实装随批换代(迭代 18 卡④):状态行升「期一已实装」+主菜单组列生涯钮落位+§四期一行挂实装留痕。设计内容零改版——本文仍是三段内容的范围权威;期二/期三范围与 P6 待裁点维持原状 | -| v0.3 | 2026-10-09 | **文档正确性审查批(用户令——状态记录与证据对齐)**:①跨局汇总表「冒险总局数 / 通关局数」行订正——save v6 两终身计数域已随期一落地(2026-10-07 迭代 18 卡④),「无现成数据源、须新增」改为现成;②两处「终局特性(集) relics」改「终局专长持有集 relics」(特性系奇物旧称已退役;存档键名沿用历史形态不动)。 | -| v0.1 | 2026-10-06 | 设计提纲首版(迭代 17 卡④设计批,纯文档):五节成文;P0-P5 已裁结论落文;新发现待裁点 P6(营地最近冒险条带去留);现状描述全部经代码级复核(F1-F10,见 design/qa/iter17-career-exit-report-2026-10-06.md)。状态 = 范围草案待评审 | diff --git a/design/gdd/systems/跨局循环/秘宝.md b/design/gdd/systems/跨局循环/秘宝.md index 8f14c434..bf01dec8 100644 --- a/design/gdd/systems/跨局循环/秘宝.md +++ b/design/gdd/systems/跨局循环/秘宝.md @@ -9,7 +9,7 @@ **现行形态 = 局外同调件**:开局前在营地装配(营地·秘宝匣柜台「同调装配」段)、占同调位(0 起步、固定 3 格,每件固定占 1 格)、被动件整局生效/主动件每冒险充能(冒险开始重置)。实现面 = `treasure_items.tres` + `game/core/attunement.gd`(同调位数量判定源=天赋树同调位节点点亮数——2026-10-11 Q2 裁甲、迭代 21 T4 槽位收编落地;原 `attunement_growth.tres` 谓词表已顺带退役;解锁条件=数据行内 `unlock_requires` 字段承载——迭代 22 实装落地,2026-10-12)。**新目录 12 件已随迭代 22 实装批全量落地(2026-10-12,T1-T7)**,逐件实录见「目录(重设计 v1)」各表实态列。 -**沿革一句话**:本系统前身为切片期掉落消耗品形态(2026-09-29 迭代 7),2026-10-03 随同调实施批整体替换为现行形态;旧目录九件已全数退役入素材库(2026-10-08/10 用户裁)。历史细节见版本历史与 git 提交史。 +**沿革一句话**:本系统前身为切片期掉落消耗品形态(2026-09-29 迭代 7),2026-10-03 随同调实施批整体替换为现行形态;旧目录九件已全数退役入素材库(2026-10-08/10 用户裁)。历史细节见 git 提交史。 **现行形态速览**: @@ -258,40 +258,3 @@ playtest 预警(预注册,归难度曲线与Boss): ## 待办 本系统待办条目已统一收编至 [06-待办清单](../../06-待办清单.md),本节不再逐条登记。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v3.0 | 2026-10-12 | **迭代 22 反哺落文批(实现报告 §三①②③,用户逐点裁「落文」)**:①目录三表补实态三列(item_id/解锁〔价格或条件,阈值 provisional〕/效果实现 kind)+试炼镐行换代自动兑付语义+全部「实装批落地前」现状句换代(定位形态节/目录引言/负责表/受理框架节/调参表/验收护栏覆盖两行)+旧目录退役指针补代码旧行已删;②代价轴转化获取行换代=试炼镐每开 8 安全格自动兑当轮 AP+1(2026-10-12 用户裁:无玩家发起入口、战斗级重置、兑付时序=揭示先于扣费故 AP 归零恰逢满点轮不结束)——设计留白〔积点计数重置周期〕随裁补记;③解锁混合制节条件表实录(钥石 8 件 10/25+条件 4 件三计数键阈值)+承载换代=行内 unlock_requires 字段 | -| v3.1 | 2026-10-15 | **简明技术中文用语规范批(用户令):词面修正 3 处**——「报错」→「返回错误」2 处(真视窄域护栏句、验收·护栏强制条);「收口」→「收束」1 处(P0 第 5 条「装配与充能账随冒险收口」——冒险生命周期收束为本文件既有用词)。机制与数值零改动;目录表线香/天眼行「战斗级/关卡级充能」系术语表在册秘宝主动件术语,不属退役词命中,原样保留 | -| v0.2 | 2026-09-16 | 更名批(用户拍板 2026-09-16):系统更名"辅助道具"→"秘宝"——定位已非纯数值道具,含信息/妙用向效果;文件同步重命名;英文代号 AUXILIARY_ITEMS 暂沿用 | -| v0.3 | 2026-09-17 | 切片期空内容拍板(用户拍板):道具定义表为空列为合法态——五维度覆盖检查改为仅对非空清单执行;验收标准覆盖检查条目同步;06「维度覆盖检查破缺」「失义道具的掉落投放」两条随批关闭 | -| v0.4 | 2026-09-17 | 数值纪律收口批:正文与调参表 knob 现行值改指路存根(事实源 data/tables/*.tres 与 registry),1 处失同步修正(AP 8→6 漏改)——行名与表结构列保留 | -| v0.5 | 2026-09-29 | **内容批落地修订(迭代 7——用户八拍板)**:道具定义表六行入表(三有效实装:工兵令/探巢摆钟/爆破工兵包;探宝罗盘退役留痕;显影尘/地穴全图卷封存);投放维度覆盖口径+豁免面 {plan, info, counter} 登记;解锁语义定稿;奖励节点=三选一构筑点;掉落投放权重 provisional | -| v0.6a | 2026-09-30 | **拍板点 1 收口批(用户裁决甲:同调=终局方向)**:新增「定位与形态沿革」节——现行=过渡形态、终局=局外同调件,两态关系=形态替换;正文口径回写四处;实施批登记见 06「秘宝同调实施批」条 | -| v0.6b | 2026-10-04 | **迭代 13 D6 实装修订**:爆破工兵包换装启用+「中立移除」实装口径节落文+投放态注记换代〔版本号 2026-10-09 由重复的 v0.6 改注 b 后缀——原两行同号系 10-04 批落行未查前账所致,node-reward v2.2a/b 先例〕 | -| v0.7 | 2026-10-01 | **奖励节点渠道改写注记(迭代 10 追加批)**:「奖励节点三选一构筑点」形态退役——奖励节点改提升三选一共享池;道具件经节点渠道入本关库存;同调实施批的全渠道统一收口义务 | -| v0.8 | 2026-10-03 | **反制契约作废批(用户终裁——层级错配失败设计)**:五维度「反制」行改终裁态;上游地形变异依赖行、P2 后置行同步;地形变异.md v0.6 同批落义务作废注记 | -| v0.9 | 2026-10-05 | **消歧更名批(用户拍板):系统更名「魔法道具」→「秘宝」**——「魔法」已被本作征用为敌方侧伤害/护甲语汇;同调位机制名保留;本批仅改文档称谓,代码标识符 aux_* 沿用(对齐另批) | -| v1.0 | 2026-10-06 | **效果声明换代(内容数据驱动扩展批)**:被动件改订阅行(on/when/do 由效果引擎统一解释)+主动件受理闸数据化——按件 id 硬编码清零;结构冻结零触碰,行为与迁移前逐位一致(MC 同种子 40 局对拍实证) | -| v1.1 | 2026-10-07 | **生命周期轴裁决随批(框架现行事实源=核心循环「生命周期轴」节)**:三选一刷新双源补两账语义(存量账/临时账/消耗顺序);「三选一呈现」=比节点更细的事件 | -| v1.2 | 2026-10-07 | **三层职责分界批(用户裁)**:头部一句话换代为「营地装配的角色机能件」(操作包络加强,不出裸属性值、不改战斗结算机制);机制向三件归留本层重设计批处置 | -| v1.3 | 2026-10-07 | **三件机制向现件归留裁决(用户裁)**:淬毒刃纹→专长池;标中殉爆→专长池插旗系;惊巢反制→退役进素材库;现役目录九→六 | -| v1.4 | 2026-10-07 | **同调位分档(用户裁)**:同调位分三档(普通格/优秀格/稀有格)、槽位可装 ≤ 槽位档位的件、里程碑分档发槽;费用制落选留档 | -| v1.5 | 2026-10-08 | **新目录 15 件落地批(用户终审全落)**:新增「目录(重设计 v1)」节=新现行事实源——三档骨架+15 件表;旧目录全数退役只作素材库;数据迁移与旧行删除归实装批 | -| v1.6 | 2026-10-09 | **去毒批**:速览旧目录九件表加退役标注+魔法提灯归属待裁指路 06/老正文过期声称清扫——新老框架分家 | -| v1.7 | 2026-10-09 | **文档正确性审查批**:头部横幅重写/沿革节两态表述换代/实现面表名失同步修正/老正文深层逐节收口+四节隔离标注/调参表与验收旧语境改写 | -| v1.8 | 2026-10-10 | 营地柜台名扫改(天赋树设计会话裁「道具工坊」改名「秘宝匣」):两处改「营地·秘宝匣柜台」。机制零改动 | -| v1.9 | 2026-10-10 | **第一版秘宝全弃用收官批(用户裁「退役与封存都进素材库」)**:显影尘/地穴全图卷由 deferred 改 retired;正文四处换代;素材库四件迁表一;数据表四行删除归退役删行批 | -| v2.0 | 2026-10-10 | **秘宝解锁与槽位裁定批(grilling 审查轮,用户逐裁)**:①同调位上限=基础 3 格+第四只手突破至 4;②槽位数量与品质归天赋树同调位节点(1=普通格/2=优秀格/3=稀有格递增);秘宝侧同调增长表改造为解锁条件表随实装批;③解锁方式换代=混合制(基础件钥石购买+特定件条件解锁,旧「档位谓词分级」作废);④换装券=自主换装唯一渠道(显式例外);⑤三选一刷新双源正文改「存量账/临时账」称谓(先扣临时后扣存量定案;X/Y 字母对表归实装批 T0);⑥分界尺精确化=属性值指角色战斗属性值、经济与操作参数属操作包络(头部+核心循环分界节同步);⑦中立移除「重生待定」标注摘除(素材库件同规);⑧速览旧目录三段退役清理折叠为指针 | -| v2.9 | 2026-10-11 | **第四只手删除批(用户推导「带了等于没带」成立,主会话上轮净收益分析有算术错误致漏删)**:净账=占一槽换一槽(3=3)且自锁唯一稀有格(稀有格只能装它自己、额外格为优秀格)——严格劣于任何真秘宝,删除;稀有档 3→2、全目录 13→12 件;「跨域」概念撤回(用户澄清:天赋树与秘宝同为角色属性贡献者,不存在所有权排他——「归天赋树管」措辞改中性「由树节点提供」) | -| v2.8 | 2026-10-11 | **拾取渠道废止批(用户裁「秘宝只在冒险开始前配置,不存在任何冒险中更换方式」)**:删「冒险中的秘宝拾取」段;来路口径回单渠道(营地解锁)+绝对规则落文(无例外——拾取与效果均不产生装配变化);验收增「装配不可变」条(冒险全程装配快照逐位不变断言);受影响件扫描=13 件零件失效(唯一依赖换装的换装券已于 v2.7 删除) | -| v2.7 | 2026-10-11 | **目录修正批(用户复核抓出两个设计错误)**:①回能器删除(孤儿件——新目录无冒险级限量件,且关卡级/战斗级件天然周期重置、开局回充结构性冗余;优秀档 5→3,两位空位不构成补件议程);②换装券撤消(**设计错误承认**:换装券系从「中途不可换装」规则反推的错误造物,从来不是秘宝件——真实机制=冒险中拾取未知秘宝、打开选择、携带满则替换);③获取渠道换代=营地解锁+冒险拾取两条(原「不掉落」口径废止);新增「冒险中的秘宝拾取」段(替换=获取事件与不可自主换装不冲突;投放渠道/候选构成/频率归实装批与数值批);④效果轴操作能力/行动资源两格改空位、恢复机制改无现役来源;⑤全部「15 件」计数换代 13 件 | -| v2.6 | 2026-10-11 | **怪物巢穴类型退役批(用户裁)**:巢穴预告件效果文本换代(揭示本板危险格数量——件代号保留,命名归用户);「巢穴计数」账名同步;世界观风味层巢穴隐喻保留(00-游戏概念隐喻轴) | -| v2.5 | 2026-10-11 | **可读性审查批(grilling,用户令「谁看了都知道它在说什么」)**:①术语指路行入头部(全库术语表同批建立);②首用术语白话化/查表化(同调位、操作包络、RAP、GP、微光、巢穴等入术语表;slot_cost→每件固定占 1 格);③黑话清扫=正主/落籍/P1 甲死指针/charges/结构闸/边界锚/批前/在册/单口/旋钮;④承重契约白话化+头注修正(非全部由加载校验强制)+真视前向引用补注;⑤验收分层句白话化;⑥两处过时事实修正=战斗道具窗口(2026-09-15 已下线,实证战斗结算文档)/21 项义务死指针(registry aux_items 实证无 obligations 字段,改写为随实装批消解);⑦版本历史 v2.2-v2.4 行序修复;⑧全库术语统一随批(危险格/整图/专长凭证,见术语表 v1.0) | -| v2.1 | 2026-10-10 | **系统目录归位批(用户发现结构问题)**:本文件自 `systems/排雷循环/` 迁入 `systems/跨局循环/`——生命周期裁定=解锁/装配/存档持久全在跨局侧,排雷循环仅是生效现场;成因=前身「辅助道具」系切片期掉落形态故旧置排雷循环,同调换代只换内容未搬位置。文内向排雷循环四文档的引用改跨目录路径 | -| v2.2 | 2026-10-10 | **正文换代批(方案甲,用户裁「旧的删、误标改」)**:①定位与形态节压缩(沿革一句话;删过渡形态长段/中立移除规格段〔规格迁素材库 blast_kit 行〕/衔接纪律/事故留痕——正文零历史纪律);②五维度框架节去「在役旧实现」错标改写(信息/风险/行动三维列新目录承载件,规划/反制豁免维持;逐件标注随实装批);③使用编排/叠加层/边缘零信息三节去⚠(机制为新目录沿用)+举例换新件;④调参表清理(删旧目录六行句/投放态注记/playtest 预读行;订阅行段去件名举例与错标——效果引擎机制在役沿用);⑤验收护栏与覆盖检查两条换代新目录语境;⑥「旧目录处置」小节删除(素材库表一承载)。真旧内容承载=素材库+git 历史 | -| v2.3 | 2026-10-10 | **设计骨架节落地(用户逐轮裁:三大类方向+代价×效果矩阵+使用代价空间+转化获取三通道)**:新增「## 设计骨架」节替换旧维度框架节——①叙述总纲=玩家体验两面(信息/操作);②效果轴三方向(信息/行动资源/操作能力)+细分格开放清单(奖励预读空位备注微光常显重合;资源容量扩展/奖励预读等空位在案);③代价轴三段=获取代价(钥石/条件解锁)+使用代价(按重置周期分层:冒险级/关卡级/战斗级/转化获取〔行为/资源/时间三通道,后两空位〕/常时;恢复机制独立参数=回能器关级回充只作用于冒险级件)+装配代价(slot_cost/档位格约束);④用法规则五条(新件=效果格×代价格/档位=预置平衡带/覆盖检查只跑三方向且空位不构成议程/信息方向按减赌目的检验/账本独立值 provisional);⑤旧五维度框架概念退役(v0.5 起在册的自查清单由骨架三方向继承;逐件归属随实装批登记);⑥负责表/验收/依赖表相关行同步。骨架定位=可设计方向清单(类比奇物骨架、机能面层次),非既有件分类;本批过程事故在册=先行的行切片脚本损坏提交(deb1a80)已全文重写修复 | -| v2.4 | 2026-10-10 | **棋盘事实不可变裁定批(用户裁)**:①承重契约增条——秘宝效果不得移除/增改危险格位置与邻接数字,效果形态只允许信息呈现与开格动作;原爆破工兵包「中立移除」定性为违规形态、随件退役废止(规格留素材库作反面留档);②设计骨架增预留方向行——无差别开格(3×3 全开、收益不获取惩罚不触发)预留,现不做后续拓展再裁,与天眼有差别开格相区分 | -| **v2.5** | 2026-10-19 | **系统资源定名传导批(用户裁,承接 42d64ec2/17ef0180)**:「存量账+临时账两本账」→ 存量+临时两笔;三处表头「写哪本账」→「写哪笔系统资源」;「各周期账本独立」→ 系统资源独立——跨文档引用一律「规范名+指路 01-核心循环「系统资源」节」,定义源单点。机制与数值零改动。 | diff --git a/design/gdd/systems/跨局循环/锻造工坊.md b/design/gdd/systems/跨局循环/锻造工坊.md index 6ee5124f..2cbc3c35 100644 --- a/design/gdd/systems/跨局循环/锻造工坊.md +++ b/design/gdd/systems/跨局循环/锻造工坊.md @@ -1,7 +1,7 @@ # 锻造工坊 > 一句话:营地的武器与护甲成长——武器锻造区三条路线、护甲锻造区三条路线各练各的,钥石消费,一次冒险各选一件,满级特效留位本期不做 -> 状态:**v0.8 迭代 21 反哺④残余写入文档(2026-10-13)**——「树侧钥匙」句换代:钥匙节点 forge_workshop 已随迭代 21 实装在役(free 无前置、点亮展开本柜台、锁定态零购买路径),原「实装归 06」悬置指针终结(详见版本历史 v0.8 行)。承 v0.7 迭代 23 反哺写入(2026-10-13)——正文补 Q1 等级语义衔接(0 = 未练合法态)、效果类型闭集 24→31 订正、实装边界 1 回填实装实态(已随迭代 23 入库)。承 v0.6 完备性检查批(承 v0.5 B 组定案——**17 裁点全数清零**:1 丙 / 1a 一次冒险一件武器+一件甲 / 1b 营地可换·战斗禁换 / 1c 免费 / 2a 伪裁点消解 / 2b 随 3a 消解 / 3a 魔法护甲统一命名 / 3b 敌方攻击缺省普通·克制反向当下生效 / 3c 每型独立路线 / 4a 前缓后陡 / 4b 锻造内自闭环 / 4b-1 并联双通道 / 5b 纯钥石 / 5c 零材料 / 6 满级特效本期不做留扩展位 / 8a 工作间两区定名;2c、5a 已于 v0.4 结案)。**v0.6 变更(2026-10-12 完备性检查批·grilling 用户逐条裁)**:现役事实基线换代(forge_products 行族已随迭代 21 T5 退役、定价参数改历史考古口径);**两根类型轴所有权移交**(默认值归锻造工坊配置常驻持有、hero.tres 静态表两轴删除、选中态写存档+参数面注入);「与秘宝混合制同构」与「激活穿刺系专长」两处无依据表述订正删除。**满级特效本期不做**(只留扩展位);全部数值 provisional,终值归 Alpha 收官 M4 数值批〔未排期〕;实装已随迭代 23 入库(2026-10-12,见版本历史 v0.7 行) +> 状态:**v0.8 迭代 21 反哺④残余写入文档(2026-10-13)**——「树侧钥匙」句换代:钥匙节点 forge_workshop 已随迭代 21 实装在役(free 无前置、点亮展开本柜台、锁定态零购买路径),原「实装归 06」悬置指针终结。承 v0.7 迭代 23 反哺写入(2026-10-13)——正文补 Q1 等级语义衔接(0 = 未练合法态)、效果类型闭集 24→31 订正、实装边界 1 回填实装实态(已随迭代 23 入库)。承 v0.6 完备性检查批(承 v0.5 B 组定案——**17 裁点全数清零**:1 丙 / 1a 一次冒险一件武器+一件甲 / 1b 营地可换·战斗禁换 / 1c 免费 / 2a 伪裁点消解 / 2b 随 3a 消解 / 3a 魔法护甲统一命名 / 3b 敌方攻击缺省普通·克制反向当下生效 / 3c 每型独立路线 / 4a 前缓后陡 / 4b 锻造内自闭环 / 4b-1 并联双通道 / 5b 纯钥石 / 5c 零材料 / 6 满级特效本期不做留扩展位 / 8a 工作间两区定名;2c、5a 已于 v0.4 结案)。**v0.6 变更(2026-10-12 完备性检查批·grilling 用户逐条裁)**:现役事实基线换代(forge_products 行族已随迭代 21 T5 退役、定价参数改历史考古口径);**两根类型轴所有权移交**(默认值归锻造工坊配置常驻持有、hero.tres 静态表两轴删除、选中态写存档+参数面注入);「与秘宝混合制同构」与「激活穿刺系专长」两处无依据表述订正删除。**满级特效本期不做**(只留扩展位);全部数值 provisional,终值归 Alpha 收官 M4 数值批〔未排期〕;实装已随迭代 23 入库(2026-10-12) > 成文底稿:`design/research/提案-武器锻造系统-2026-10-07.md`(提案过程稿——全部备选案与淘汰依据、用户原案逐条对照见彼;本文只收录定案口径;**未启用的满级特效候选池亦留彼 §八**,不进正文) ## 设计目的 @@ -224,20 +224,3 @@ ### 10 · 数值与验证 全部数值 provisional 归 Alpha 收官 M4 数值批;实装批必须带改前 / 改后同随机种子配对读数验证难度影响。 - -## 版本历史 - -| 版本 | 日期 | 变更 | -|---|---|---| -| v0.8 | 2026-10-13 | **迭代 21 反哺④残余落文(用户裁「按呈报落文」)**:「树侧钥匙」句换代——钥匙节点 forge_workshop 已随迭代 21 实装在役(free 无前置、点亮展开本柜台、锁定态零购买路径),原「实装归 06「天赋树实装批」」悬置指针(该 06 条已随 480 清理批销号)终结。机制零改动 | -| v0.7 | 2026-10-13 | **迭代 23 反哺落文批(实现报告 §五,用户裁「在这里进行更新」;追认单九项同日全数追认)**:①正文补 Q1 等级语义衔接——「三件武器」节与「工作间内容清单·4」两处补「0 级 = 未练合法态」(未解锁/未锻造 = 0 加值裸体态,锻出第 1 级 = 首个 +1;原正文「1 到上限」未同步 Q1 续裁);②「满级特效扩展位」节与「现役代码事实」表——效果引擎效果类型闭集 24 种→**31 种**(原记系 2026-10-07 旧快照,迭代 20 T1 +7、迭代 22 T3 +1;冒烟断言钉 31);③实装边界 1 回填实装实态——落表=新表 forge.tres(ForgeTable 默认两轴+六路线行族)、路线 id 六个、字段闭集 12 项、ConfigDB.forge_* 访问器(「归实装批定义」已兑现)。机制与数值零改动(provisional 终值仍归 M4) | -| v0.1 | 2026-10-09 | 首版成文(用户令「完成文档编写、代码不实现、记录待办」)——按提案 v1.1 推荐案收录定案口径:柜台就地改造/三武器三甲独立路线/纯钥石零材料/前缓后陡/复用为主特效框架;17 裁点开放在册待用户逐点裁决;02-系统清单、元进度指路句、06 专条与实装待办随批同步 | -| v0.2 | 2026-10-10 | 天赋树设计会话裁定跨文档同步批:「柜台承载」节补登记树侧解锁门——本柜台以天赋树「锻造工坊」解锁节点为前置(免费节点,前置 = 攻击淬炼/护甲淬炼累计各 ≥2 级,等级阈值前置属新机制;实装归 06「天赋树结构重构批」)。机制设计零改动 | -| v0.3 | 2026-10-11 | **更名批(用户令,锻造工坊裁决会话)**:系统名「武器锻造」→「锻造工坊」——本文档改名 `锻造工坊.md`,与树上钥匙节点同名;全库现行指路链接与 06 实装批条名随批换代,提案过程稿文件名、用户原案引文、迭代 18 qa 清单与各版本历史行内旧名按历史记载保留;「武器锻造区/护甲锻造区」区名随承载裁决收口另改。机制设计零改动 | -| v0.5 | 2026-10-12 | **B 组定案落文(锻造工坊裁决会话续,用户逐点裁决)——17 裁点清零**:①1 丙=当前武器单选+每件独立路线;②1a 扩面=**一次冒险一个武器类型+一个甲型**(原只问武器携带数);③1b/1c=营地免费切换·冒险开始后锁死;④**2a 推翻**——伪裁点消解:伤害结算只有一套、单据自带 attack_type 栏,删"叠加/替代/互斥"三分法,改陈述「同一矩阵·单据自带类型·差异只在单据形态与生命周期」;⑤**2b 随 3a 自动消解**(非独立裁点,条件是"魔法甲≠ward");⑥3a=统一命名**魔法护甲**(ward;「魔法甲」系**笔误**不做简称处理,registry 不登记别名);⑦**3b 推翻**——敌方攻击有类型、未设置=默认普通 ⇒ 甲型差异「基础 AC + 克制修正」两轴当下即生效,原"诚实收窄/克制反向留结构位"整段作废,并如实登记现役落差(敌方单据 attack_type="" 恒不查矩阵、`enemy.tres:527` 轴未开)为**跨系统汇合点**(填值面归敌人系统/战斗结算)+ 连带后果(三型成纯序、魔法护甲双负无优势窗口);⑧3c=每型独立路线;⑨4a=前缓后陡(只锁方向);⑩**4a-1 撤回**——"曲线×定价=又贵又弱"结论无依据,不落方向性判断,只留"两条旋钮同批标定"程序句;⑪4b=锻造内自闭环;⑫4b-1=**并联双通道**(练满前一档 OR 一次性解锁价,互不影响);⑬5b=纯钥石(用户注:后续若要区分再重构,不预先建面);⑭5c=零材料;⑮**6 推翻**——满级特效**本期不做**,只留扩展位(不设计清单/不定值/不实装/不开参数位/存档不设特效域),七条候选池退回过程稿 §八;⑯8a=工作间**两区定名 + 路线行名**(区=武器锻造区/护甲锻造区;行=长剑锻造·长枪锻造·法杖锻造、轻甲锻造·重甲锻造·魔法护甲锻造,第一件武器显示名 剑→**长剑**);**并核结用户指出的事实——局内不存在武器/护甲提升**:商店货架三行"攻击锻升/生命锻升/护甲锻升"实为奇物「属性值提升」三轴的货架前台标签(`shop.tres` pool_shelf kind_id → `adventure.tres` CURIO_KINDS),与锻造无关,是否去"锻"字归实装批呈现面。连带:设计目的节能力台阶收缩为新武器/新甲解锁;实装边界重编号(特效条目改"本期不实装"、新增敌方攻击类型填值条);「待裁决清单」换代为「裁决结果清单(17 裁点全表)」+新增「工作间内容清单(实装批需求卡片输入)」两件交付。**同日五点澄清(不升版本)**:①2a 用户确认无异议——按**统一伤害轴**走(删三分法);②2b 连带确认:只有魔法护甲一型,**「魔法甲」系笔误**而非别名,registry 不登记别名、第四甲型议题彻底消解;③3b 的连带后果**不在本批考虑**——用户裁定其为**后续开发改造的前置信息**(敌方攻击差异化与魔法护甲正当性归后续批,本批只按统一伤害轴落结构与字段);④**8a 的 Y 层**(路线行名)定案="件名 + 锻造",第一件武器显示名 剑 → **长剑**;⑤**用户指出局内不存在武器提升——属实**:货架三行"锻升"是奇物「属性值提升」三轴(`shop.tres` pool_shelf 的 kind_id 指向 `adventure.tres` CURIO_KINDS)的货架前台标签,进冒险加算区、冒险结束清零,不是武器也不是护甲;**⑥同日 C/D 两项改名裁决**——C:货架三行「X锻升」→「**X祝福**」(攻击祝福 / 生命祝福 / 护甲祝福,后缀 = 用户选定,D&D 参照为 Blessing),机制分类名「属性值提升」不动、只改玩家向显示名,执行归独立改名小批(06 在册,本会话按禁动 game/ 纪律不代执行);D:棋盘格 defense 正向行与 `ac_up` 状态的同名次 **护甲强化** → **盾牌加护**(用户提案,理由=它是临时叠层状态而非护甲本体;附带约定「加护 = AC 判定层,护盾 = 保险丝那种吸收层,两者不得混用」),同样归改名小批——**注:D 改名连带 `smoke_all.gd:1199` 一条硬编码断言,必须同步改,否则冒烟红**。开工门(17 裁点清零)已满足 | -| v0.4 | 2026-10-11 | **A 组定案落文(锻造工坊裁决会话,用户逐裁)**:①承载换代——营地四柜台并排(树淬炼/锻造工坊/秘宝匣/奖励格图鉴),攻防独立柜台、工作间内武器/护甲两区并列零顺序门槛、宽度不足滚动条兜底、程序占位视觉终稿归 HUD 营地批(A②A③);②生命档移除——生命强化唯一入口=树脊柱生命线,本工作间纯攻防(A①;实装边界①同步);③**攻防所有权切分**——攻击唯一入口=武器路线、AC 唯一入口=甲路线,树脊柱砍攻击/护甲两线、树零攻防来源(红线;树侧 29→21 落文归天赋树会话交接批);④树侧钥匙改无前置直接可点亮(原等级阈值前置随两线砍除作废);⑤注入衔接落文——锻造路线加值=当前武器攻击加值+当前甲 AC 加值,只按当前选中生效;⑥死条件 magic_vs_magic 复活案作废(D 组核结:魔网织者在素材库表二退役名单;2c 结案);⑦「道具工坊」退役词清除(承载节随 A② 改写一并换代为秘宝匣);⑧存档域改旧档废弃口径(开发阶段无迁移)。B 组 15 裁点挂起待用户发令 | -| v0.6 | 2026-10-12 | **完备性检查批(grilling 全库核查——现役代码事实/关联文档/引用一致性三路,用户逐条裁)**:①**现役事实基线换代**——`meta.tres` forge_products 行族已随迭代 21 T5 攻防所有权切分整体退役(行族/访问器/购买面三处退役登记),「改造现役行(吸收)」语义全线订正为「新建行族」(现役代码事实表/三件武器表/工作间清单/实装边界 1 五处);定价「现役参数沿用」改「历史考古参数(20 钥石/150% 公比,`meta.tres:82-84` 退役批注)、实装投值归 M4 从零标定」;②**两根类型轴所有权移交(用户裁)**——`attack_type`/`armor_type` 默认值归锻造工坊配置常驻持有、hero.tres 静态表两轴删除;选中态写存档域+冒险开始参数面注入(订正原「写 hero.tres 休眠轴」口径——与现役「表运行期只读」纪律 `meta_progression.gd:12-13/119` 及本文存档域条目双重冲突);默认值与柜台解锁状态解耦(未解锁=无交互入口但配置常驻可读,不存在读不到默认值的窗口);③**两处无依据表述订正删除**——「与秘宝解锁的混合制同构」(「同构」非本项目概念;与秘宝仅共享钥石单币+直购/条件解锁成分语义,通道结构不同:件级单通道分派 vs 同路线双通道并联)、「选长枪激活穿刺系专长的价值」(现役专长均为跨攻击类型通用件、不按 attack_type 分系,`feats.tres` 29 行实证,该表述无现役对应物);④货架坐标订正(CURIO_KINDS 实为 `adventure_table.gd:29` schema 常量、feat_ticket 为显式豁免种 5/6 命中)+ 改名小批执行态回写(已合入 master `0c93a71`/`0144f60`);⑤存档域预登记存档序列化.md(用户令:验收文档现在做、不等实装批);⑥联动落文:元进度.md「跨局注入」节补四层叠加公式(v1.4)、术语表.md 新增锻造工坊节、entities.yaml terminology 补词条+新建锻造工坊条目。**不在本批范围(呈报归属,谁的问题谁改)**:registry ac_up 显示名失同步(归改名小批 D 项)、「魔法甲」四处残留(敌人系统/美术三档,归 3a 裁执行面)、registry meta_table 条目 forge_products 滞后(归元进度线)、天赋树.md 状态行滞后、06 提案条标题旧名 | -| —— | 2026-10-12 | **同日续裁写入文档(不升版本)**:①**编入迭代 23**(用户令——roadmap 主线序列 + 06 实装批条状态同步;M4 数值批顺延迭代 24+);②实装边界 6 订正——敌方 attack_type 为敌方定义数据(enemy.tres/skills.tres 行级,与敌种名字/血量同批同时读写、无独立时序),「两批排期协商」句删除(用户 D 裁:时序问题不存在;本批只按 3b 裁落结构面);③存档域「合并评估」语境订正——forge_routes 独立成域已预登记,树批入库后无共域冲突(用户 C 裁:非裁点,06 实装批条同句订正);④A 项(未解锁时默认值读取路径)确认口径=配置表常驻持有、解锁只门控交互不门控读取,v0.6 正文已落此文;⑤**等级语义裁(Q1)**——初始持有路线 0 级起步:未解锁/未锻造=0 加值(裸体态,类型=普通/轻甲);解锁并锻造第一级=「获得装备」=1 级=首个 +1 加值;逐级递进。正文「1 到上限」为量级描述(1-5 级),0=未练合法态;⑥**provisional 值落卡(Q2)**——需求卡片 T1 锚表:cap 5/武器与护甲每级增量统一 +1(累计 1/2/3/4/5;provisional 线性起步,4a 前缓后陡为终值形状方向归 M4)/甲型基础 AC 10/12/9(现役结构值)/价格 20×150%^n(20/30/45/67/101)/解锁价 200(中段三级 213 的九折);provisional 归代拍板沿锚投值、终值 M4 | -| v0.9 | 2026-10-15 | **简明技术中文用语规范批(用户令):词面修正 2 处**——「落文」→「写入」1 处(裁决结果清单表头「落文处」→「写入处」);「收口」→「完成裁决」1 处(4b-1 行备注「原正文"或"字歧义收口」)。另按失同步核对修正文头状态行:版本注 v0.7 → v0.8(v0.8 迭代 21 反哺④残余落文行已入库而状态行未随批更替,本批补齐,事实零变更)。机制与数值零改动 | -| v0.10 | 2026-10-18 | **文档卫生批(用户令):死链清偿**——文头状态行尾句「实装待办在册 06-待办清单「锻造工坊实装批」条——开工门 = 17 裁点清零 + 用户发令,裁点门已满足」过期指路换代:该 06 条已随批次完成销号,状态行尾句改记入库事实(实装已随迭代 23 入库,2026-10-12,见 v0.7 行)。机制与数值零改动 | -| **v0.11** | 2026-10-19 | **系统资源定名传导批(用户裁,承接 42d64ec2/17ef0180)**:「钥石账本与营地柜台结构」→ 钥石与营地柜台结构——跨文档引用一律「规范名+指路 01-核心循环「系统资源」节」,定义源单点。机制与数值零改动。 | diff --git a/design/gdd/ux/battle.md b/design/gdd/ux/battle.md index b32095bb..8307ef6f 100644 --- a/design/gdd/ux/battle.md +++ b/design/gdd/ux/battle.md @@ -2,7 +2,7 @@ > **Status**: Complete — /ux-review 修订落稿(2026-09-12,blocking 7 项已修,待复检) > **Author**: user + ux-designer -> **Last Updated**: 2026-10-15(简明技术中文用语规范批:词面修正 30 处——见文末修订记录) +> **Last Updated**: 2026-10-15(简明技术中文用语规范批:词面修正 30 处) > **Platform Target**: PC (Steam)——Keyboard/Mouse 主(全部操作纯鼠标可完成)、Gamepad Partial 非 MVP、Touch None(同 technical-preferences) > **上游修订依赖**: 弃图刷新挖掘期受理已随布局决策 4 落稿上游(2026-09-12:行动经济 Active 受理 + 每轮上限 2 次、排雷玩法 Active·仅刷新路径装板、战斗结算 `refresh_board` 编排 + 恒 same_board、registry `rap_rules` 同步——见 OQ11) > **Template**: UX Spec @@ -427,24 +427,3 @@ | 敌人系统资产下限 | 受击反馈/死亡表现/顺位标记 | §Transitions 受击 + §States 敌人死亡呈现(禁瞬消)+ §Component 顺位徽标;呈现语义在本 spec(同等 blocking),动画密度归战斗表现 | --- - -## 修订记录 - -| 日期 | 改动 | -|---|---| -| 2026-09-15 | 雾格残留清理:格态收窄为已开 / 未开两态(删除雾图变体状态行、四格态 AC 与已开雾格 tint / 雾区全开信号两条 AC);图例面板与 toast 槽去掉雾条目与雾首遇提示;BoardView 纹带、绘制优先级与色弱冗余改按通用变异纹带表述;`ux_hint_shown` 的 hint_id 枚举去掉 fog_first;输入义务与 §13 义务对照表去掉 地形变异×3 一项;目标感知示例与提示文案 OQ 措辞同步。本 spec 不装载被移除机制的呈现义务 | -| 2026-09-16 | 格面资源批 UI 欠账完成(随 2026-09-15 可选类道具删除的代码完成同步文档):① 布局四区化——删 E 区道具面板行、布局决策 2(道具窗口形态=右栏原位激活)整段删除(编号留空防交叉引用失锚)、ASCII 线框图重绘为 A/B/C/D 四区(D 区横向加宽 ~1036px)、A 区节点链示例改文字签槽实际渲染(战/赏/疗/王);② States 删道具窗口态与零库存空态(「道包空空」);③ 结算口径五段化(授予→增益/减益→战斗→衰减→判定)与明细行 10 类封闭协议(删 15 类行、四类行旧口径;「奖励未生效」行保留);④ 交互/动效/事件表删道具窗口行、跳过按钮、`ux_window_choice`、`submit_window_selection`;⑤ 数据源登记删 `query_inventory` 与窗口载荷,奖励身份按现行 `query_identity` 只读回调口径校正;⑥ 验收清单删窗口断言、五区改四区、未生效类行改现行两型(溢出未生效/奖励未生效);⑦ 关卡末清库反馈义务改载秘宝背包(随秘宝 P0 落地,本批不设计具体呈现);⑧ OQ7(道具窗口原位激活)删除、OQ 重编号,「囤刀待机」等旧可选类措辞清理。本 spec 不装载被删除机制的呈现义务 | -| 2026-09-20 | **敌人卡形态裁决完成(2026-09-20 用户看对照样张拍板,06 待办「敌人卡形态」解决移除——状态记录 99)**:全站桩形态定稿——① B 区主角与敌人均为无框立绘+底座(站桩式),**英雄卡/敌人卡组件整体退役,卡片式不再作为候选**;主角血条悬浮头顶、状态效果小图标一排挂血条正下方,敌人血条+顺位徽标悬浮头顶、状态小图标同款挂血条下;攻击值等规划数据仍归 C 区数据框(C 区不动);② 布局表 B 区行、Component Inventory 英雄卡/敌人卡两行随裁决改写(敌方 side 池共享层数各立绘同值、意图动画占位等既有语义平移到站桩载体,不随形态改变);③ ASCII 线框图 B 区重绘(旧"意图:爪击/环点"示意早已随行为环退役,本次一并清掉);④ OQ4 改写为裁决已完成注记,对照样张存档 `production/mockups/`;呈现义务细节重述(受击/退场演出挂点等)随表现层升级批执行 | -| 2026-09-23 | **停点前移批(冒险入口流程倒置修复,用户 2026-09-23 拍板;上位裁决 = 棋盘/战斗舞台 Node2D 迁移批(已执行完毕,git 历史可查),代码实装另批并行)**:① 布局四区 → 三区——删布局表 A 区关卡进度条行与 Component Inventory LevelStripView 行(LevelStripView 退役删除,节点链进度只留关卡画面,战斗屏零进度承载);C/D 底行 520 → 548;ASCII 线框图重绘为 B/C/D 三区;② 新流程口径写入文档——关卡画面(选路覆盖层常驻形态)为关卡内常驻枢纽:Navigation Position 图、到达语境、Entry 表、信息层级第 5 层、Data Requirements 节点图行改「关卡开始即出图选路、战后返回关卡画面再选路」;③ AC 四区措辞改三区。**批内代拍板三项已追认(2026-09-24 用户确认)**:① B/C/D 字母保持不重编;② 28px 纵向空间划归 C/D 底行(520 → 548);③ 关卡画面进度呈现由选路覆盖层节点态承载(暗金已过 / 金当前 / 亮金候选通道 / 旗朱 Boss)、不另设进度条组件 | -| 2026-09-23 | 实现注记(棋盘 Node2D 迁移批 Phase A,代码实装同批):棋盘渲染 Node2D 化(BoardView = Control 壳 + SubViewportContainer + SubViewport + Node2D 世界,信号/click_cell/_cells 契约保持,新增 push_input 端到端输入探针);格尺寸公式锚点不变(set_cell_area = floor((min(宽,高) − 预留 − (N−1)×格间距) / N) 单点可调),布局与交互语义零改动 | -| 2026-09-26 | 实现注记(战斗舞台 Node2D 迁移批 Phase B,代码实装同批):B 区战斗画面 Node2D 化(BattleStageView = Control 壳 + SubViewportContainer + SubViewport + Node2D 世界,站桩本体 StandeeBody 世界精灵;set_enemies/clear_enemies/on_step_row_fx/gray_all_enemies 等 setter 面签名保持,弹道落点锚点=壳层口径 world_to_shell 单点);状态图标行与悬停 tooltip 保留 Control 载体挂壳层;三区布局尺寸零改动(B 区外框 252px 逐位) | -| 2026-09-26 | **封印紫批**(用户拍板):插旗呈现色 旗朱 #C63D22 → 封印紫 #7C3AA8(色相 ≈267°,避开禁入带)——旗字形/已承诺封印框/旗化暴击弹道顺带换色;拒绝边框闪语义归危险红;Boss 节点描边归紫赤本色。修订记录历史行旗朱字样系当时口径留痕不改 | -| 2026-09-26 | **战斗屏信息归属批(用户 2026-09-26 三轮纠偏后拍板;代码实装另批——hero_info_panel_view.gd / hud_presenter.gd 改造 + 探针断言迁移,登记待办)**:立两条信息归属原则并全屏贯行——①循环口径原则(战斗屏只展小循环内被消费、影响当下决策的数据;中/大循环资源禁止入侵)②单一展示面原则(同一信息全屏唯一展示面;单位本体已承载的信息数据框不重复;资源数字贴唯一消费口)。随拍板落地:① B 区站桩 = HP 与状态效果唯一展示面——C 区 HP 条/HP 文字/立绘占位/状态效果槽×4 退役(重复展示;证据链 = hud_presenter.gd 同一 s.hero.hp/s.hero_effects 双投喂 B/C 两区);② RAP 读数(点阵+数字)迁 D 区 AP 条、置弃图刷新按钮旁(RAP 唯一消费口 = 弃图刷新——就近原则);③ C 区状态槽悬停 tooltip 职责并入 B 区站桩状态小图标;④ GP(中循环)/钥石(大循环)迁出战斗屏,去向挂 OQ14;⑤ C 区改「攻击数据框 + 秘宝槽(预留)+ 本关强化列表(预留)」——预留区来自秘宝与关卡内属性提升的既有立项;⑥ 空态/清零反馈/悬停交互/AC/§13 义务表载体同步改写。**批内遗留两项待拍板(OQ13/14)**:护甲 AC 是否补入 C 区数据框;GP/钥石去向 | -| 2026-09-26 | **信息归属二轮拍板(用户 2026-09-26,OQ13/14 完成)**:① 我方护甲 AC 补入 C 区攻击数据框(唯一展示面——布局表/组件清单/线框图同步);② GP/钥石去向定案:GP = 关卡画面常驻总量 + 战斗结算画面总量+增量,钥石 = 结算画面 + 营地(具体呈现归对应 UX spec 批次);③ 敌方 AC 展示面挂起——用户口径「敌方 AC 无任何展示」与现行代码冲突(standee_view.gd 底库名字行渲染「名字·护甲·AC%d」,系敌人技能池批克制对策可读性义务),证据链已呈报待终裁,本 spec 暂不改敌人站桩行 | -| 2026-09-26 | **敌方 AC 展示终裁完成(用户 2026-09-26 终裁)**:敌方 AC 数值全屏退役(任何区不直接展示)、护甲类型改图标方式展示(形状+色相双通道,终稿图标资产归美术批)、敌人站桩底座下名字行退回纯名字+护甲类型图标;旧「克制对策可读性义务」降级承载——类型保留、数值退役。终裁理由(用户口径):HP 信息已足够,攻防数值不直接写上;护甲类型图标保留克制对策可读性。同步改写:信息归属树敌人站桩行、Component Inventory 敌人站桩立绘行、OQ13。**代码实装说明**:`standee_view.gd` 改造(站桩名字行去 AC 数值 + 护甲类型图标化)由并行代码批执行,本批只做文档同步 | -| 2026-09-27 | **UX 文档欠账处置批(用户四项拍板:player-journey 不建 / accessibility 不另立改指 HUD框架 / node-reward 改挂秘宝内容重定批 / level-clear 建档 design/gdd/ux/level-clear.md)**:① 删 §Player Context ⚠️ player-journey 未建注记,OQ1 改完成注记;② §Accessibility 头、§Transitions 减动效行、OQ2 改指 HUD框架「可访问性基线」节 + 设置与本地化待设计清单 #1(tools/doc_link_known.txt 欠账行随之清空);③ 导航残留修正——§Navigation Position 图胜利分支、§Entry/Exit 离开表、§Interaction Map 胜利 overlay 行改按现行代码实态(胜利后返回关卡画面选路;节点覆盖层 = 关卡画面域、落地奖励/恢复节点时开出;胜利/失败 overlay 组件锚 battle_end_overlay.gd)——原「胜利 → 节点奖励/恢复覆盖层」系停点前移批前残留;④ OQ3 过期陈述更正(interaction-patterns.md 2026-09-12 已建成)、OQ8 改完成注记。本批只动文档面,代码零改动 | -| 2026-09-27 | 关卡画面 UX spec 建档联动(关卡画面 UX 批):§Navigation Position 上游屏/下游屏行挂 [level-map.md](level-map.md) 屏级 spec 指针——关卡画面(选路覆盖层常驻形态)的布局/组件/交互/状态规格自此有独立权威文档。零机制改动 | -| 2026-10-06 | **方案二·立绘定档与站桩落底排批(用户拍板;工作流程铁律 2026-10-06 = 讨论期只动文档,代码实装另批走 PRD→迭代)**:① B 区 252→270(演出 ≈1/3 屏)/ C 区 548→530(**棋盘 438×438 原尺寸不缩、格子不变**,压缩全部由面板空档吸收)——布局表 B/C/D 三行随改;② 站桩排式重排:**立绘→血条→状态 落底排**(全场血条对齐一线;血条嵌石板位、台缘线留作地面线、落影保留),原「血条悬浮头顶」退役(高盒下血条-立绘空洞,用户点名否决)——Component Inventory 主角/敌人站桩两行随改;③ 大体档(显示 >150px 级:drider/duergar_king)头部探出盒顶压光柱区,血条仍落底;意图徽标上移头顶上方(探顶档压胸);④ 空态行措辞随改;⑤ ASCII 线框图 B 区重绘。立绘八敌源档定档归 art-bible §8.2(v3.7)与 character-design.md §5.5(体量=生物体型修订) | -| 2026-10-09 | 文档正确性审查批(在役态对齐):①秘宝槽「已实装四槽两步交互/关卡域库存/清库义务载体 = 秘宝背包」过期——过渡形态随迭代 11①退役,现行 = 营地同调装配(四槽壳空槽占位,展示重接归装配面批次);②奇物列表「预留」改已实装(现行标题「特性」,迭代 9⑫+迭代 12 呈现补齐);③明细回看 overlay/入口/交互三处随 P-C7 退役订正(回看归「生涯」);④TunePanel 三处改调试浮窗(迭代 15①退役)+减动效开关 = 设置面(迭代 8④);⑤棋盘尺寸 N∈{10,12} 扩 {10,12,13,14}(第三关内容批);⑥OQ9 TunePanel 退役计划完成 | -| 2026-10-09 | 文档正确性审查批·独立复核(worktree docaudit-2026-10-09):Exit 表关卡结算行「无关卡域清库面」表述精确化——旧关卡域库存 treasure_inventory 经代码实证仍在(level_runner.gd:520 快照计数/battle_orchestrator.gd:745 consume),系投放渠道全退役后恒空的机械惰性承载,拆线归实装批;同调装配件不经此域的结论不变 | -| 2026-10-15 | **简明技术中文用语规范批(用户令,词面层)**:词面修正 30 处——不得×5→禁止(信息层级依据句/信息归属循环口径条/敌人意图映射目录注记〔键名禁作现行 enemy_id 引用〕/敌人死亡呈现行〔敌人系统资产下限〕/AC 效果行);收口×11→完成(C 区奇物列表批注〔含随批→顺带〕/布局表 B 区行/意图映射目录命名双轨注记/线框图头注 2026-09-20/OQ1/OQ2/OQ8/OQ9/OQ13 已终裁收口→已终裁完成/OQ14 已拍板收口→已拍板完成+「随 spec 命名收口退役」→「随 spec 命名完成退役」);buff×1→增益(胜利终局行微文案引句「我的增益哪去了」);台账×10→状态记录(Events 呈现订阅行/Data Requirements 三处/终局数据锚行/架构注记/更新触发注记/场景级测试头/§13 记法注/义务表战斗结算行与地图战斗资源行);随批×2→顺带(下游屏行/可挖域微光注记);Last Updated 同步本批。ambusher(伏击者)历史退役词留痕行一字未动 | diff --git a/design/gdd/ux/camp.md b/design/gdd/ux/camp.md index 3765da5b..03e7c433 100644 --- a/design/gdd/ux/camp.md +++ b/design/gdd/ux/camp.md @@ -1,6 +1,6 @@ # 营地覆盖层 UX spec(camp) -> 状态:v1.5(2026-10-15 简明技术中文用语规范批:文头状态行对齐版本历史——原标 v1.1 滞后,实态=v1.4 状态面板改名批补漏;spec 基线=2026-09-30 审计拍板点 4A 用户裁决落文〔乙案新建 ux spec+元进度配套更改〕;视觉终稿已随迭代 9 9A 段落码,本 spec 成文其呈现规则) +> 状态:v1.5(2026-10-15 简明技术中文用语规范批:文头状态行按实态订正;spec 基线=2026-09-30 审计拍板点 4A 用户裁决落文〔乙案新建 ux spec+元进度配套更改〕;视觉终稿已随迭代 9 9A 段落码,本 spec 成文其呈现规则) > 事实源:`game/presentation/views/camp_overlay_view.gd`(CampOverlay——9A 视觉终稿后实态) > 机制权威:[元进度](../systems/跨局循环/元进度.md)(营地三柜台/钥石/永久强化——营地=界面壳、机制主语=永久强化) > 相邻:[settlement-summary.md](settlement-summary.md)(最近冒险摘要数据同源)/ [level-map.md](level-map.md)(主菜单语境) @@ -21,7 +21,7 @@ ## 口径 - 呈现数据源 = MetaProgression 只读投影经组合根喂入;本层不持有系统资源、不算价。 -- 退役/封存件呈现语义已随旧目录整体退役消解(探宝罗盘/显影尘/地穴全图卷等状态行已删——迭代 22 旧 12 行删除后目录内零 deferred/retired 态,2026-10-12);历史语义见版本历史 v1.1。 +- 退役/封存件呈现语义已随旧目录整体退役消解(探宝罗盘/显影尘/地穴全图卷等状态行已删——迭代 22 旧 12 行删除后目录内零 deferred/retired 态,2026-10-12); - 双入口框架(主菜单入口+局内状态面板只读入口〔2026-10-13 由「暂停层」改名——游戏非实时无暂停语义〕)的需求面归元进度「解锁双入口框架」节;状态面板入口已实装(2026-10-06 迭代 17 卡③〔时名暂停层〕——实机目检待用户,06 登记条在册),其呈现面不归本 spec。 ## 秘宝匣柜台呈现细则(迭代 22 实装态,2026-10-12) @@ -33,15 +33,3 @@ - **空目录合法态**:白板档(12 件全未解锁)柜台零可装行=合法态非缺陷(装配面空目录断言 V18 在役)。 - **状态面板只读概览**:局内状态面板秘宝匣段=12 行只读清单(解锁态+装配态概览,零写入口——装配只在营地)。 - 机制权威=元进度/秘宝.md;本节只锁呈现规则。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v1.4 | 2026-10-13 | **状态面板改名批补漏(用户质询发现——原改名批漏扫本文件:批内 grep 路径误写 design/ux/〔不存在〕致假阴性「零命中」)**:正文两处换代(双入口框架句+秘宝匣段「状态面板只读概览」,均括注改名来历;版本历史行内旧名按历史记载保留)。机制零改动 | -| v1.0 | 2026-09-30 | 首版落文(审计拍板点 4A 裁决:乙案新建+元进度配套更改;9A 视觉终稿实态成文) | -| v1.1 | 2026-10-09 | 文档正确性审查批:①头注「M-3 迭代 9」前缀按里程碑口径删除只留「迭代 9」;②口径节「暂停层入口未实装(随 HUD 批 M-4)」过期订正——暂停层只读入口已实装(迭代 17 卡③,2026-10-06,实机目检待用户) | -| v1.2 | 2026-10-10 | 「道具工坊」改名「秘宝匣」扫改(2026-10-10 天赋树设计会话裁):定位句与三柜台列两处。机制零改动 | -| v1.3 | 2026-10-12 | **迭代 22 反哺落文批(实现报告 §三⑤,用户裁「落文」)**:新增「秘宝匣柜台呈现细则」节(购买钮禁用态/条件进度/名后缀·档位/装配行档位标签/未解锁禁装/悬停 desc/空目录合法态/暂停层 12 行只读概览);三柜台列秘宝匣行换代指路;退役/封存件呈现语义口径随旧目录删除消解(历史语义留版本历史)。机制零改动 | -| v1.5 | 2026-10-15 | 简明技术中文用语规范(用户令):词面修正 0 处;文头状态行失同步修复——原标 v1.1〔2026-09-30〕滞后于版本历史最新行 v1.4〔2026-10-13 状态面板改名批补漏〕,本行对齐。机制零改动 | -| **v1.6** | 2026-10-19 | **系统资源定名传导批(用户裁,承接 42d64ec2/17ef0180)**:「只读账面」→ 只读读数;「零账本/不持有账本」→ 零系统资源写入/不持有系统资源——跨文档引用一律「规范名+指路 01-核心循环「系统资源」节」,定义源单点。机制与数值零改动。 | diff --git a/design/gdd/ux/interaction-patterns.md b/design/gdd/ux/interaction-patterns.md index b304c33b..584fc018 100644 --- a/design/gdd/ux/interaction-patterns.md +++ b/design/gdd/ux/interaction-patterns.md @@ -2,7 +2,7 @@ > **Status**: Complete(核心 8 成文〔2 号已退役留档〕+ 12 目录占位) > **Author**: user + ux-designer -> **Last Updated**: 2026-10-15(简明技术中文用语规范批:词面修正 6 处,见文末修订记录) +> **Last Updated**: 2026-10-15(简明技术中文用语规范批:词面修正 6 处) > **Template**: Interaction Pattern Library > **来源**: `design/gdd/ux/battle.md`(2026-09-12 /ux-review APPROVED)已拍板内容的成文固化——本库不引入新设计决策 @@ -87,7 +87,7 @@ MVP 未使用标准控件(不入库):toggle / dropdown / input field / tab - 数据源:[战斗结算](../systems/战斗循环/战斗结算.md#明细流水每一行都能指回你刚才的哪一步棋)步骤流(9 类行封闭协议(现行);公共字段 `type/source_class/origin_cell/round_index/display_name/value/highlight?`);**无来源行 = 断言失败** - 行模板:「{行为} {值} → {目标}(来源)」——来源标注(第 N 轮 · 安全格式);行文案最长 token = 来源标签(4 汉字封闭枚举),模板预留 40% 膨胀宽度 - 聚合纪律:未生效类行(奖励未生效——现行 9 类行协议唯一未生效型,2026-09-20 收敛)按聚合计数呈现(防逐行惩罚轰炸);衰减行聚合计数;效果行 value=单次贡献值、禁与 pool_value(池合成值)相加呈现;零值行可见不吞(免伤轮归因不断点) -- 高亮:highlight 字段 {flag_hit, clear_reward_h2, perfect_broken} → 金框强调;完美排雷 = 独立高光行 + 全屏喝彩级反馈 +- 高亮:highlight 字段 {flag_hit, clear_reward_h2, perfect_broken} → 金框强调;完美排雷 = 独立高光行 + 全屏喝彩级反馈。`perfect_broken` 的判据句读作「本板首次标错受检」,不等于完美资格已失——专长「完美保险」可在本场首次标错时豁免,实际资格按有效误标(误标总数 − 豁免数)判定 - 布局:固定槽高 + clip_contents;正文 ≥14px;数值暗底高对比;未生效类行带 icon/划线形状冗余 - 击杀标记呈现(H3 数据源 = 战斗结算流水击杀结果字段) @@ -213,13 +213,3 @@ MVP 未使用标准控件(不入库):toggle / dropdown / input field / tab 2. Gamepad 批次引入时,需为 pattern 4/12/15 增补手柄映射节(焦点序已在 battle.md OQ8 留位) --- - -## 修订记录 - -| 日期 | 改动 | -|---|---| -| 2026-09-15 | 雾格残留清理:pattern 1 无改;pattern 4 的悬停预承诺消歧依据改按格态两态表述;目录 #10 一次性非模态提示的已实现说明去掉雾首遇、只留 chord 提示。pattern 库不引入新决策 | -| 2026-09-20 | 退役术语扫描批(用户拍板):pattern 2 原位窗口激活退役留档(唯一消费面轮末道具窗口随 2026-09-15 可选类道具删除下线——编号留空防交叉引用失锚,照 battle.md 布局决策 2 先例);pattern 8 禁用态即理由 Used In/Reference 去道具窗口引用(保留为通用模式);聚合纪律未生效类行枚举收敛为奖励未生效 | -| 2026-10-09 | 文档正确性审查批:pattern 8「Used In 现无消费面、消费面随秘宝 Alpha 重设计回归」过期订正——消费面在役 = 商店购买钮余额不足置灰、三选一/商店 GP 刷新钮余额不足禁用 | -| 2026-10-09 | 文档正确性审查批·独立复核(worktree docaudit-2026-10-09):目录 #19「库存常读列表」状态订正——所记载体 inventory_panel_view.gd 经 git 全史复核**从未入库**(「已实现」系失实登记),库存面已随秘宝过渡形态退役,状态改「占位失效」 | -| 2026-10-15 | **简明技术中文用语规范批(用户令,词面层)**:词面修正 6 处——不得×5→禁止(pattern 1 触发条/pattern 5 更新触发条/pattern 6 内容条/pattern 7 Description/pattern 偏差规则);随批×1→顺带(Open Questions 目录占位补全时点条);Last Updated 同步本批 | diff --git a/design/gdd/ux/level-clear.md b/design/gdd/ux/level-clear.md index f70902a0..b316aba3 100644 --- a/design/gdd/ux/level-clear.md +++ b/design/gdd/ux/level-clear.md @@ -120,15 +120,3 @@ 5. **替换子交互视觉形态——已随渠道退役**:秘宝件出池后本屏无道具件候选,替换子交互不于本屏触发(原功能性判据留档) --- - -## 修订记录 - -| 日期 | 改动 | -|---|---| -| 2026-09-27 | 初稿(UX 文档欠账处置批,用户拍板建档):义务锁定版——大奖励三件套/钥石入账/清库反馈预留成文;现行载体(_inter_overlay 与 BattleEndOverlay 复用)与代码锚如实登记;GP 归属两处登记不一致挂 OQ1,拍板前不新增 GP 呈现义务 | -| 2026-09-27 | GP 归属拍板对齐批(用户口径:战斗胜利→战斗总结结算展示获得资源〔目前 GP〕;战斗失败→冒险总结结算→确认回存档首页):OQ1 完成——GP 总量+增量归战斗胜利总结结算(battle.md OQ14 为准),本屏不承载 GP;OQ3 完成——「结算画面」指认 = 冒险总结结算,大奖励屏钥石进账 + 冒险总结结算明细两处并存维持;信息归属 GP 移入禁入清单;Data Requirements GP 行改零访问;06 归属行同步修正 | -| 2026-09-27 | 关卡画面 UX spec 建档联动:§Navigation Position 下游屏行挂 level-map.md 屏级 spec 指针。零机制改动 | -| 2026-10-01 | **三选一选择交互重写(迭代 10 奖励重构批——用户 2026-09-30 拍板案丙;T2 UX spec 卡)**:①Purpose/载体/导航/进出/层级/状态/交互/数据全节重写——「大奖励三件套快照展示」退役,改「部分回血反馈 + 提升三选一三卡点选 + 确认兑付 + 同调位替换子交互」;②钥石元素全屏退役(增量行迁战斗总结结算,禁入清单机检化);③交互范式 = choice_box 按钮族 + 选路两段式复用,零新增原语;④AC 五条改写 + 断点中断/减动效/禁入机检三条新增;⑤OQ3 改钥石三面化完成、OQ5 改替换子交互视觉归样张批 | -| 2026-10-09 | 文档正确性审查批(在役态对齐):①三选一候选订正——自迭代 15② 渠道分离起通关三选一 = 纯专长(原「六种池加权抽三」与秘宝件直显条款退役);②同调位替换子交互全节退役(秘宝件迭代 11① 出池后本屏无道具件候选);③过渡键 transitional_sync_slots 引用删除(同调位现行事实源 = attunement_growth.tres);④载体组件名订正 = curio_pick_overlay(与奖励节点共用面) | -| 2026-10-09 | 文档正确性审查批·独立复核(worktree docaudit-2026-10-09):Data Requirements 三候选行「加权洗牌掷 3」漏网旧口径清偿——冒险结构 v0.14 令牌池换代后 = 令牌池洗牌不放回抽 3(同 kind 去重),与冒险结构/关卡节点地图/node-reward 同口径 | -| 2026-10-15 | **简明技术中文用语规范批(用户令,词面层)**:词面修正 4 处——随批×2→顺带(Status 行目检清单交付/OQ4 实装后目检清单交付);收口×2→已完成(OQ1 GP 增量展示面归属/OQ3 钥石呈现三面化);文头 Last Updated 滞后对齐(原 2026-10-01 → 本批) | diff --git a/design/gdd/ux/level-map.md b/design/gdd/ux/level-map.md index b315a49c..3f62caec 100644 --- a/design/gdd/ux/level-map.md +++ b/design/gdd/ux/level-map.md @@ -236,15 +236,3 @@ | [art-bible](../../art/art-bible.md) | 方块地牢观感(§3.2 圆角方形世界侧)、色板冻结(§4.1)、半拟物(§7.1)、明度分层(§2,v3.0——状态不走明度、空间光照可走) | 图区组件 + Accessibility 对比条 | --- - -## 修订记录 - -| 日期 | 改动 | -|---|---| -| 2026-09-28 | **视觉终稿冻结批(M-2 迭代 4 T1–T4,闸形 A:样张 v1 机检 11/11 全绿即冻结)**:Status 升格定稿版;Layout 节点图区冻结值成文(画布公式 70+层×122+34 / 52+槽×58+26+8 下限 620×240、通道 2/3/4px、节点图标 ♻ kenney 五键 20px 烘焙+双色墨制、编号右上角);已过态 = GOLD_DONE #68562C 冻结新值(旧 GOLD_DIM 对双色墨 <4.5:1 逼守);Accessibility 增 Boss 深墨环灰度冗余+对比断言承载注记;States 换层进入改「淡入+换层色板渐变挂点(§2.7 切片档)」;组件清单节点图画布实现锚更新;OQ ④ 视觉终稿完成;线框图注记随改。产物:样张 `artwork/mockups/level-map-sheet-v1-2026-09-28.png` + 机检报告 git 提交 9a79927 + 出口闸检查单 `M2 出口检查单(已退役,git 历史可查)` | -| 2026-09-28 | **形态升格独立屏批(M-2 迭代 3 T1,用户裁决:独立存在为最终形态,覆盖层实现定性=测试阶段形态)**:Status/覆盖范围/到达方式/Navigation Position——「模态覆盖层形态(暗幕 0.6 底层透出)」全量改写为「独立屏独占呈现(战斗屏宿主整体隐藏,零透出)」;Layout 屏底=深底+石纹底噪(M-1 框材件);Transitions=独立屏淡入 200ms(alpha 淡入非明度变化——art-bible §2);AC「模态纪律」条改「独立性断言」(激活期战斗屏隐藏/选路提交战斗节点后恢复/兑付覆盖层关闭后本屏恢复);节点/商店覆盖层「本屏域内弹出」语义随形态明确(本屏保持激活,模态栈遮挡恢复语义复用);实现锚改名 level_map_screen.gd(RouteOverlay 退役);battle.md 三处选路覆盖层措辞随改;视觉终稿前置改指 M-2 迭代 4 关卡画面样张 | -| 2026-09-27 | 初稿(关卡画面 UX 批,用户拍板立项):占位升格版——信息层级五层/三分区布局/组件清单/三停点状态/交互与数据锚/AC 成文;停点标题措辞修正(清偿状态记录 143 遗留);GP 常驻徽章落地面(2026-09-26 二轮拍板去向,经 GP 归属拍板对齐批维持);三项提案挂 OQ(HP 常驻读数/图上直接点击选路/放弃二次确认)登记 06 待拍板;视觉终稿以表现层样张为前置。实现锚 = route_overlay.gd 程序化占位现行 | -| 2026-09-27 | **三拍板完成批(用户逐项裁决)**:① 底栏 = 状态展示——生命/属性(攻击·AC 有效值)/本关已选加成三组常读(原提案顶栏 HP 扩为底栏状态栏,布局决策 4);② 图上直接点击选路定稿——候选按钮整列退役、图上点击为唯一提交通道(布局决策 2;press_candidate 探针面随实装批改造注记);③ 放弃冒险二次确认定稿(布局决策 3)。信息层级六层重排/组件清单/States/交互表/Data Requirements(属性与加成读数入口)/AC/线框图随改;06 拍板点条目解决移除(去向 = 本批状态记录 204) | -| 2026-10-09 | 文档正确性审查批:States 减动效行「切片期 TunePanel」过期订正——减动效开关已转正设置面(迭代 8 卡④;TunePanel 随迭代 15 卡①退役) | -| 2026-10-09 | 文档正确性审查批·独立复核(worktree docaudit-2026-10-09):正文四处里程碑前缀按 2026-10-09 口径清偿——「M-2 迭代 4」三处删前缀只留「迭代 4」(Status 行/节点图画布实现锚/线框图注记);「M-1 框材组冻结件」改「迭代 2 框材组冻结件」(git 9abf5ff 实证框材组=M-1 迭代 2) | -| 2026-10-15 | **简明技术中文用语规范批(用户令,词面层)**:词面修正 6 处——收口×4→完成(Status 行三项提案拍板/顶栏语境行 HP 拍板注/Open Questions 两「已收口」头注→「已完成」);台账×2→状态记录(布局决策 1 清偿 143 遗留/AC 三停点标题条);Last Updated 同步本批 | diff --git a/design/gdd/ux/node-reward.md b/design/gdd/ux/node-reward.md index 8997061e..0cf03730 100644 --- a/design/gdd/ux/node-reward.md +++ b/design/gdd/ux/node-reward.md @@ -21,19 +21,3 @@ - **同库同池耗(v2.4)**:池=固定配额令牌库(普通 70/稀有 25/罕见 3=98 张;罕见档原列「道具件 2」随 aux_item 池种退役〔迭代 11 第①批 T7,落地晚于追认 b〕收窄——状态记录自决披露项);洗牌不放回抽 3(**同 kind 去重每 kind 至多一枚**——「三种不同选项」体验延续,kind 出现率∝剩余令牌数)、选中踢池未选回池、池耗即枯竭(余库不足出齐剩余,空库=零候选合法态直通);**种类次数上限退役**(池消耗即上限)。数值对:小GP 20/大GP 50、小增伤 +1/大 +2、小护甲 +1/大 +2、小生命 +5/大 +10、恢复 +6 当即回血(封顶生效上限)、AP +1。**MC 策略 316-f**:1 级优先度=最稀有(rarest>rare>common)、2 级=最左(并列同档取最左)。配额结构锚与档位构成读冒险表(schema validate 硬断言 70/25/3——见 `data/schemas/adventure_table.gd`)。**v2.3 第三渠道并账维持**:商店货架=同库付费渠道(令牌级货架,买一件=奖励面少一件),库存=剩余令牌数,账本语义与切边注记归[冒险结构](../systems/冒险循环/冒险结构.md)共享池账本节。 - ~~道具件入本关库存~~(v2.2 退役——秘宝局内不掉落机制道具,三轴 doctrine 锁死)。 - ~~「池空直通」合法态~~(v2.4 随令牌池换代退役又回归异形:旧口径=GP 无上限保证牌库恒非空;现口径=98 张池真可耗尽,空库=零候选直通合法态——池耗即枯竭既定后果)。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v1.0 | 2026-09-29 | 迭代 7 T5 随批出生(三选一构筑点形态——用户拍板②丙) | -| v2.0 | 2026-10-01 | **共享池改写(迭代 10 追加批——用户拍板「奖励节点与通关三选一相同、共享同一个池子」)**:①定位改提升三选一选择面(六种共享池、同权重同次数上限、同 reward_pick 流);②载体改 BonusPickOverlay 共用面(原 node_overlay 道具三选一面退役);③道具件满位升级为替换子交互两路(原过渡形态=满位不授予);④「池空直通」合法态退役(牌库恒非空);⑤道具件入本关库存(即时可用),区别于通关渠道的跨关携带 | -| v2.1 | 2026-10-01 | **掷定前置(目检反馈批——用户反馈「抽到秘宝不显示详情不直观」,推荐案获批)**:道具件具体道具随候选抽定(reward_pick 流序内挪,消费数不变),卡片直显「秘宝 / 道具名 · 效果摘要」;断点停点快照随载 aux_detail(续玩卡片详情不丢);node_bonus_candidates 返回扩 dict {candidates, aux_detail} | -| v2.2a | 2026-10-03 | **池种退役+刷新件面(迭代 11 第①批同调实施批 T7/T5b——P1 甲)**:①aux_item 池种退役出三选一牌库(BONUS_IDS 除名+权重/件数/掷定前置字段随批退役)——秘宝改走营地同调装配面(三轴 doctrine),v2.1 直显/满位替换两面随渠道退役(机械惰性承载零投放);②三选一刷新件面新增(X/Y 双源:刷新件每碰三选一重给优先消耗不结转+营地刷新升级冒险周期池;重抽消费 reward_pick 既有洗牌流池规则全保留;autoplay 默认不刷) | -| v2.2b | 2026-10-03 | **三档位令牌池(用户全裁——待 M-4 数值批实施,现行 v2.1 平铺池维持到实施)**:池改固定配额令牌池(普通 70/稀有 25/罕见 5=100 张;洗牌不放回抽 3、选中踢池未选回池、池耗即枯竭);档位构成=普通〔小GP 18/小增伤 18/小护甲 17/小生命 17〕+稀有〔大GP/大增伤/大护甲/大生命/恢复 各 5〕+罕见〔AP 3/道具 2〕;数值对 20/50、+1/+2、+1/+2、+5/+10、恢复+6、AP+1、道具 1 件;**种类次数上限退役**(池消耗即上限;同调位上限保留);恢复件=新入池种类;MC 策略改判 1 级最稀有/2 级最左(确定性)——设计全稿与执行口径见 [06 待办「奖励池三档位令牌池重设计」条](../06-待办清单.md);卡片呈现面(本 spec 交互节)零改动 | -| v2.3 | 2026-10-03 | **商店并账注记(迭代 11 第②批 GP 商店房重构批——P1 共享池)**:口径节「同池同上限」扩第三渠道=商店货架(pool 模式付费渠道,买一件=奖励面少一件;库存=上限即库存全冒险一次性);本 spec 交互面零改动(商店货架面归 shop.md 与 ShopOverlay,非三选一覆盖层);GP 袋对商店面切边(负交易)、奖励面照常(牌库恒非空结构保证不变) | -| v2.4 | 2026-10-03 | **令牌池落地(迭代 12 TP0——追认 b 实施批)**:三选一池改固定配额令牌池(普通 70/稀有 25/罕见 3=98 张;罕见档原列「道具件 2」随 aux_item 池种退役收窄——台账自决披露项);洗牌=令牌 Fisher-Yates 不放回抽 3 同 kind 去重每 kind 至多一枚、选中踢池未选回池、池耗即枯竭(空库=零候选直通合法态);种类次数上限退役;恢复件=新入池种类(rare 档 +6 当即回血);kind 词表扩 heal 六种;MC 策略 316-f 落地(1 级最稀有/2 级最左);货架=令牌级抽签(价格公式 tier-blind 维持批②裁定);断点扩键 bonus_deck(余库逐枚还原);现行基线锚=runsum_m4iter12_tp0_n20_20261003(normal 档配对读数同带) | -| v2.5 | 2026-10-09 | 文档正确性审查批(在役态对齐):①定位节「与通关三选一共享同一令牌池」过期——迭代 15② 渠道分离后通关三选一候选 = 纯专长,本面与商店货架同库(六种令牌池);②载体组件名订正 = CurioPickOverlay;③头部文案引文加注「与通关三选一同池」字样滞后于渠道分离(文案换代归内容批,已呈报) | -| v2.6 | 2026-10-09 | 文档正确性审查批·独立复核(worktree docaudit-2026-10-09):①定位节令牌池「六种」→**七种**(adventure_table.gd CURIO_KINDS 实测七类含 refresh——刷新件随迭代15② T6 入池,curio_quota_refresh_rare=2 在役;v2.5 修订漏登);②三选一刷新行补机制现行事实源指路与 X 源承载件换代注(旧目录「三选一刷新件」退役→新目录「刷新练习」——秘宝.md「三选一刷新双源」节) | -| —— | 2026-10-09 | v2.2 双行同号系历史登记,2026-10-09 卫生批加 a/b 后缀区分 | -| v2.7 | 2026-10-15 | 简明技术中文用语规范(用户令):词面修正 1 处(口径节「同库同池耗」条「台账自决披露项」→「状态记录自决披露项」);头注状态行版本号随本行对齐 | diff --git a/design/gdd/ux/settlement-summary.md b/design/gdd/ux/settlement-summary.md index 1a2a0bd5..f3d298a4 100644 --- a/design/gdd/ux/settlement-summary.md +++ b/design/gdd/ux/settlement-summary.md @@ -34,13 +34,3 @@ - **GP / 钥石呈现分工**(battle.md OQ14 完成口径 + 迭代 10 扩):GP = 本 spec 战斗面(增量+总量)+ 关卡画面常驻总量;钥石 = 本 spec 战斗面(Boss/精英击杀增量行,迭代 10 起)+ 冒险面(收束明细)+ 营地存量。钥石多处并存系「进账时刻 / 收束明细 / 存量可用」不同义,不构成重复展示(level-clear.md OQ3 完成维持)。 - **失败面不呈战利品**:冒险总结结算不呈现 GP 增量(倒下即终语义,失败侧恒不呈现)。 - **禁重复展示**:本面不呈状态效果、不呈结算明细正文(明细回看 overlay 已随 P-C7 退役——冒险中明细回看归「生涯」)——[battle.md](battle.md) 信息归属两原则(循环限定 + 单一展示面)对面级呈现同样适用。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v1.0 | 2026-09-30 | 首版落文(审计拍板点 2 用户裁决:丙案两面分节 + 纯呈现轻量 spec——成文已实装显示规则,无新概念;命名三名并存收口为拍板文本口径) | -| v1.1 | 2026-10-01 | **钥石呈现接线批注记(迭代 10 奖励重构——呈现侧 spec 先行,实装随批)**:战斗面触发扩 Boss 胜利(钥石逐杀掉落增量行上战斗总结结算框——契约「钥石增量一面承载」推荐案)+ 呈现内容补钥石增量行;冒险面钥石明细口径改「本局逐杀 Boss 掉落合计」;GP/钥石分工口径三面化(战斗面增量/冒险面明细/营地存量)。原「Boss 胜利不经本面」退役 | -| v1.2 | 2026-10-09 | 文档正确性审查批:明细回看入口两处订正——已随 2026-10-04 P-C7 退役(冒险中回看归「生涯」;battle_end_overlay review_pressed 已退役在码),战斗面呈现内容与禁重复展示条同步 | -| v1.3 | 2026-10-15 | 简明技术中文用语规范(用户令):词面修正 8 处——台账×4→状态记录(定位节接线登记条/冒险面载体条「06 状态记录旧称」/命名清单③⑤);收口×4→完成(冒险面载体条「随本条完成」/命名清单头「历史变体收口清单」→「历史变体退役清单」/GP钥石分工条 OQ14 完成口径与 OQ3 完成维持);头注状态行版本号随本行对齐 | -| **v1.4** | 2026-10-19 | **系统资源定名传导批(用户裁,承接 42d64ec2/17ef0180)**:「钥石入账明细」→ 钥石写入明细——跨文档引用一律「规范名+指路 01-核心循环「系统资源」节」,定义源单点。机制与数值零改动。 | diff --git a/design/gdd/ux/shop.md b/design/gdd/ux/shop.md index 02e6fb9b..c656df57 100644 --- a/design/gdd/ux/shop.md +++ b/design/gdd/ux/shop.md @@ -20,11 +20,3 @@ - GP 余额读数 = runner 钱包投影(GP 归[冒险结构](../systems/冒险循环/冒险结构.md) GP 节);本层不作计算。 - 与关卡画面 GP 常驻徽章的关系:进店语境余额与选路常驻总量不同义(本层带购买语境),不构成重复展示——钥石「写入/存量」拆名逻辑同款。 - 购买确认交互:现行直接购买(无二次确认步);是否需破坏性确认异位(pattern 7)未裁决,本 spec 只登记现状不立新裁。 - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v1.0 | 2026-09-30 | 首版落文(审计拍板点 4B 裁决:甲+乙并行——编排面小节落关卡节点地图、呈现面独立成文) | -| v1.1 | 2026-10-09 | 文档正确性审查批(在役态对齐):商店现行 = pool 模式(令牌级货架与三选一同池六行,含回复与专长凭证;进店抽 3、买一件 = 池少一件货架重抽)+ GP 付费刷新(SR-1/MC-1 已落码)——原「三商品卡全陈列、无刷新」为 legacy 形态(shop=off 对照保留),定位/布局/口径三节订正 | -| **v1.2** | 2026-10-19 | **系统资源定名传导批(用户裁,承接 42d64ec2/17ef0180)**:「同一令牌账」→ 同一令牌库;「账本归冒险结构」→ GP 归冒险结构;「本层不算账」→ 本层不作计算——跨文档引用一律「规范名+指路 01-核心循环「系统资源」节」,定义源单点。机制与数值零改动。 | diff --git a/design/gdd/术语表.md b/design/gdd/术语表.md index 0f372877..5c080b48 100644 --- a/design/gdd/术语表.md +++ b/design/gdd/术语表.md @@ -11,7 +11,7 @@ | 安全格 | 没有惩罚的格子——挖开安全并获得其上信息与收益 | | 整图 | 单张棋盘(的整个范围)——原「整图」退役(2026-10-11 用户裁)。例:整图叠加层、整图作用域 | | 叠加层(整图叠加层) | 秘宝产生的信息的自持容器:按效果分类的格集,随图消亡、不回写棋盘(见[秘宝](systems/跨局循环/秘宝.md)) | -| 封印 / 控制 | 封印动作的机制名/玩家名:封印印记落在危险格上为「标中」(危险格被控制、化险为利),封错为「标空」(原「旗 / 控制」,2026-10-18 用户裁:「旗」概念不存在——动作=封印、印记=封印印记) | +| 封印 / 控制 | 封印动作的机制名/玩家名:封印印记落在危险格上为「标中」(危险格被控制、化险为利),封错为「标空」(原「旗 / 控制」,2026-10-18 用户裁:「旗」概念不存在——动作=封印、印记=封印印记);代码契约键与标识符统一用 `seal_*`(原 `flag_*` 全族换代),板面单字字形=「封」 | | 真视 | 直接告诉玩家某范围内哪些格是危险格的效果(秘宝承重契约:一次最多 3×3,见[秘宝](systems/跨局循环/秘宝.md)核心规则) | | 类型微光 | 棋盘上按格子类型显示的提示光效(视野参数控制其显示范围) | | 换图 / 弃图刷新 | 清完一图进入下一图 / 花储备放弃当前图重开一张(代价见[行动经济](systems/排雷循环/行动经济.md)) | @@ -81,11 +81,18 @@ 两类的判定与道具定义卡必答见[核心循环](01-核心循环.md)「结算目标分两类:总线与抽屉」节。 +## 战斗与效果 + +| 术语 | 定义 | +|---|---| +| `seal_missed` | 封印落空事件(原 `flag_missed` 换代):封印动作落在安全格上时发出,订阅面据此做限次与豁免判定(迭代 31 卡② 落地) | +| `forgive_seal_miss` | 本场首次封印落空豁免——专长「完美保险」的效果类型,`domain=battle` 首例;有效误标=误标总数 − 豁免数,豁免不改写误标账(迭代 31 卡② 落地) | + ## 开发流程 | 术语 | 定义 | |---|---| -| 逐需求点验收清单 | 需求卡片验证闸的必备清单:每个需求点列明测什么(具体断言或行为)/怎么测(测试落点与注入方式)/谁验(自动闸或用户目检);查不出验收条目的需求点=卡片不成立(规矩见 req-card 技能,测试落码写法见 [code-conventions](../dev/code-conventions.md) §3.5) | +| 逐需求点验收清单 | 需求卡片验证闸的必备清单:每个需求点列明测什么(具体断言或行为)/怎么测(测试落点与注入方式)/谁验(自动闸或用户目检);查不出验收条目的需求点=卡片不成立(规矩见 req-card 技能,测试落码写法见 [code-conventions](../engineering/code-conventions.md) §3.5) | | 测试方式两分法 | 能力验证与体验验证分开走(2026-10-11 用户定):能力验证=通过调试接口直接修改游戏数据(改钥石/槽位/解锁状态等,不走正常资源积累流程);体验验证=用户目检完整流程,登记 07-体验验证清单观测项 | ## 用语规范(2026-10-15 用户令立) @@ -113,11 +120,12 @@ 注:「注销」仅用于清单条目办结义(销号/销账的替换词);「结束登录状态」义仍按 STC 用「退出登录」。 -### B. 豁免条款(三类文本不改写) +### B. 豁免条款(四类文本不改写) -1. **历史文本**:版本历史表已入库的行、git 提交说明、裁决记录中引用用户原话的句子——保留原用词,不按 A 表追改。 +1. **历史文本**:git 提交说明、裁决记录中引用用户原话的句子——保留原用词,不按 A 表追改。 2. **对照性文本**:「退役词对照」表本身、「原 ××」式更名记载、禁令引举句——旧词在这些位置是内容本身,不是残留。 3. **玩家可见专名与机制词**:按「对外命名纪律」节与各系统文档现行用语使用(标中/踩雷等机制词在文档内部照常用)。 +4. **被检查的禁字不算使用**:守卫代码里作为检查对象的禁字字面量——`game/smoke/smoke_all.gd` 的 `contains("旗")` 检查项、`game/tests/unit/presentation/ui_font_asset_test.gd` 的字形集负探针、`game/data/tables/feats.tres` 头注的「desc 禁『雷/旗』字面」、`tools/doc_term_audit.py` 的退役词表定义行——不属换代范围:被检查的字不是对该字的使用,改写等于自毁守卫。术语清扫的复扫口径按 **game/ 全部文件类型、不排除任何扩展名**执行(迭代 31 卡① 实测:金币/插旗/雷格/惩罚格/`flag` 均 0 命中,残留仅为上述保留面)。 存量口径:A 表生效前已入库的正文不做强制清扫;文件后续被批次触碰时,顺带按 A 表换代。 @@ -135,6 +143,7 @@ | 金币 | GP(2026-10-18 用户裁:GP 是唯一正式命名,「金币」系 AI 噪音全库禁用) | | 插旗 | 封印(2026-10-18 用户裁:封印=正式动作名,全库统一,非比喻非「对外表达」别名) | | 旗(游戏概念语境) | 封印印记(2026-10-18 用户裁:「旗」概念不存在——封印动作落下的印记称封印印记) | +| flag_*(代码契约键/标识符) | seal_*(2026-10-18 用户裁全族换代;迭代 31 卡① 已清零) | ## 对外命名纪律(玩家可见命名,2026-10-11 用户令) @@ -145,23 +154,3 @@ | 危险格的对外风味 | **地下城陷阱 / 怪物巢穴**(巢穴仅限世界观风味层使用——产品名清巢者出处、美术纹样名;机制表述仍用危险格) | | 连锁展开的对外表达 | **坍塌显形**:挖穿薄壳、整片松动地面塌陷露出(00 篇巢穴隐喻轴定名;机制文档内部仍用连锁展开) | | 适用范围 | 全部对外命名:道具件名、显示名、UI 文案、成就与百科措辞(首例=专长 27 件第一版命名,[奇物](systems/冒险循环/奇物.md)基础件表 v3.15);封印/旗族与金币的禁令扩为**全库正文**(2026-10-18 用户裁)——机制文档内部一律用封印,无内部用语豁免 | - -## 版本历史 - -| 版本 | 日期 | 改动 | -|---|---|---| -| v1.0 | 2026-10-11 | 首版建立(用户令「做一个专用术语表,让读者查表阅读」):格与棋盘/资源与经济/秘宝系统/道具体系四节+退役词对照表;同批全库统一更名=危险格(原雷格/惩罚格)/整图(原板级)/专长凭证(原门票) | -| v1.1 | 2026-10-11 | **怪物巢穴类型概念退役批(用户裁「目前没有具体的怪物巢穴类型,全部改成危险格」)**:删怪物巢穴词条、危险格与旗/控制两行换代;世界观风味层的「巢穴」隐喻〔00-游戏概念巢穴隐喻轴,产品名清巢者出处〕与美术纹样名保留,机制文档零巢穴 | -| v1.2 | 2026-10-11 | **机制表述巢穴补扫收尾(用户裁无类型划分)**:行动经济/音频/敌人系统等机制文档「惊动巢穴/巢穴被控制」系表述全量换代危险格(惊动 4/标中 1/被控制 2);对照表补巢穴行 | -| v1.3 | 2026-10-11 | 秘宝目录修正批随批:新增「未知秘宝」词条(冒险拾取替换渠道,2026-10-11 用户裁) | -| v1.4 | 2026-10-11 | **正主/落籍全库扫尾批(用户令收尾)**:正主→现行事实源 130 行+落籍→已入库 79 行全库换代(39 文件 194 行;语境微调=权威文档/权威定义节/拼表制主选/入库注记等);雷格/惩罚格/板级/门票/工作日志五词终验零真残留(存量命中均系对照行/更名记载句/禁令引举等对照性文本);技能 SKILL.md 三件与记忆目录随批同扫 | -| v1.5 | 2026-10-11 | 拾取渠道废止批随批:删「未知秘宝」词条(用户终裁装配只在冒险开始前配置、冒险中零更换途径) | -| v1.6 | 2026-10-11 | **对外命名纪律节新增(用户令「对外命名不要有雷跟插旗相关名词」)**:禁「雷/插旗」字面入对外命名;插旗对外=封印、危险格对外风味=地下城陷阱/怪物巢穴(风味层巢穴除外);适用=件名/显示名/UI 文案/成就百科,机制文档内部用语不受限;首例=专长 27 件第一版命名(奇物.md v3.15 九件换代) | -| v1.7 | 2026-10-11 | **通关术语裁定(用户裁)**:通关=打通整局冒险、通过第 N 关=打通第 N 关卡,两词非同义;存量文档中「通关次数」指每关卡澄清(历史行不动,全库口径统一随术语执行批) | -| v1.8 | 2026-10-11 | 新增「开发流程」节两词条:逐需求点验收清单(req-card 技能 §7 三层结构核心名词)、测试方式两分法(能力验证走调试接口/体验验证用户目检)——需求卡片逻辑验收方法论批随批登记 | -| v1.9 | 2026-10-12 | **迭代 22 反哺落文批随迁**:秘宝系统节补「自动兑付」(2026-10-12 用户裁——手动积点兑换钮形态退役)与「真视使用计数」(vision_used 生涯计数域,信标网络解锁条件)两词条(本行原误编号 v1.2,2026-10-15 重排时更正,原 v1.9/v1.10 顺延为 v1.10/v1.11) | -| v1.10 | 2026-10-13 | **迭代 23 反哺落文批随迁**(实现报告 §五③「若需登记补登」经用户令落文):锻造工坊节新增「路线 id / 存档域键名」词条——六路线 id 与 forge_routes 域四键(levels/unlocked/weapon/armor),实现层词汇非玩家可见;玩家向术语零新增 | -| v1.11 | 2026-10-13 | 「道具」统称登记(用户立内部用语习惯):道具=秘宝/奇物/地图战斗资源三类的内部开发统称,可单说或组合(秘宝道具/奇物道具/专长道具/战斗资源道具),仅限开发内部、玩家可见面用各类正式名称;同批补登「地图战斗资源」词条(原「奖励道具经济」2026-09-16 更名后一直未入表) | -| v1.12 | 2026-10-15 | **用语规范节新立 + 简明技术中文用语规范批(用户令「全部 GDD 做语言规范并融合词表」)**:新立「用语规范」节=词面权威指向 STC 词表+已裁替换表 12 行(STC 词面 5 行〔对标/若干/不得/报错/buff〕+doc-conventions §4 流程动词 7 行)+豁免条款三类(历史文本/对照性文本/玩家可见专名);新词条:装板(装板期)/摇号、机能件/机制件、总线/抽屉(新「结算目标」节)、坍塌显形(对外命名纪律节);版本历史重排修复双 v1.2(详见 v1.9 行注) | -| v1.13 | 2026-10-18 | **设计文档术语刷新批(用户裁)**:金币退役(GP 是唯一正式命名,「金币」系 AI 噪音)、插旗退役(正式动作名=封印,全库统一)、旗概念退役(印记=封印印记)——三词入退役词对照表+机检词表(doc_term_audit.py);封印定性由「插旗的对外表达」更正为正式术语(非比喻);禁用字面从对外命名扩为全库;删「机制文档内部用语不受限」条款;旗/控制词条更名封印/控制;雷格/惩罚格存量正文补扫(2026-10-11 退役批残留) | -| **v1.14** | 2026-10-19 | **系统资源定名传导批(用户裁,承接 42d64ec2/17ef0180)**:节名「资源与经济」→「系统资源与经济」;新增「系统资源」「补给」词条;AP 去「次数资源」;「时沙挂账」→「时沙暂记」——跨文档引用一律「规范名+指路 01-核心循环「系统资源」节」,定义源单点。机制与数值零改动。 | diff --git a/design/qa/iter27-探针迁移对照-2026-10-14.md b/design/qa/iter27-探针迁移对照-2026-10-14.md deleted file mode 100644 index bbbcd9e9..00000000 --- a/design/qa/iter27-探针迁移对照-2026-10-14.md +++ /dev/null @@ -1,28 +0,0 @@ -# 迭代 27 T0 交付:smoke 探针挂载假设对照表(2026-10-14) - -卡片 T0.3 交付物。11 个挂载面 = 10 个 smoke 探针 + 1 个单测套件(pacing_queue_test,全库唯一直接 load main.tscn 的单元测试)。 -迁移原则(卡片 🔴 探针契约零破坏):**「实例化 main.tscn 得到完整产品树 + 组合根 API」这一挂载假设本身保留**—— -场景拆分后 main.tscn 仍是组合根(屏场景为其子节点挂载),探针入口零改动; -迁移面 = 探针内部对 main 私有成员的树寻址/状态探视,随成员落位逐个改写(改写即新结构的回归断言)。 -另两个挂载假设探针(adventure_monte_carlo/level_autoplay,SceneTree 直驱 level_runner 不挂 main.tscn)不在迁移面。 - -| # | 探针 | 挂载行 | 挂 main.tscn 得到什么 | 成员依赖面(实测 grep) | 迁移方向(T1 落位后改写) | -|---|---|---|---|---|---| -| 1 | ui_probe.gd | :15 | 完整产品树+驱动 `_start_adventure_from_menu()`(唯一试玩入口) | `_start_overlay/_battle_root/_row_queue/_debug/_is_settling/_on_adventure_finished/_on_camp_closed/_on_wallet_changed/_reset_run_scope/_adventure_gp_final/_adventure_gp_view/_close_modal` + `adventure/ap_bar/board_view/board_zone/camp_overlay/db/debug_overlay/info_panel/level_screen/log_view/meta/runner/settlement/stage` | 屏成员→屏场景属性路径;局态成员→run-scope 节点路径;`_reset_run_scope` 断言随手工清单消亡换代为 run 节点释放断言 | -| 2 | ui_click_probe.gd | :45 | 全输入链走查(行进/战斗/营地/商店点击 10935 预算) | 最广:`_adventure_mode/_battle_root/_camp_data/_end_overlay/_exit_level_screen/_input_locked/_inter_overlay/_last_gain_amount/_locked_click/_on_camp_closed/_refresh_resume_button/_refresh_used_round/_row_queue/_settlement_stop_pending/_start_adventure_from_menu/_start_overlay` + 全部屏成员 | `_input_locked` 输入锁随 T4 模态协议内聚落位;`_refresh_used_round` 随 T3 双账删除改快照通道断言;余同 #1 | -| 3 | ui_struct_probe.gd | :25 | 模态栈纪律走查(开合/遮挡/输入锁) | `_close_debug_overlay/_end_overlay/_gp_summary_text/_level_active/_modals/_on_camp_closed/_on_career_closed/_on_settings_closed/_on_status_closed/_open_modal/_open_settings/_open_status_panel/_refresh_resume_button/_resume_from_menu/_show_debug_overlay/_start_adventure_from_menu/_start_overlay` + 屏成员 | `_modals`(ModalStack)随 T4 内聚后寻址换代;模态层清单断言随屏场景化改挂屏壳 | -| 4 | ui_layout_probe.gd | :17 | 四区布局几何断言 | `_start_adventure_from_menu/board_view/board_zone/debug_overlay/info_panel/get_child/get_children/save_manager/stage` | board_zone/info_panel/stage 随屏场景化改屏壳属性路径;`get_child` 序数寻址须换名寻址(子场景化后序号漂移) | -| 5 | ui_input_probe.gd | :27 | 输入锁+宝珠辉光链路 | `_input_locked/_start_adventure_from_menu/_sync_treasure_glow/board_view/board_zone/build_adventure_params/debug_overlay/runner/save_manager/settlement/status_panel` | `_sync_treasure_glow`/`build_adventure_params` 随局态物化落位;余同 #1/#2 | -| 6 | ui_audit_probe.gd | :27 | 全屏巡检(12 模态层/入口可达) | `_close_debug_overlay/_end_overlay/_on_settings_closed/_open_settings/_refresh_resume_button/_show_debug_overlay/_start_overlay/board_view/camp_overlay/confirm_dialog/curio_overlay/legend_overlay/level_screen/save_manager/shop_overlay` | 模态层清单随屏场景化改挂屏壳;余同 #1 | -| 7 | ui_tune_probe.gd | :36 | 调试浮窗只读巡检(种子框/批量模拟) | `_close_debug_overlay/_input_locked/_seed_value/_show_debug_overlay/_start_adventure_from_menu/_start_overlay/adventure/board_zone/confirm_dialog/db/debug_overlay/level_screen/save_manager/settlement` | `_seed_value` 随种子框落位改路径;debug_overlay 归属屏待 T1 定(全局层 vs 屏内层) | -| 8 | shot_probe.gd | :35 | 截图(四屏+营地/设置) | `_start_overlay/board_zone/camp_overlay/career_overlay/level_screen/settings_overlay/settings_store/stage/status_panel` | 屏成员→屏场景路径;settings_store 随升格 autoload 改全局访问 | -| 9 | fx_shot_probe.gd | :28 | 特效截图(棋盘 fx) | `_start_overlay/level_screen/settings_store/settlement` | 同 #8 | -| 10 | t17_defer_probe.gd | :15 | 延迟模态时序断言(结算行分帧) | `_deferred_modal/_end_overlay/_row_pacer/_start_overlay/db/level_screen/meta/save_manager/settings_store/settlement` | `_row_pacer/_deferred_modal` 随 T4 模态协议落位;meta 随升格 autoload 改全局 | -| 11 | tests/unit/presentation/pacing_queue_test.gd | :19 | 行队列节奏单测(真实冒险至首战结算) | `_flush_row_queue/_refresh_resume_button/_row_queue/_start_adventure_from_menu/adventure/db/level_screen/log_view/meta/pace_delay_for/runner/save_manager` | `_row_queue/_flush_row_queue/pace_delay_for` 随 T4 抽取落位(该单测即 V6 新纯逻辑类直接 new() 的前哨);余同 #1 | - -**共性迁移点**(T1 施工照单改写,改写后逐探针全绿=V2 闸): -1. `meta`/`save_manager`/`settings_store` → 裁点① 第三/四 autoload 后改全局名访问(探针里的 `main.meta` 全数换代)。 -2. `runner/adventure/settlement/_adventure_mode/_row_queue` 等局态 → run-scope 节点(`main.run_scope.X` 形态,命名属代拍板白名单#5)。 -3. `_start_overlay/camp_overlay/level_screen/...` 屏成员 → 屏场景属性(组合根保留装配属性,路径一级化)。 -4. `get_child`/子序数寻址(ui_layout #4)→ 名寻址(子场景化后序数漂移是 breaking 面)。 -5. 手工复位断言(ui_probe `_reset_run_scope`)→ run 节点 `queue_free()` 复位断言(V3 配套)。 diff --git a/design/qa/ui-audit-2026-10-06/demo/_map_bottom.png b/design/qa/ui-audit-2026-10-06/demo/_map_bottom.png deleted file mode 100644 index 277f904f..00000000 Binary files a/design/qa/ui-audit-2026-10-06/demo/_map_bottom.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/demo/demo_1_start.png b/design/qa/ui-audit-2026-10-06/demo/demo_1_start.png deleted file mode 100644 index cf4df806..00000000 Binary files a/design/qa/ui-audit-2026-10-06/demo/demo_1_start.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/demo/demo_2_camp.png b/design/qa/ui-audit-2026-10-06/demo/demo_2_camp.png deleted file mode 100644 index 96f25437..00000000 Binary files a/design/qa/ui-audit-2026-10-06/demo/demo_2_camp.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/demo/demo_3_settings.png b/design/qa/ui-audit-2026-10-06/demo/demo_3_settings.png deleted file mode 100644 index f4181b92..00000000 Binary files a/design/qa/ui-audit-2026-10-06/demo/demo_3_settings.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/demo/demo_4_map.png b/design/qa/ui-audit-2026-10-06/demo/demo_4_map.png deleted file mode 100644 index 52876d3d..00000000 Binary files a/design/qa/ui-audit-2026-10-06/demo/demo_4_map.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/demo/demo_5_battle.png b/design/qa/ui-audit-2026-10-06/demo/demo_5_battle.png deleted file mode 100644 index eadff07d..00000000 Binary files a/design/qa/ui-audit-2026-10-06/demo/demo_5_battle.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/demo/demo_6_bonus.png b/design/qa/ui-audit-2026-10-06/demo/demo_6_bonus.png deleted file mode 100644 index 4a486c8c..00000000 Binary files a/design/qa/ui-audit-2026-10-06/demo/demo_6_bonus.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/demo/demo_7_shop.png b/design/qa/ui-audit-2026-10-06/demo/demo_7_shop.png deleted file mode 100644 index 2e6b8bb4..00000000 Binary files a/design/qa/ui-audit-2026-10-06/demo/demo_7_shop.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/demo/demo_8_end_defeat.png b/design/qa/ui-audit-2026-10-06/demo/demo_8_end_defeat.png deleted file mode 100644 index 5c8f3596..00000000 Binary files a/design/qa/ui-audit-2026-10-06/demo/demo_8_end_defeat.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/demo/demo_8_end_victory.png b/design/qa/ui-audit-2026-10-06/demo/demo_8_end_victory.png deleted file mode 100644 index 5dd47934..00000000 Binary files a/design/qa/ui-audit-2026-10-06/demo/demo_8_end_victory.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/demo/raw/raw_1_start.png b/design/qa/ui-audit-2026-10-06/demo/raw/raw_1_start.png deleted file mode 100644 index 144f7b52..00000000 Binary files a/design/qa/ui-audit-2026-10-06/demo/raw/raw_1_start.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/demo/raw/raw_2_camp.png b/design/qa/ui-audit-2026-10-06/demo/raw/raw_2_camp.png deleted file mode 100644 index fae045a4..00000000 Binary files a/design/qa/ui-audit-2026-10-06/demo/raw/raw_2_camp.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/demo/raw/raw_3_settings.png b/design/qa/ui-audit-2026-10-06/demo/raw/raw_3_settings.png deleted file mode 100644 index 4b28d36e..00000000 Binary files a/design/qa/ui-audit-2026-10-06/demo/raw/raw_3_settings.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/demo/raw/raw_4_map.png b/design/qa/ui-audit-2026-10-06/demo/raw/raw_4_map.png deleted file mode 100644 index edecee5a..00000000 Binary files a/design/qa/ui-audit-2026-10-06/demo/raw/raw_4_map.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/demo/raw/raw_5_battle.png b/design/qa/ui-audit-2026-10-06/demo/raw/raw_5_battle.png deleted file mode 100644 index 301b601b..00000000 Binary files a/design/qa/ui-audit-2026-10-06/demo/raw/raw_5_battle.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/demo/raw/raw_6_bonus.png b/design/qa/ui-audit-2026-10-06/demo/raw/raw_6_bonus.png deleted file mode 100644 index 5b34ea50..00000000 Binary files a/design/qa/ui-audit-2026-10-06/demo/raw/raw_6_bonus.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/demo/raw/raw_7_shop.png b/design/qa/ui-audit-2026-10-06/demo/raw/raw_7_shop.png deleted file mode 100644 index 3e04bac9..00000000 Binary files a/design/qa/ui-audit-2026-10-06/demo/raw/raw_7_shop.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/demo/raw/raw_8_end_defeat.png b/design/qa/ui-audit-2026-10-06/demo/raw/raw_8_end_defeat.png deleted file mode 100644 index 5cd97a1c..00000000 Binary files a/design/qa/ui-audit-2026-10-06/demo/raw/raw_8_end_defeat.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/demo/raw/raw_8_end_victory.png b/design/qa/ui-audit-2026-10-06/demo/raw/raw_8_end_victory.png deleted file mode 100644 index fee6cc91..00000000 Binary files a/design/qa/ui-audit-2026-10-06/demo/raw/raw_8_end_victory.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/pairs/pair_1_start.png b/design/qa/ui-audit-2026-10-06/pairs/pair_1_start.png deleted file mode 100644 index 644a5931..00000000 Binary files a/design/qa/ui-audit-2026-10-06/pairs/pair_1_start.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/pairs/pair_2_camp.png b/design/qa/ui-audit-2026-10-06/pairs/pair_2_camp.png deleted file mode 100644 index 7a029376..00000000 Binary files a/design/qa/ui-audit-2026-10-06/pairs/pair_2_camp.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/pairs/pair_3_settings.png b/design/qa/ui-audit-2026-10-06/pairs/pair_3_settings.png deleted file mode 100644 index 5ae31141..00000000 Binary files a/design/qa/ui-audit-2026-10-06/pairs/pair_3_settings.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/pairs/pair_4_map.png b/design/qa/ui-audit-2026-10-06/pairs/pair_4_map.png deleted file mode 100644 index 450f4f09..00000000 Binary files a/design/qa/ui-audit-2026-10-06/pairs/pair_4_map.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/pairs/pair_5_battle.png b/design/qa/ui-audit-2026-10-06/pairs/pair_5_battle.png deleted file mode 100644 index 81081c12..00000000 Binary files a/design/qa/ui-audit-2026-10-06/pairs/pair_5_battle.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/pairs/pair_6_bonus.png b/design/qa/ui-audit-2026-10-06/pairs/pair_6_bonus.png deleted file mode 100644 index a573ca41..00000000 Binary files a/design/qa/ui-audit-2026-10-06/pairs/pair_6_bonus.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/pairs/pair_7_shop.png b/design/qa/ui-audit-2026-10-06/pairs/pair_7_shop.png deleted file mode 100644 index b552e685..00000000 Binary files a/design/qa/ui-audit-2026-10-06/pairs/pair_7_shop.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/pairs/pair_8_end_defeat.png b/design/qa/ui-audit-2026-10-06/pairs/pair_8_end_defeat.png deleted file mode 100644 index 42a3a5e9..00000000 Binary files a/design/qa/ui-audit-2026-10-06/pairs/pair_8_end_defeat.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/pairs/pair_8_end_victory.png b/design/qa/ui-audit-2026-10-06/pairs/pair_8_end_victory.png deleted file mode 100644 index ef47c706..00000000 Binary files a/design/qa/ui-audit-2026-10-06/pairs/pair_8_end_victory.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/real/real_10_legend.png b/design/qa/ui-audit-2026-10-06/real/real_10_legend.png deleted file mode 100644 index 240ed8c5..00000000 Binary files a/design/qa/ui-audit-2026-10-06/real/real_10_legend.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/real/real_11_confirm.png b/design/qa/ui-audit-2026-10-06/real/real_11_confirm.png deleted file mode 100644 index 86a59405..00000000 Binary files a/design/qa/ui-audit-2026-10-06/real/real_11_confirm.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/real/real_1_start.png b/design/qa/ui-audit-2026-10-06/real/real_1_start.png deleted file mode 100644 index 804cee6d..00000000 Binary files a/design/qa/ui-audit-2026-10-06/real/real_1_start.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/real/real_2_camp.png b/design/qa/ui-audit-2026-10-06/real/real_2_camp.png deleted file mode 100644 index cf44b227..00000000 Binary files a/design/qa/ui-audit-2026-10-06/real/real_2_camp.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/real/real_3_settings.png b/design/qa/ui-audit-2026-10-06/real/real_3_settings.png deleted file mode 100644 index 342f9a99..00000000 Binary files a/design/qa/ui-audit-2026-10-06/real/real_3_settings.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/real/real_4_map.png b/design/qa/ui-audit-2026-10-06/real/real_4_map.png deleted file mode 100644 index 9cfcec0c..00000000 Binary files a/design/qa/ui-audit-2026-10-06/real/real_4_map.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/real/real_5_battle.png b/design/qa/ui-audit-2026-10-06/real/real_5_battle.png deleted file mode 100644 index a5bb45da..00000000 Binary files a/design/qa/ui-audit-2026-10-06/real/real_5_battle.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/real/real_6_bonus.png b/design/qa/ui-audit-2026-10-06/real/real_6_bonus.png deleted file mode 100644 index a8c4f335..00000000 Binary files a/design/qa/ui-audit-2026-10-06/real/real_6_bonus.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/real/real_7_shop.png b/design/qa/ui-audit-2026-10-06/real/real_7_shop.png deleted file mode 100644 index 55c702d1..00000000 Binary files a/design/qa/ui-audit-2026-10-06/real/real_7_shop.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/real/real_8_end_defeat.png b/design/qa/ui-audit-2026-10-06/real/real_8_end_defeat.png deleted file mode 100644 index a085f343..00000000 Binary files a/design/qa/ui-audit-2026-10-06/real/real_8_end_defeat.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/real/real_8_end_victory.png b/design/qa/ui-audit-2026-10-06/real/real_8_end_victory.png deleted file mode 100644 index e8349b3b..00000000 Binary files a/design/qa/ui-audit-2026-10-06/real/real_8_end_victory.png and /dev/null differ diff --git a/design/qa/ui-audit-2026-10-06/real/real_9_debug.png b/design/qa/ui-audit-2026-10-06/real/real_9_debug.png deleted file mode 100644 index 183fd6fa..00000000 Binary files a/design/qa/ui-audit-2026-10-06/real/real_9_debug.png and /dev/null differ diff --git a/design/qa/ui-audit-vs-demo-2026-10-06.md b/design/qa/ui-audit-vs-demo-2026-10-06.md deleted file mode 100644 index 90d41538..00000000 --- a/design/qa/ui-audit-vs-demo-2026-10-06.md +++ /dev/null @@ -1,96 +0,0 @@ -# 全屏 UI 审计:实机 vs demo v2.1(2026-10-06 用户令返工) - -> 方法:实机十二屏窗口化程序截图(`game/smoke/ui_audit_probe.gd`,真实信号路径+拟真数据,1280×800 归一)× demo 原型 v2.1 浏览器现截九屏(纯净模式,与 HTML md5 `78ebbee0…` 同代现渲染)。逐屏并排图=`pairs/pair_*.png`(左实机右 demo),原图在 `real/` 与 `demo/`。 -> 输入:用户截图的红砖「放弃」按钮(第二层地图屏,特性持有态)+「底栏重设计是根本解、不是限制按钮」裁决。 - -## 逐屏差距(demo 八映射屏) - -### ① 关卡地图(pair_4_map)——用户点名核心屏,差距最大 - -| # | 差距 | demo | 实机 | -|---|---|---|---| -| 1 | **底栏** | 单条 **~85px** 紧凑亮条:头像+生命轨 \| 属性(含攻击加成副行) \| 本关加成(含持有行) \| 道具槽×2 \| **放弃=小号危险钮 ~90×38** | 亮条 + **放弃=216×50+ 危险钮**;特性持有行无限宽换行把栏爆到 130px+(用户截图实证),全栏跟着涨 | -| 2 | 底栏内容 | 五段齐装(含道具槽与持有行) | 少道具槽、少持有行展示态(特性行爆栏);空态大片留白由放弃钮填充 | -| 3 | 底栏淡墨 | 加成副行用 wood-deep 深棕(亮板上可读) | 特性组用 WARM/WARM_SOFT 暖白系(亮板上 ≈1:1,**不可读——§7.2 违例**) | -| 4 | 背景 | 暖棕渐变聚焦、无纹理平铺 | 全屏石纹平铺(/busy,视觉焦点弱) | -| 5 | 顶栏 | 关卡头与 GP 徽章均有框板(plate 感) | 裸文本浮在纹理上 | -| 6 | 节点图 | 分支树多行多列+连线,分支结构一目了然 | 第一层为单行线性排布(深层有分支但连线视觉弱) | - -**底栏重设计草案(待用户裁决后实施,本批未动代码)**:对齐 demo——①底栏定高 88px 单条,五个信息段一行排齐;②放弃改小号危险钮(~90×38,右端);③特性持有行限宽(固定栏宽内 1-2 行省略+tooltip 全文),杜绝爆栏;④特性组墨色换深墨系(INK_HINT/INK_TITLE)修 §7.2 违例;⑤道具槽段位预留(道具读数出口=台账 352 在册项)。 - -### ② 商店(pair_7_shop) - -demo=**全屏页**(顶部标题+刷新徽+GP 框+池源/涨价规则行)+**竖卡三张**(色带/图标/名/效/价/类型脚注);实机=**战斗屏上的小模态**(dim 0.6)+三横行(名+现价+已购档+购买钮),标题与 HUD 行叠压。→ 即 06 在册 D1(卡片 232×352)/D2(商店全屏化)结构级差异,本次截图实证差距量级。实机独有「已购 N 档」档位语义 demo 无。 - -### ③ 三选一(pair_6_bonus) - -demo=全屏页:标题+**GP 汇总行**+三张竖卡(色带/图标/名/效/类型脚注/**选中✓**)+确认选择钮+免费选择注记。实机=战斗内浮层:标题+三行引导文字(关卡奖励点/从提升池抽…/选择一件带走)+窄条卡(~140×220,无脚注无选中✓)+无确认钮(点卡即选)。 -**新证据(E5 追认)**:demo 的「工兵爆破」卡=**紫带(magic 族)**,实机按 T4a 归 TG_AOE=粉带——demo 自身的 blast 归属与 T4a 判定相反,建议回滚 E5(blast 归回 TG_MAGIC),随用户裁决。 - -### ④ 战斗结算·胜利(pair_8_end_victory;失败态同族) - -demo=全屏 dim(仪式感)+石皮框板卡:标题+三行**两列对齐账目**(战利品/钥石/本关加成)+紧凑主钮「下一节点」;实机=**无 dim**(战斗屏裸露)+素面板+居中堆叠文本行+全宽黄钮「返回」。仪式感与排版差距大。 - -### ⑤ 战斗(pair_5_battle) - -结构对齐度高(舞台/上轮摘要行/AP·RAP 行/左栏/提示条均在位)。差距:①demo 棋盘融进深棕场景、实机=亮米大平板+四周大片空白(观感最大点);②demo 左栏三段齐装(探险者+魔法道具槽有货+本关强化+流派件),实机左栏=探险者+秘宝空槽(强化/流派件编排不同源);③demo 站桩带名牌与头顶 HP 轨更紧凑。 - -### ⑥ 标题屏(pair_1_start) - -1. **主操作语义反转**:demo=「继续上局」黄色主钮(有存档时继续是首动作)、「开始冒险」石钮;实机=「开始冒险」主黄钮、「继续上局」石钮。 -2. 主标题:demo 粗像素体大字+烛光副题装饰线;实机细体。 -3. 背景:demo 暗棕渐变+聚光;实机全铺石纹。 -4. demo 有「玩法速览」牌——**实机已按用户令删除,不回补**。 -5. 立绘/敌人群比例 demo 更大更聚中。 - -### ⑦ 营地(pair_2_camp) - -面板明度关系相反(demo 暗石皮面板浮于暖渐变;实机亮米大板浮于石纹);demo 行带图标/Lv 徽章/价格按钮一格齐,实机行松、工坊行为纯文字行;关闭钮 demo 底部居中、实机左下;实机独有累计通关解锁进度列(功能差异非缺陷)。 - -### ⑧ 设置(pair_3_settings) - -demo 石皮框板+两列对齐行(label 列/控制列)+减动效行;实机素面板+行内流式布局无列对齐+**减动效行缺失**(实机仅 主音量/全屏/结算演出动画 三行——减动效语义由结算行承担与否待核);返回钮 demo 紧凑、实机 216 宽。 - -### demo 无映射的实机屏(三屏,无对比基线) - -调试浮窗(real_9_debug)· 图例(real_10_legend)· 确认框(real_11_confirm)——demo 八屏不含,维持现状,仅存档截图。 - -## 总体结论(差距量级排序) - -1. **关卡地图底栏**(用户点名)——放弃钮尺寸语义错+特性行爆栏+淡墨违例;根本解=按 demo 88px 单条重设计(草案见上)。 -2. **商店/三选一形态级差距**(D1/D2 在册):全屏化+竖卡 232×352——06 已登记待立项,本轮截图把量级坐实。 -3. **结算仪式感**(dim+石皮框板+两列账目)——呈现批量级。 -4. **背景处理全局差距**:demo 暖渐变聚焦、石纹只作局部质感;实机全屏铺石纹——跨屏共通改。 -5. **标题屏主操作语义**(继续上局应为主钮)。 -6. 战斗屏结构对齐度最高,仅棋盘底色处理与左栏编排差距。 -7. E5 证据更新:demo 爆破卡紫带 → 建议 blast 归回 TG_MAGIC(推翻 T4a 的 blast→TG_AOE),随用户裁决。 - -## 批末判定(2026-10-06 /goal UI 对齐批收口——逐项复判全记) - -/goal 令(「将游戏的 UI 对齐 demo 的 UI;完成后自验:ui_audit_probe 逐屏实机截图×demo 浏览器截图,重建并排对比图逐项判定;全部差距闭环或列明不可对齐原因」)执行完毕。判官=documents:visual-judge 两轮独立目检(初判 7 pass/2 partial/1 fail → 修复后复判 4 张全部转 pass),九组并排图已按合后态重摄重建(real/ 与 pairs/ 现内容=最终态)。 - -### 逐屏判定终态 - -| 屏 | 判定 | 闭环内容 | 留档差异(非本轮差距) | -|---|---|---|---| -| ①标题 | **pass** | 主操作语义反转(有档=继续上局主黄钮);背景=暖棕底+石纹 0.14+斜光带+暗角 | demo 玩法速览牌已按用户令删除,不回补 | -| ②营地 | **pass**(用户实机复检后二次修复) | 背景氛围层(可见处石纹微弱+暗角);**用户实机两缺陷修(2026-10-06)**:①底改不透明暖亮档(原 0.45 半透 dim 在石纹降 0.14 后底下对局画面透出——demo #v-camp=bg-bright 实底同款)②三柜 EXPAND_FILL 等宽分屏+行标签截断兜底(原行标签按文字全宽算 min,进度/状态长文案随档变长把三柜总宽撑爆 1248=右柜裁出屏)+状态列 tooltip 兜底 | 面板明度/行密度/关闭钮位=camp ⑦ 遗留(06 留档) | -| ③设置 | **pass** | 两列对齐(label 定宽 140)+返回钮紧凑 90+主音量滑轨实高修(HSlider 槽按 stylebox min 高绘制缺陷) | 减动效行不拆=reduced_motion 单设置同驱 motion_scale+结算演播(语义命名批裁决,demo 两行=同一设置) | -| ④地图 | **pass** | 底栏 85px 定高单条+放弃 90 小钮+特性行限宽截断+深墨;顶栏关卡名框板+GP 烛光胶囊+两极排布;背景暖棕渐变 | 道具槽段位=台账 352 功能欠账(非呈现层) | -| ⑤战斗 | **pass** | 背景氛围层成立;轮次条/上轮摘要结构一致 | 棋盘底板融景、左栏编排、站桩紧凑度=battle ⑤ 遗留(06 留档) | -| ⑥三选一 | **pass** | 全屏页(page_shell 根底档)+D1 竖卡 232×352+类型脚注行+底注 | 稀有度词缺=数据面无投喂(词表随数据批补) | -| ⑦商店 | **pass** | 全屏页(D2)+56px 通栏顶条+爬价规则行(实数投喂 shop_bp_visit_buys×shop_price_a)+D1 竖卡+底注池源 | 「已购 N 档」=实机独有档位语义(功能差异非缺陷) | -| ⑧结算·胜/败 | **pass** | DIM_NIGHT 0.62/0.6 全屏压暗(判官实测亮度 218→97)+两列对齐账行+紧凑主钮 | 账行文案词序差异=Narrator 文案域 | -| 无映射三屏 | 存档 | 调试浮窗/图例/确认框维持现状(demo 无基线) | — | - -### 不可对齐/留档原因清单 - -1. **营地面板明度与行密度、关闭钮位**:camp 布局属 M 批落码形制,重排=独立呈现批量级,本批只落背景氛围层;06 留档。 -2. **战斗棋盘底板**:棋盘视觉=样张 v2 机检冻结域(golden 断言),动底板需过样张闸;06 留档。 -3. **地图道具槽**:道具读数无关卡画面=成文出口(台账 352),功能件非呈现层。 -4. **稀有度脚注词**:候选数据面无稀有度字段投喂,随数据批补。 -5. **减动效独立行**:与结算演出动画=同一设置(语义命名批 T17 裁决合并),拆行=一设置双行重复,不拆。 - -### 闸门记录 - -开工基线冒烟 782/0(4336fd2 净态)→ 每轮轻闸冒烟 782/0+probe_gate --click 全绿 → 批末 run_all 16 套全绿+全探针绿+doc 三闸零新增(2 处 06 陈旧断链系基线随 merge 自愈,非本批引入)→ 合 master 2ca6288 主区复跑(冒烟 782/0+click 全绿+run_all 17 套全绿〔含并行批新落 curio_refresh_paid_test〕)→ 判官修复轮复验全绿。 diff --git a/design/qa/迭代18-实机目检总清单-2026-10-07.md b/design/qa/迭代18-实机目检总清单-2026-10-07.md deleted file mode 100644 index 96559586..00000000 --- a/design/qa/迭代18-实机目检总清单-2026-10-07.md +++ /dev/null @@ -1,52 +0,0 @@ -# 迭代 18 四卡实机目检总清单(2026-10-07 交付) - -迭代 18 四卡已全部已合并进 master:卡③ 提案批(merge de067ae)/卡⑤ 混编投放批(merge 0dbe3c3)/卡⑦ 种子随机化批(merge b91b973)/卡④ 生涯界面批(本批)。目检归用户逐项过;每节标注详细判据所在的出口报告。目检不阻塞后续开发,但发现的问题按正常缺陷修复流程登记。 - -> **✅ 核销状态(2026-10-14 qa 收尾批)**:用户实机目检回报全部完成,未呈报问题——卡⑤ 四项、卡⑦ 八项、卡④ 六项共 18 项同批核销(卡③ 纯文档批无实机目检项;卡⑤ 难度带 MC 取证读数挂账条随 M4 数值批履行,不属人闸)。 - -## 一、卡③ 武器锻造系统设计提案(纯文档批——无实机目检) - -人闸=**提案盘问裁决**(异步,不阻塞其余卡): - -- 提案正文:`design/research/提案-武器锻造系统-2026-10-07.md`(八节框架)。 -- 17 个设计裁点的全备选案一览表:`design/qa/iter18-forge-exit-report-2026-10-07.md` §四(推荐主线=丙案「当前武器单选+每件武器独立等级与特效」等,逐点呈裁)。 - -## 二、卡⑤ 混编遭遇首批投放批 - -目检四项(详细判据:`design/qa/iter18-mixenc-exit-report-2026-10-07.md` §7): - -1. 第 2 关深度 5 的普通节点触发战斗:同场出现两种敌人——熊地精重击手 + 巨蜘蛛巢群(巨蜘蛛 2-3 只)。 -2. 同场敌人出场顺序与表序一致:重击手在前、巨蜘蛛巢群在后。 -3. 同场敌人实例总数不超过 4。 -4. 首遇教学位回归不变:巨蜘蛛首遇位(第 2 关节点 4)固定 2 只不加骰;钩爪恐魔(第 3 关节点 0/1)固定数量。 - -## 三、卡⑦ 种子随机化与调试浮窗升级批 - -前置:以 `DS_DEBUG=1` 启动游戏(详细判据:`design/qa/iter18-seed-exit-report-2026-10-07.md` A-I 九节): - -1. 应用启动后调试浮窗默认打开(手动可关、角标可再开)。 -2. 主菜单连续开多次新冒险(非首局、种子框留空):各局种子互不相同(当局数据区块可查本局种子);首次冒险(新档第一局)固定种子 42。 -3. 调试种子框输入合法整数时全场景按输入值生效(含首局)。 -4. 对局中可从战斗屏 HUD 角标与关卡地图屏角标开合浮窗;其他层打开时浮窗暂隐、关闭后自动恢复。 -5. 当局数据区块六项(种子/关卡/节点/HP/GP/钥石)与实际局况逐项一致。 -6. 从浮窗发起调试对局正常;对局进行中批量模拟与调试对局两按钮禁用。 -7. 浮窗开着时棋盘输入不被锁死、暂停角标不置灰;开新冒险/续玩路径正常(浮窗自动收起)。 -8. 断点续玩逐位正常(存档种子回填)。 -- 随附:代拍板追认单六项(区块标题/占位提示词/角标落点等)见出口报告追认单节。 - -## 四、卡④ 生涯界面实装批·期一 - -目检六项(详细判据:`design/qa/iter18-career-exit-report-2026-10-07.md` A-H 八节): - -1. 主菜单「营地与系统」组出现「生涯」钮(营地钮之后),点击开生涯全屏页、关闭返回主菜单。 -2. 汇总页六类九项数值与存档实况逐项一致:总局数/通关局数/各关通关次数/Boss 首杀/Boss 总击杀/钥石余额/属性锻造合计/道具工坊解锁计数/天赋树已购聚合。 -3. 旧档(v5 格式)载入后生涯页正常显示(终身计数缺省补零),无损坏。 -4. 生涯页开着=游戏输入锁定(与其他层同语义);与设置/确认弹窗等他层开合关系正常。 -5. 页内零「前往他处」跳转入口(只有返回);零动效。 -6. 局内(战斗屏/地图屏)无生涯入口;存档往返(退出重进)后计数不漂移。 -- 随附:代拍板追认单十一项(字段命名/文案/行序排版/分组标题等)见出口报告追认单节。 - -## 挂账提醒(非目检项) - -- 卡⑤ 难度带 MC 取证读数:顺延 Alpha 收官 M4 数值批统一执行,届时另行报批(07-⑱ 在册)。 -- 卡⑦ 三裁决(首次固定/显式指定/种子不进玩家 UI)2026-10-07 已裁,本批即其执行。 diff --git a/design/research/Alpha未完成事项梳理-2026-10-13.md b/design/research/Alpha未完成事项梳理-2026-10-13.md index d4c6a7b6..a8d067c3 100644 --- a/design/research/Alpha未完成事项梳理-2026-10-13.md +++ b/design/research/Alpha未完成事项梳理-2026-10-13.md @@ -15,7 +15,7 @@ | J1 | 一 · 跨局循环:**锻造工坊 = 待做** | ✅ **已入库**(迭代 23,2026-10-12;实现报告已退役〔git 历史可考〕,合入 `52fdaf6`)。六路线行族在役、两轴所有权已移交、存档 v7 已落、工作间 UI 已实装。**残留 = 人闸**:实机目检工作间形态与购买交互([07](../gdd/07-体验验证清单.md) ㉒) | 08「Alpha 完成判据」里这一行其实已满足,不订正会白做一轮实装 | | J2 | 二 · 内容量:**锻造工坊路线行族 = `meta_forge.tres` = 待做** | 落表为 **`forge.tres`**(`ForgeTable`,六路线 sword/spear/staff/light/heavy/ward 在役);`meta_forge` 系 2026-10-12 立项时的**选型旧名**,从未落盘(`meta.tres` 的 `forge_products` 行族已随迭代 21 退役) | 表名错误会让后续按图索骥的人找不到表 | -> J1/J2 属**文档事实订正**,不是设计决策,不进 §三 的待裁清单——建议随本次讨论结论一并订正 08 版本历史。 +> J1/J2 属**文档事实订正**,不是设计决策,不进 §三 的待裁清单——建议随本次讨论结论一并订正 08 的 git 提交史。 另两条文档面欠账(不属游戏内容,仅登记):`gdd_lint` 表格占比存量 3 件(01/06/07)、`doc_term` 退役术语旗 1 件(06「拔旗回收返 AP」备选条目文字引用)。 @@ -316,7 +316,7 @@ | **F6-文档面** 商店刷新机制文档回写三处 | 直接做(冒险结构共享池账本节 / 关卡节点地图商店行 v1.6 / 06 本条收口核对) | 小 | 纯文档,不依赖 M4 调参 | | **H2** 类型色 `TG_*` 常量化 | 直接做:把内联 `Color8` 提为 `ui_kit` 常量并补第五族 aoe `#E25676`(与格面微光同族不同落点) | 小 | ui_kit + 两处消费点 | | **I14** 在途草稿整理 | **先 dry-run 呈报清单**,经确认再分批执行(按用户惯例) | 中 | 批量文件移动/删除,属个人目录高风险操作,必须 dry-run 先行 | -| **J1/J2** 08 两行订正 | 随本次结论一并改 | 小 | 08 版本历史 | +| **J1/J2** 08 两行订正 | 随本次结论一并改 | 小 | 08 的 git 提交史 | > 以上六条**都不是设计决策**,建议从讨论里摘出来直接排执行批。 diff --git a/design/qa/代码术语审计报告-2026-10-18.md b/design/research/代码术语审计报告-2026-10-18.md similarity index 95% rename from design/qa/代码术语审计报告-2026-10-18.md rename to design/research/代码术语审计报告-2026-10-18.md index 7f793b32..b04e3117 100644 --- a/design/qa/代码术语审计报告-2026-10-18.md +++ b/design/research/代码术语审计报告-2026-10-18.md @@ -34,7 +34,7 @@ 注:「封印」现有 170 处命中(46 文件),其中大部分是正确用法(封印=正式术语),但部分语境把它当「比喻」或「对外表达」描述,需修正措辞。 -**读数订正(2026-10-18 需求卡片 v1.4 实测,本表数字保留作历史读数不作施工依据)**:上表的 game/ 侧数字用现行代码复现不出。同一命令口径实测(`game/` 内、区分大小写逐处计数):含 `flag` 的 .gd 53 个文件 595 处 + .tres 4 个文件 22 处,剔除 `size_flags_*`(70 处/19 文件)与 `_fatal_flag`(4 处)后**净 543 处/42 个文件**;「金币」39 处、「插旗」62 处、「雷格」75 处、「惩罚格」1 处、「旗」含复合词 376 处。两处口径错误:①中文三词用的是**全库**读数(全库实测 金币 381/插旗 600/雷格 394 处),被记进了 game/ 范围行;②flag 侧低估约一倍(原记 270+22+22=314)。施工判据以 [需求卡片-代码术语刷新批](../research/需求卡片-代码术语刷新批-2026-10-18.md) §2 的复现命令为准。 +**读数订正(2026-10-18 需求卡片 v1.4 实测,本表数字保留作历史读数不作施工依据)**:上表的 game/ 侧数字用现行代码复现不出。同一命令口径实测(`game/` 内、区分大小写逐处计数):含 `flag` 的 .gd 53 个文件 595 处 + .tres 4 个文件 22 处,剔除 `size_flags_*`(70 处/19 文件)与 `_fatal_flag`(4 处)后**净 543 处/42 个文件**;「金币」39 处、「插旗」62 处、「雷格」75 处、「惩罚格」1 处、「旗」含复合词 376 处。两处口径错误:①中文三词用的是**全库**读数(全库实测 金币 381/插旗 600/雷格 394 处),被记进了 game/ 范围行;②flag 侧低估约一倍(原记 270+22+22=314)。施工判据见需求卡片 §2 的复现命令(卡片已随迭代 31 实现批退役,git 历史可考;合回 `4f953ce8`)。 --- @@ -119,4 +119,4 @@ design/research/(提案、需求卡片)、design/qa/(审查报告)、des ## 6. 建议拆批 -见同目录需求卡片:`design/research/需求卡片-代码术语刷新批-2026-10-18.md` +拆批已由迭代 31 执行(卡① 代码术语刷新+卡② 凭证件裁削,合回 `4f953ce8`/`3e076e22`);对应需求卡片已随实现批退役,git 历史可考。 diff --git a/design/research/会话提示-营地场景图美术设计-2026-10-18.md b/design/research/会话提示-营地场景图美术设计-2026-10-18.md index 122c5dfc..4e29d614 100644 --- a/design/research/会话提示-营地场景图美术设计-2026-10-18.md +++ b/design/research/会话提示-营地场景图美术设计-2026-10-18.md @@ -16,7 +16,7 @@ ### 2. 开工前必读(按序,读完再动手) 1. `design/research/需求澄清-营地交互重做-2026-10-18.md` —— **唯一事实源**:①目标体验原话 ②参照与反参照 ③非目标 6 条 ④目标结构树+纵深稿(远景天空/中景围栏+大门/近景篝火居中/左锻炉铁砧/右床铺宝箱)⑤10 条交互裁决 ⑥验收口径 ⑦切批原则 -2. `design/research/需求卡片-营地场景图新建批-2026-10-18.md`(v2.2)—— 卡④现状与已裁事项(Q4/Q5/Q6/Q8 均裁定甲)、五项前置销号清单 **P1–P5**、归属纪律段 +2. `reports/需求卡片-营地场景图新建批-2026-10-18.md`(v2.2)—— 卡④现状与已裁事项(Q4/Q5/Q6/Q8 均裁定甲)、五项前置销号清单 **P1–P5**、归属纪律段 3. `design/gdd/ux/camp.md`(v1.5)—— 营地现有功能面(四柜台、钥石、商店) 4. `design/art/art-bible.md`(v3.15)—— §4.2/§4.6.3 色板权威面、§6.2/§7.5 场景与物件条款 5. `design/gdd/06-待办清单.md` 末尾「营地交互重做·五张需求卡片」条目 —— 状态机与销号出口在哪改 diff --git a/design/research/提案-冒险前资源配比预设-2026-10-04.md b/design/research/提案-冒险前资源配比预设-2026-10-04.md index 3beb8a1b..d5091be6 100644 --- a/design/research/提案-冒险前资源配比预设-2026-10-04.md +++ b/design/research/提案-冒险前资源配比预设-2026-10-04.md @@ -2,7 +2,7 @@ > 日期:2026-10-04 > 性质:立项提案(纯调研,零代码,零 git 操作)——五个开放问题逐项列全备选案(含淘汰案与淘汰依据),各给一条推荐;全部拍板归用户(见 §八)〔2026-10-04 已全裁,裁决记录见 §九〕。 -> **⚠ 已退役存档(2026-10-18 用户令入库)**:八裁与盘问四裁全落后,本提案已由[需求卡片-冒险前资源配比预设批-2026-10-04](需求卡片-冒险前资源配比预设批-2026-10-04.md)吸收(吸收即死)——裁决结论唯一事实源=06-待办清单「冒险前资源配比预设(构筑提案)」条+该卡片;本文件只作推导过程与淘汰依据的历史档,重启该批勿以本文为现行口径。 +> **⚠ 已退役存档(2026-10-18 用户令入库)**:八裁与盘问四裁全落后,本提案已由[需求卡片-冒险前资源配比预设批-2026-10-04](../reports/需求卡片-冒险前资源配比预设批-2026-10-04.md)吸收(吸收即死)——裁决结论唯一事实源=06-待办清单「冒险前资源配比预设(构筑提案)」条+该卡片;本文件只作推导过程与淘汰依据的历史档,重启该批勿以本文为现行口径。 > 事实源:[06-待办清单](../gdd/06-待办清单.md)「冒险前资源配比预设(构筑提案)」条(2026-10-04 现行态)· [元进度](../gdd/systems/跨局循环/元进度.md) v1.6 · [地图战斗资源](../gdd/systems/战斗循环/地图战斗资源.md) v0.16 · [难度曲线与Boss](../gdd/systems/冒险循环/难度曲线与Boss.md)(带换代节)· [关卡节点地图](../gdd/systems/冒险循环/关卡节点地图.md) v1.5 · [棋盘生成](../gdd/systems/排雷循环/棋盘生成.md) v0.4 · `game/data/tables/reward.tres`(现行权重逐行核证)· 姊妹研究 方案-挖掘风险不等式修订-2026-10-04(已退役,git 历史可考) · 外部先例出处随文注(§二与附录)。 --- diff --git a/design/research/提案-效果引擎无状态化-2026-10-19.md b/design/research/提案-效果引擎无状态化-2026-10-19.md index ecc8ff84..665dc416 100644 --- a/design/research/提案-效果引擎无状态化-2026-10-19.md +++ b/design/research/提案-效果引擎无状态化-2026-10-19.md @@ -1,9 +1,10 @@ # 提案:效果引擎无状态化(计数器外置·分桶) - **日期**:2026-10-19 +- **版本**:v1.2(2026-10-20 设计闭合版——现行身份标记;改动沿革只查 git commit log) - **性质**:架构重构提案(restructure,非 refactor)——现役设计被判为错误形态,不是打磨 - **上游**:`design/gdd/06-待办清单.md:627`「计数器寿命域未统一」条目(2026-10-18 登记);本提案推翻该条目的解法方向,见 §8 -- **状态**:**草案·设计未闭合**——§7 设计已定值、§7.7 采集定不发起,但 §4.2–§4.5 核验出 3 项阻塞级实现设计缺口(A1 ctx 结构/A2 桶接口/A3 树合成行漏校验)+ 5 项次级缺口 + 6 项需求澄清未对齐,**尚不可写卡** +- **状态**:**设计已闭合·可写卡**——§7 设计定值、§7.7 采集定不发起;§4.3 六项卡点、§4.4 八项实现设计缺口、§4.5 六项需求澄清已于 2026-10-20 复核轮全部闭合(定值与推导依据集中在 §7.10,§3.2/§4.1–§4.5/§5 各节已按定值同步改写);其中 B6(dig_combo 死读数删除)与 §7.9 五条同口径属「约束可推、可否决」项 - **范围**:代码 + 文档,**不含美术** - **关联已定项**:迭代 31 卡①代码术语刷新批 / 卡②凭证件裁削批(完美保险按现役 `domain=battle` 落地)——本提案若先落地,卡②的专长行需同步改形 @@ -77,29 +78,31 @@ ### 3.1 四只桶(宿主决定寿命,不需要寿命字段) -| 桶 | 宿主(候选,见 N1) | 清空方式 | 现役对应 | +| 桶 | 宿主(定值,见 N1) | 清空方式 | 现役对应 | |---|---|---|---| -| `round` | 战斗域对象 | 轮始 `= {}` | `_reset_on_round_start` 名单(4 枚:`round_blast_spent` / `instinct_atk` / `round_mines` / `round_digs`) | +| `round` | `BattleOrchestrator` 公开成员(ctx 构造时挂引用) | 轮始整桶清空(引擎 dispatch 的 round_start 特判泛化——**就地清空**,禁 `= {}` 重赋值断引用) | `_reset_on_round_start` 名单(4 枚:`round_blast_spent` / `instinct_atk` / `round_mines` / `round_digs`) | | `battle` | `BattleOrchestrator`(每战 new) | 随宿主销毁 | `rebuild` 的 `_counters = {}`(8 枚:`geo_types` / `helm_layers` / `skip_pts` / `echo_seals` / `smith_seals` / `fuse_pts` / `stop_swap` / `insurance_used`) | -| `level` | 关卡域对象 | 进关 `= {}` | `adventure_runner.gd:840-842` 硬编码名单 | +| `level` | `LevelRunner.level_counters` 公开成员 | 进关随宿主 new 天然空 | `adventure_runner.gd:840-842` 硬编码名单 | | `adventure` | `run_ledger.adventure_counters`(沿用) | 新冒险置空(`adventure_runner.gd:255`) | `domain=adventure`(4 枚:`twin_digs` / `pain_layers` / `tree_sense_sharp_used` / `tree_sense_guard_used`) | 🔴 **枚数订正**:现役 distinct counter_id **共 16 枚**(4+8+4),非草案初版的「13 枚」。13 系卡② 落地前的旧数(未含 `insurance_used`),且与草案自身分桶子项相加(4+8+4=16)自相矛盾。 **寿命语义不再需要任何字段**:对象活着值就活着,对象重建值自然归零。 -### 3.2 引擎接口改动 +### 3.2 引擎接口改动(2026-10-20 定稿——写口形态见 §7.10.8) | 现在 | 之后 | |---|---| -| `dispatch(event, payload, facts)` | 增 ctx 参数(携带本战可读写计数器容器引用集) | -| `counter()` | 改从 ctx 读(纯查询,不存) | -| `counter_add()` / `counter_spend()` | **删除**——写由发射点落到传入计数器容器 | +| `dispatch(event, payload, facts)` | `dispatch(ctx, event, payload, facts)`——ctx=`EffectContext` 四桶引用束(§7.10.1),每战构造一次 | +| `counter()` | `counter(ctx, counter_id)`(纯查询读 ctx,引擎不自持——N5) | +| `counter_add()` / `counter_spend()` | **实例方法删除**;改**静态纯函数**(ctx 首参)——7 个施加点调用形不变、语义单点(§7.10.8) | | `counters_export()` / `counters_seed()` | **删除** | | `has_effect_on()` / `validate_trigger_row()` | 保留(纯函数) | -| — | 新增纯函数 `bucket_of(counter_id)`(按前缀判桶) | +| — | 新增 `EffectContext` 类(`game/core/effect_context.gd`,四桶引用束字段)+ `static bucket_of(ctx, counter_id)`(前缀→目标桶字典,解析单点) | -写口迁移(**共 6 处,非 5 处**):`action_economy.gd:110/113/173`、`damage_controller.gd:351/464`、**`grant_segment.gd:327`** 由 `_fx.counter_add(...)` 改为对 ctx 计数器容器写入;`battle_orchestrator.gd:717` 的 `counter_spend` 同理。 +round_start 清零点保留在引擎 `dispatch` 特判内(`:210-212` 现役挂点),由按名单清零泛化为 `ctx.round_bucket.clear()`——前缀分桶后名单集合≡整桶键集,行为逐位等价(挂点不挪的依据见 §7.10.1)。 + +写口迁移(**共 7 处**:action_economy.gd `:108/:111/:169`、damage_controller.gd `:351/:464`、grant_segment.gd `:327`(`_apply_counter_hit`——卡② 保险写入唯一通路)、battle_orchestrator.gd `:714`(counter_spend,受理闸))由 `_fx.counter_add(...)` 改为静态 `EffectEngine.counter_add(ctx, ...)`;调用点行号系 2026-10-20 实查(草案初版 :110/:113/:173/:717 系 +2/+4 行漂移,A6 补列面见 §7.10.6)。 🔴 `grant_segment.gd:327` 是**卡② 完美保险的写入计数唯一通路**(`:315` `_apply_counter_hit(h)` 落 `insurance_used`),漏掉它=保险「每战限次一次」失效(恒 0 → 每次标错都豁免)。 @@ -124,14 +127,14 @@ | T | 内容 | 估时 | |---|---|---| | T0 | worktree/分支;冒烟·单元·探针·三闸基线记档 | 0.25d | -| T1 | 桶承载对象新建 + 四宿主接线 | 0.5–1d | -| T2 | 引擎删状态 + `dispatch` 增 ctx + `bucket_of` | 0.5–1d | -| T3 | 施加点改写(action_economy / damage_controller / orchestrator) | 0.5–1d | -| T4 | 三处清零点就位(轮始 / 进关 / 战斗 new) | 0.25–0.5d | -| T5 | 前缀校验进 `validate_trigger_row` | 0.25d | -| T6 | 数据行与树合成行 counter_id 调整 | 0.25d | -| T7 | **机制正向验收断言新增** + 旧测试迁移 + 变异验证 + 同种子复放对拍(详见 §4.1) | 1–1.5d | -| T8 | 文档回写(architecture / 06 / README / entities.yaml) | 0.25d | +| T1 | `EffectContext` 新建 + 四宿主接线(编排器两桶成员/ctx 挂载、LevelRunner 桶成员+enc 下传、set_fx 三处扩参) | 0.5–1d | +| T2 | 引擎删状态 + `dispatch`/`counter` 增 ctx + 写口改静态纯函数 + `bucket_of` | 0.5–1d | +| T3 | 7 个施加点改写(action_economy ×3 / damage_controller ×2 / grant_segment ×1 / orchestrator spend ×1)+dig_combo 死路删除 | 0.5–1d | +| T4 | 轮始清零泛化(引擎 round_start 特判整桶清空;进关/战斗 new 两处免费——§7.10.1) | 0.25d | +| T5 | 前缀校验双落点(`validate_trigger_row` + `_push_trigger`) | 0.25d | +| T6 | 数据行与树合成行 counter_id 调整(改名 4 处+`domain`/`reset_at` 键删除) | 0.25d | +| T7 | **机制正向验收断言新增** + 旧测试迁移 + 变异验证 + 同种子复放比对(详见 §4.1/§7.10.12) | 1–1.5d | +| T8 | 文档回写(architecture 反哺点归 06 条目 / 06 状态推进 / README / 卡片关联同步面) | 0.25d | ### 4.1 验收测试清单(机制正向验收 —— 主力) @@ -139,91 +142,96 @@ > > 对拍只能证「除已知差异外没改坏别的」(负向/兜底),**不能证新机制按设计工作**。机制改动的正向验收必须由下列断言承担。依据:`test-conventions.md` §1「存在必须证明可达且正确」/§3「缺陷修复必须沉淀回归断言」/§5 落码规范/§6 变异验证。 +> 🔴 **编号辨析**:本表验收点编号(A1–H1)与 §4.4 缺口编号(A1–A8)是两套命名空间,互不指涉——本表编号沿用 2026-10-19 首版验收清单,§4.4 编号沿用缺口盘点,改表不改号(卡内引用以「§4.1 V-」前缀消歧,写卡时逐条带编号尾缀)。 +> +> 🔴 **2026-10-20 定稿**:本表按 §7.10 闭合定值改写——A1 注入口径(§7.10.10)、B2 构造路径(§7.10.13)、D1 载体(§7.10.5)、E2 撤销并入 F1(§7.10.3)、G1 分组判读(§7.10.12)、新增 H1 旧档加载(§7.10.15)。 + | # | 验收点 | 执行载体 | 断言词汇 | 怎么测(注入粒度) | |---|---|---|---|---| -| **A1** | **adventure 桶跨战持久**(=`run_ledger.gd:42` 缺陷消解的**回归断言**,修前恒 0) | 冒烟 `smoke_all.gd` 冒险段 | 状态/计数器断言 | 新冒险开局 → 第 1 战末置 `adv_twin_digs=1` → 进入第 2 战首读该键 ==1 | -| **A2** | adventure 桶新冒险置空 | 冒烟 | 状态/计数器断言 | `start_adventure` 后桶 size==0 | +| **A1** | **adventure 桶跨战持久**(=`run_ledger.gd:42` 缺陷消解的**回归断言**,修前恒 0) | 冒烟 `smoke_all.gd` 冒险段 | 状态/计数器断言 | 两编排器共享同一 `RunLedger`(V25 同构):第 1 战 `orch1.action_economy.request_dig(0, false)` 真实挖一次(无返还,`adv_twin_digs`=1)→ 第 2 战(同 ledger 起 orch2)再挖一次(mod_eq 预评估读持久值判「第 2 次」→ 返还成立+桶值 2)——读/写两路径均走真实事件面(§7.10.10) | +| **A2** | adventure 桶新冒险置空 | 单测 `feat_vouchers_test.gd`(start_adventure 先例 `:25`) | 状态/计数器断言 | `start_adventure` 后 `run_ledger.adventure_counters` 为空 | | **A3** | adventure 桶随断点往返 | 单测 `feat_vouchers_test.gd`(承 V16,键名随前缀改) | 快照比对 | 写断点 → 回读 → 桶内容逐位相等 | -| **B1** | level 桶**同关跨战保持、进关清零** | 冒烟 | 状态/计数器断言 | 同关第 2 战读 `lvl_tree_sense_*` 保持;进下一关后归零 | -| **B2** | **tree_sense 每关限 2 次**(削弱行为的正面确认) | 冒烟 | 状态/计数器断言 | 同关第 1 战用满 2 次 → 第 2 战 `lt 2` 不命中 → 无减伤/无返还(修前第 2 战仍有额度) | -| **C1** | battle 桶随宿主销毁 | 冒烟 | 状态/计数器断言 | 第 1 战置 `insurance_used=1`;第 2 战读 ==0 | +| **B1** | level 桶**同关跨战保持、进关清零** | 冒烟 | 状态/计数器断言 | 两编排器经 enc["level_counters"] 共享同一字典(LevelRunner 真实下传形态):第 2 战读 `lvl_tree_sense_*` 保持;新 LevelRunner(进下一关形态)新桶天然为空(§7.10.11) | +| **B2** | **tree_sense 每关限 2 次**(削弱行为的正面确认) | 冒烟 | 状态/计数器断言 | B1 同款共享桶两编排器:第 1 战两次 `_fx.dispatch(ctx, "mine_hit", {})` 命中(damage_mult+counter_add 双行,桶值=2)→ 第 2 战同 dispatch 返回空(lt 2 闸关)且桶值不动——when 只读 counter fact、零 payload 依赖(§7.10.13) | +| **C1** | battle 桶随宿主销毁 | 冒烟 | 状态/计数器断言 | 第 1 战置 `insurance_used=1`;第 2 战(新编排器)读 ==0 | | **C2** | 完美保险「每战限次一次」仍成立(卡② V25 迁移保绿) | 单测 `feat_vouchers_test.gd:132+` | 状态/计数器断言 | 沿用 V25 注入口径,改走新桶 | -| **D1** | round 桶轮始清空 | 单测/冒烟 | 状态/计数器断言 | 轮始后 `round_*` 全 0 | -| **E1** | counter_id 无前缀或带 `meta_` 前缀 → **加载致命** | 单测(新增) | fail-fast | 合成一行喂 `validate_trigger_row` → 命中止/assert | -| **E2** | 同 counter_id 跨前缀重复 → 致命 | 单测(新增) | fail-fast | 同上 | -| **F1** | 旧件零残留 | 静态扫描面 | 快照比对 | 全仓 `counters_export` / `counters_seed` / `_reset_tree_limited_counters` 零命中 | -| **F2** | **旧断言同批摘除**(test-conventions §5.5 换代同生死) | — | — | `effect_words_t1_test.gd:86-94`、`smoke_all.gd:6083-6090`、`:6131-6134` 随旧件同批删除——旧件断言残留=假绿来源 | -| **G1** | 同种子复放对拍(**兜底,非主力**) | `adventure_monte_carlo` 同种子重放 | 重放 | 除已记档的已知差异外逐位一致;零局新采集(配套纪律③) | +| **D1** | round 桶轮始清空 | 冒烟 | 状态/计数器断言 | round 桶直写非零 → `orch._emit_round_start()`(真实发射函数 `:97`,§7.10.5)→ 全零 | +| **E1** | counter_id 带非法前缀(`meta_` 等)→ **加载致命**;树合成行同规则 | 单测(新增负面套件,manifest 登记)+`_push_trigger` assert 面 | fail-fast | 夹具表注入坏前缀行喂 `load_tables` → 拒绝(reward_dangling_treasure_test 同构 expect 1);合成路径坏前缀走 rebuild assert | +| **F1** | 旧件零残留(含旧 id 字面) | `static_scan.sh` 新增 S 段 | 快照比对 | 全仓 `counters_export` / `counters_seed` / `counters_merge_export` / `_reset_tree_limited_counters` 零命中 + **带引号旧 id 字面** `"tree_sense_sharp_used"` / `"tree_sense_guard_used"` / `"twin_digs"` / `"instinct_atk"` 零命中(带引号匹配不误伤 `"lvl_tree_sense_sharp_used"` 等新名——E2 撤销后的改名完整性防线,§7.10.3) | +| **F2** | **旧断言同批摘除**(test-conventions §5.5 换代同生死) | — | — | `effect_words_t1_test.gd:77-94`(export/seed 往返块)、`:96-124`(reset_at/counter_spend 块,随字段删除重写为桶语义)、`smoke_all.gd:6076-6083`(counter_add+export/seed 链)、`:6124-6128`(直呼 `_reset_tree_limited_counters`)、`:1419-1602` 裸引擎段 17 处 dispatch+8 处 counter_add 直调(改 ctx 形态)——旧件断言残留=假绿来源 | +| **G1** | 同种子复放比对(**兜底,非主力**;分组判读制) | `adventure_monte_carlo` 同种子重放 | 重放 | 锚内 normal 档前 20 种子(81000–81019,配套纪律③子集 ≤20):未受影响局全字段逐位一致;受影响局(保守超集=装备集含双管镐/sense 两组且 `mine_hits>0` 或 `seal_miss>0`)输入面字段恒等+`levels_cleared` 分布不得上行(§7.10.12) | +| **H1** | 旧档断点加载不崩(B4 补条) | 单测 `feat_vouchers_test.gd`(V16 旧档同构先例 `:124-127`) | 快照比对 | 旧断点 `adventure_counters` 含旧键(`tree_sense_sharp_used`=2 等)→ `resume_adventure` 受理零崩溃,旧键留桶成死键(无迁移——2026-10-18 先例) | **变异验证必做项**(test-conventions §6——无变异红记录只写「已实现,拦截能力未证」): | 断言 | 变异注入点 | 期望 | |---|---|---| -| A1 | 把 adventure 桶写入改回「判空早退」(复刻 `run_ledger.gd:42`) | A1 必须红 | -| B2 | 摘掉进关清零点(T4 产物) | B2 必须红 | +| A1 | begin_battle 挂载 ctx 时把 adventure 桶引用换成新建空字典(复刻「副本不同步/判空早退」缺陷类——§7.8 守卫原形的同构形态) | A1 必须红 | +| B2 | 两编排器改传各自新建 level 字典(复刻 `:840-842` 旧形态「跨关不清理、每战重置」) | B2 必须红 | | E1 | 注释掉 `validate_trigger_row` 内的前缀校验分支 | E1 必须红 | +| F1 | 任一源文件临时写回一处带引号旧 id 字面(如 `"counters_export"` 调用形) | F1 扫描必须红 | > 三步闭环:注入 → 只跑覆盖该断言的最窄一道闸 → `git checkout -- <文件>` 精确还原并复跑回绿 → 逐条进实现报告变异验证记录表。 **真人目检登记**:tree_sense 锋/守由「每战限 2 次」变「每关限 2 次」是玩家可感知削弱 ⇒ 按「只登记不阻塞」登记进 `07-体验验证清单`,不构成收口前置。 -### 4.2 载体可达性核验(2026-10-19 实查,逐条对 §4.1) +### 4.2 载体可达性核验(2026-10-20 复核轮全绿——逐条对 §4.1) -> test-conventions §5:「写卡期查不出执行载体的条目=不可测,当场呈报,禁拖到实现期」。下表是逐条实查结果。 +> test-conventions §5:「写卡期查不出执行载体的条目=不可测,当场呈报,禁拖到实现期」。下表 2026-10-19 首查,2026-10-20 复核轮六项未闭合项全部闭合(定值见 §7.10)。 | 验收点 | 载体 | 核验结论 | 证据(file:line) | |---|---|---|---| | **C2** 保险限次一次 | 单测 `feat_vouchers_test.gd` | ✅ **已闭合**——V25 现成「第 1 战用满 → 第 2 战重新豁免」双编排器骨架;`orch2.begin_battle({"battle_index":2,…})` + `orch2._grant_seg._judge_seal(...)` 即真实 `seal_missed` | `:143-186` | -| **E1/E2** 前缀致命 | 新增负面套件 | ✅ **已闭合**——现役 fail-fast 测试模式:`config_db_fatal_oob_test.gd`(独立进程,`expect:1` + `negative:true`),manifest 协议在役 | `tests/run_all.gd:37`/`:48` | -| **F1** 旧件零残留 | `static_scan.sh` 新增 S 段 | 🟡 **半闭合**——S1–S10 分检制在位;本批新增 S 段承载,按纪律「闸件增减只改该脚本+`run_all_gates.sh` 登记」,卡里须写明改哪两个文件 | `static_scan.sh:38-82` | -| **A1/A2/A3** adventure 桶 | 冒烟/单测新段 | 🟡 **半闭合**——RunLedger 经 `enc["ledger"]` 下传(`battle_orchestrator.gd:375`),冒烟可自建共享计数器容器喂两个 orch;`AdventureRunner.run_ledger` 公开字段可达(`smoke_all.gd:6131` 先例)。**卡在 U2** | `battle_orchestrator.gd:375` | -| **C1** battle 桶 | 单测/冒烟 | 🟡 **半闭合**——编排器可 new + begin_battle(`smoke_all.gd:2680-2687` 先例);桶须为公开字段或 API,测试才读写得了 | `smoke_all.gd:2680-2687` | -| **B1/B2** level 桶 | 冒烟新段或探针 | 🟡 **半闭合**——LevelRunner 真实驱动有先例(`board_shot_probe.gd:5`);但现役 level 桶**寄居在 `run_ledger.adventure_counters` 字段内**(`adventure_runner.gd:840-842` erase 的就是该字段),搬去 LevelRunner 后须新定公开接口。**卡在 U3** | `adventure_runner.gd:840-842` | -| **D1** round 桶 | 冒烟 | 🔴 **未闭合**——`round_start` 的真实发射入口未定位 | — | -| **G1** 对拍已知差异 | `analyze.py` 字段 | 🔴 **未闭合**——RUNSUM 哪些字段会变未列 | — | +| **E1** 前缀致命 | 新增负面套件 | ✅ **已闭合**——现役 fail-fast 测试模式:`config_db_fatal_oob_test.gd`(独立进程,`expect:1` + `negative:true`)、`reward_dangling_treasure_test.gd`(夹具表注入→load_tables 拒绝)双先例,manifest 协议在役 | `tests/run_all.gd:37`/`:48` | +| **F1** 旧件零残留 | `static_scan.sh` 新增 S 段 | ✅ **已闭合**——S1–S10 分检制在位;本批新增 S 段承载(旧件符号+带引号旧 id 字面两组规则),改面锁定两文件=`static_scan.sh`+`run_all_gates.sh` 登记(域划分唯一出处) | `static_scan.sh:38-82` | +| **A1/A2/A3** adventure 桶 | 冒烟/单测新段 | ✅ **已闭合**——两编排器共享同一 `RunLedger`(V25 骨架)+写入走真实 `request_dig`(U2 随战末导出消失而解除,§7.10.4);`RunLedger` 公开字段直读直写先例在役 | `feat_vouchers_test.gd:175-187`、`smoke_all.gd:6124` | +| **C1** battle 桶 | 单测/冒烟 | ✅ **已闭合**——编排器可 new + begin_battle(`smoke_all.gd:2680-2687` 先例);桶=编排器公开成员字段,测试直读(§7.10.2) | `smoke_all.gd:2680-2687` | +| **B1/B2** level 桶 | 冒烟新段 | ✅ **已闭合**——LevelRunner 直构在役(`smoke_all.gd:6130` `level_runner.gd.new(_db, rng)`);桶=`LevelRunner.level_counters` 公开成员(U3 解,§7.10.11),enc["level_counters"] 下传接线照抄 `"ledger"` 行 | `smoke_all.gd:6130`、`level_runner.gd:466-477` | +| **D1** round 桶 | 冒烟 | ✅ **已闭合**——`round_start` 真实发射点定位=`_emit_round_start()`(U4 解,§7.10.5);直呼该函数即真实路径 | `battle_orchestrator.gd:97`(调用点 `:425`/`:1077`) | +| **G1** 同种子复放比对 | `adventure_monte_carlo` 重放 | ✅ **已闭合**——RUNSUM 27 字段清点完毕(`adventure_monte_carlo.gd:114-149`),分组判读制与允许差异面定值(U5 解,§7.10.12) | `adventure_monte_carlo.gd:114-149` | -### 4.3 写卡前未闭合项(禁拖到实现期) +### 4.3 写卡前未闭合项(2026-10-20 全部闭合——定值与推导见 §7.10) -| # | 未闭合项 | 具体卡点 | +| # | 原卡点 | 闭合定值(详据→§7.10) | |---|---|---| -| **U1** | **A1 注入口径写错了** | 原稿写「置 `adv_twin_digs=1`」**不可行**——新形态引擎无 `counter_add` 公开写口(T2 删除),置数必须走**真实事件**(如触发一次 `dig_paid`)。这条必须重写 | -| **U2** | `_battle_over` 能否孤立调用 | 战末入口在 `battle_orchestrator.gd:1111`(私有)。直接调它会连带 despawn/映射退役/奖励结算。要确认能否被测试单独调用,或另找更窄的战末钩子 | -| **U3** | level 桶公开接口 | LevelRunner 持桶后,测试读写走什么(公开字段/getter/方法)——不定这条,B1/B2 就不可测 | -| **U4** | `round_start` 真实发射入口 | 未定位;定位不到,D1 只能走裸 `dispatch`(弱于真实路径) | -| **U5** | G1 已知差异字段清单 | 需列出 RUNSUM 中预期变化的具体字段,否则对拍红了无法区分「预期」与「意外」 | -| **U6** | B2 的 `mine_hit` 构造路径 | `seal_missed` 有 V25 的 `_judge_seal` 先例;`mine_hit` 的等价构造路径未定位 | +| **U1** | A1 注入口径写错(引擎无 counter_add 公开写口) | 改走真实 `dig_paid` 路径:`orch.action_economy.request_dig(0, false)` 一次即 +1(双管镐 counter_add 行无 when,`feats.tres:26-32` 实证);断言链含第 2 战返还判定,证明读路径同样走真实事件面(§7.10.10) | +| **U2** | `_battle_over` 能否孤立调用 | **不需要**——新形态下战末导出动作消失,A1 断言改走共享桶+两编排器(V25 同构),无验收点依赖该私有入口(§7.10.4) | +| **U3** | level 桶公开接口 | `LevelRunner.level_counters` 公开类型化成员,enc["level_counters"] 下传,测试直读直写(§7.10.11) | +| **U4** | `round_start` 真实发射入口 | 已定位=`battle_orchestrator.gd:97 _emit_round_start()`(调用点 `:425`/`:1077`);D1 直呼该函数即真实路径(§7.10.5) | +| **U5** | G1 已知差异字段清单 | RUNSUM 27 字段清点完毕,分组判读制:未受影响局逐位一致/受影响局输入面恒等+`levels_cleared` 不得上行(§7.10.12) | +| **U6** | B2 的 `mine_hit` 构造路径 | 两编排器共享 level 桶+各自 `_fx.dispatch(ctx, "mine_hit", {})` 直驱(sense 行 when 只读 counter fact,零 payload 依赖);`_facts_reveals` 捏造路径不取(§7.10.13) | -**结论**:13 条验收点中 **2 条已闭合**(C2/E1E2)、**4 条半闭合**(A1A2A3/C1/B1B2/F1)、**2 条未闭合**(D1/G1),另有 6 项卡点(U1–U6)必须先解。**§4.1 现阶段不可直接落码成卡的验收清单。** +**结论**:13 条验收点保持 13 行(E2 撤销并入 F1、新增 H1 补位),**全部载体闭合**,六项卡点全部定值。**§4.1 现在可整表落卡。** -### 4.4 实现设计缺口(2026-10-19 第三轮盘点——写卡前必须补) +### 4.4 实现设计缺口(2026-10-20 全部闭合——定值与推导见 §7.10) -| # | 缺口 | 具体未定 | 阻塞等级 | -|---|---|---|---| -| **A1** | **`ctx` 结构未定义**(最大缺口) | `dispatch` 增的 ctx 里装什么?四桶引用怎么命名/定型?**谁构造 ctx、多久构造一次**?——若 ctx 每轮重建,round 桶天然是新的 `{}`(清零点免费),但 level/adventure 引用要每轮重挂;若 ctx 每战构造一次,round 桶的清零点要显式做。两种走法决定了 T4「三处清零点」到底是三处还是两处 | 🔴 阻塞 | -| **A2** | 桶容器类型与测试接口 | 四桶是否统一为 `Dictionary[String, int]`?level/adventure 是宿主字段、ctx 只带引用——那测试凭什么读写(公开字段/getter/方法)未定(同 U3) | 🔴 阻塞 | -| **A3** | **树合成行走不到生产侧前缀校验** | `feats.tres`/`treasure_items.tres` 的行经 `validate_trigger_row`(`feat_table.gd:44`/`treasure_item_table.gd:104`);但**树合成行**(`effect_engine.gd:142-158`)走 `_push_trigger`,该函数只 `assert(EVENTS.has(on))` 校事件域,**对 counter_id 前缀零校验**。`tree_rules_v11_test.gd:60` 是测试在代校,不是生产在校 ⇒ 前缀校验必须同时落 `_push_trigger`,否则树规则写错前缀不致命,与「加载期强校验」的完成定义 5 直接冲突 | 🔴 阻塞 | -| **A4** | `_battle_over` 孤立调用(同 U2) | 战末入口私有(`orchestrator.gd:1111`),直接调连带 despawn/映射退役/奖励结算 | 🟡 | -| **A5** | `round_start` 真实发射入口(同 U4) | 未定位 ⇒ D1 可能只能走裸 `dispatch`,弱于真实路径 | 🟡 | -| **A6** | `counter_spend` 施加面漏列 | §3.2 只列了写口 `orchestrator.gd:717`;**漏了读施加面 `action_economy.gd:106`**(按 hits 的 `kind == "counter_spend"` 分支走加收对价)——ctx 改动后这条路径怎么走未写 | 🟡 | -| **A7** | counter_id 改名传播面未清点 | 已知:`feats.tres` 数据行、`effect_engine.gd` 树合成行硬编码、`smoke_all.gd` 断言字符串、`tests/` 断言字符串。**未查:呈现层/HUD 是否显示 counter_id**。T6 估时 0.25d 可能不够 | 🟡 | -| **A8** | 保险双计数一致性(N6 遗留) | `_perfect_forgiven`(编排器自持计数,N6 定「留编排器」)与 `insurance_used`(battle 桶,`grant_segment.gd:327` 写)是两份。V25 对两者都断言;`when counter lt 1` 读的是桶内那份 ⇒ 需厘清 `_perfect_forgiven` 是镜像还是另有语义,否则同一次标错可能被两处各写一次 | 🟡 | +| # | 原缺口 | 闭合定值(详据→§7.10) | +|---|---|---| +| **A1** | **ctx 结构未定义**(最大缺口) | `EffectContext` 纯引用束类(`game/core/effect_context.gd`,四桶 `Dictionary[Variant, Variant]` 字段、零方法);每战构造一次:编排器 `_init` 建并挂自有两桶、`begin_battle` 挂 adventure/level 两引用;round 桶清零留引擎 dispatch 特判(就地整桶清空,行为逐位等价)——T4 三处清零点=轮始一处+宿主 new 两处免费(§7.10.1) | +| **A2** | 桶容器类型与测试接口 | 四桶统一 `Dictionary[Variant, Variant]`(S9 现行口径);测试接口=宿主公开字段直读直写(§7.10.2,同 U3) | +| **A3** | **树合成行走不到生产侧前缀校验** | 前缀校验双落点:`validate_trigger_row`(.tres 路径→errs 加载致命)+`_push_trigger`(合成行 assert),共用同一静态判定函数;E2 撤销(无指称),改名完整性防线归 F1 带引号旧 id 字面零命中(§7.10.3) | +| **A4** | `_battle_over` 孤立调用(同 U2) | 阻塞消解——无验收点依赖(§7.10.4) | +| **A5** | `round_start` 真实发射入口(同 U4) | 已定位 `:97 _emit_round_start()`(§7.10.5) | +| **A6** | `counter_spend` 施加面漏列 | `action_economy.gd:103-108`(dig_paid 加收对价+积计数分支)列入迁移面;行号漂移订正(§7.10.6) | +| **A7** | counter_id 改名传播面未清点 | 呈现层零引用(全目录检索实证),传播面收窄至数据行/引擎字面/测试断言三面,T6 估时维持(§7.10.7) | +| **A8** | 保险双计数一致性 | 厘清=**同点双记各司其职**(`_perfect_forgiven` 供判定段两账相减、`insurance_used` 供 when 限次闸),无重复写风险;本批零改动,卡内立「不改面」条目(§7.10.9) | -### 4.5 需求澄清未对齐(不影响本批动工,但需登记或后续裁) +### 4.5 需求澄清项(2026-10-20 全部落处置——B1/B2 本轮执行,B6 按 §7.10.14 定值) -| # | 事项 | 现状 | 处置 | -|---|---|---|---| -| **B1** | **立项依据无文档载体** | 「系统无状态」在 `architecture.md`/`architecture.yaml`/`entities.yaml` **零命中**;本批是代码批、禁写 `design/` ⇒ 卡片的立项依据只能引用「用户 2026-10-19 会话裁定」,不是文档级依据 | 登记 06(来源=会话提及,设计面=文档轨)→ 后续文档批补 architecture.md 条目;本批报告里作反哺点 | -| **B2** | **06:627 条目解法方向被推翻** | 「计数器寿命域未统一」条目的解法(寿命域统一口径)已被本提案推翻,但 06 是待办唯一登记处,**条目不改,后人看 06 仍会按旧方向想** | 同上,登记 06 改写/作废;本批只作反哺点 | -| **B3** | 天赋树锋/守是否重新定价 | 本批把它从「每战 2 次」修回「每关 2 次」=削弱(§7.7) | 已定不改数值;「是否重新定价」=独立议题,不进本批 | -| **B4** | 旧档断点旧键失效 | `tree_sense_*`→`lvl_*` 后旧档内旧键成死键 | 已按 2026-10-18 先例定不迁移;**但卡的验收应加一条「旧档加载不崩」**(现在没有) | -| **B5** | `roadmap.md` 当前位 stale | 仍写「迭代 31 待开工」,卡②已合入 | 已呈报,不进本批 | -| **B6** | `_fx.counter("dig_combo")` 死读数 | `orchestrator.gd:641`,无任何数据行声明该 id ⇒ combo 加成恒 0 死路 | 已呈报。**建议本批顺手删**(迁到 ctx 后仍恒 0,删它零风险),需你一句确认 | +| # | 事项 | 处置(执行状态) | +|---|---|---| +| **B1** | **立项依据无文档载体** | ✅ **本轮已执行**——新增 06 条目「效果引擎系统无状态原则缺架构文档条目」(文档轨·待文档设计),后续文档批补 architecture.md「架构原则」条目;实现批报告仍作反哺点。§10.3 所引 `design/registry/` 两 yaml 已随 2026-10-19 用户裁注销删除,该节对 yaml 的引用失义、以本条为准;立项判据=§7.9 #1(用户 2026-10-19 ECS 架构裁定) | +| **B2** | **06:627 条目解法方向被推翻** | ✅ **本轮已执行**——06「计数器寿命域未统一」条目已改写(现状换代=无状态化重构方向、补「寿命域统一口径」方案作废因由并指向本提案;状态推进「文档设计已闭合+待写卡」)——后人从 06 进入即见新方向 | +| **B3** | 天赋树锋/守是否重新定价 | **已闭合**——本批把它从「每战 2 次」修回「每关 2 次」=削弱(§7.7);不改数值,「是否重新定价」=独立议题不进本批(无需登记——现值非缺陷非待办,若用户日后提起再立条目) | +| **B4** | 旧档断点旧键失效 | **已闭合**——按 2026-10-18 先例定不迁移;验收已补 **H1 旧档加载不崩**(§4.1、§7.10.15) | +| **B5** | `roadmap.md` 当前位 stale | **已呈报在案**,归并行会话,不进本批不动 | +| **B6** | `_fx.counter("dig_combo")` 死读数 | **定值=本批删除**(§7.10.14——全仓无声明行实证+位点本批必触+零行为差;原文「需一句确认」按约束推导闭合,可否决) | --- ## 5. 影响面 -**代码**:`effect_engine.gd`、`battle_orchestrator.gd`、`action_economy.gd`、`damage_controller.gd`、`reward_economy.gd`(`set_fx` 面)、**`settlement/grant_segment.gd`**(草案初版漏——6 个用点:`:103` 读 / `:205` 读 / `:227` `has_effect_on` / `:311-317` `forgive_seal_miss` 消费 / `:327` 写)、`run_ledger.gd`、`adventure_runner.gd`、`level_runner.gd`、`feats.tres`。 +**代码**:`effect_engine.gd`、**`effect_context.gd`(新建——ctx 引用束,§7.10.1)**、`battle_orchestrator.gd`(两桶成员+ctx 构造挂载+dig_combo 死路删除)、`action_economy.gd`、`damage_controller.gd`、`reward_economy.gd`(`set_fx` 面扩 ctx 参——三处注入点 `battle_orchestrator.gd:280-282`)、**`settlement/grant_segment.gd`**(草案初版漏——6 个用点:`:103` 读 / `:205` 读 / `:227` `has_effect_on` / `:311-317` `forgive_seal_miss` 消费 / `:327` 写 / `:54/:61/:62` combo_cap 收集随死路删除)、`run_ledger.gd`(`counters_seed_snapshot`/`counters_merge_export` 随搬运链删除)、`adventure_runner.gd`、`level_runner.gd`(`level_counters` 成员+enc 下传)、`feats.tres`、`data/schemas/feat_table.gd`/`treasure_item_table.gd`(校验调用面零改——前缀校验在 `validate_trigger_row` 内部生效)。 **测试**(草案初版漏项已补): @@ -234,8 +242,9 @@ | `feat_vouchers_test.gd` | **`:114`/`:119`/`:128`**(V16 断点往返 `pain_layers`/`twin_digs`;初版写 `:92-103` 系错行)+ `:132+` 卡② V25 完美保险验收组 | | `settle_segments_test.gd` | `:32-33` `_apply_counter_hit` + `_fx.counter("dig_combo")` | | `treasure_effects_test.gd` | `:34/:45/:53-56` 裸 `dispatch` 面(无 ctx 参数则签名不兼容) | -| `smoke_all.gd` | `:6083/:6085/:6088` `counter_add`+`counters_export`+`counters_seed`/`:6131-6134` 直呼 `_reset_tree_limited_counters`(删函数须同步)/**另 8 处 `fx.counter_add` 直调 `:1427/:1436/:1445/:1466/:1478/:1525/:1566/:1583`(初版全漏)**/`:1410` 断点 `adventure_counters` 键断言/`:1612` `_fx.rebuild`/`:6096/:6124/:6148/:6157` enc 携带 `adventure_counters` 空容器 | -| `run_all.gd` | 套件表(增改套件须登记) | +| `smoke_all.gd` | `:6076-6083` `counter_add`+`counters_export`+`counters_seed` 链/`:6124-6128` 直呼 `_reset_tree_limited_counters`(删函数须同步)/**`:1419-1602` 裸引擎段 17 处 `dispatch`+8 处 `counter_add` 直调(改 ctx 形态——冒烟 rig 自建 ctx 或用 `orch.counters_ctx`)**/`:1410` 断点 `adventure_counters` 键断言/`:1612` `_fx.rebuild`/`:6086-6156` 各 rig enc 携带 `"adventure_counters"` 死键(迭代 27 收口前旧形态残留——编排器只读 `enc["ledger"]`,`battle_orchestrator.gd:372` 实证;同批顺手清键) | +| `run_all.gd` | 套件表(**新增 E1 负面套件登记**) | +| `settle_segments_test.gd` | `:32-33` `_apply_counter_hit` 样本 id `dig_combo` 随死路删除换活 id(§7.10.14) | **存档/断点**:`adventure` 桶已在断点(写键 `adventure_runner.gd:1035`,续玩回填 `:206-208`);`level` 桶是否进断点见 N3。仅改归属不改 id → 旧档零影响;**若采纳 N2 前缀改名(`tree_sense_*` → `lvl_*`)则旧档断点内旧键失效**(Alpha 阶段可接受,有先例:代码术语刷新批 2026-10-18 用户裁不迁移)。 @@ -427,6 +436,99 @@ func counters_merge_export(exported): --- +### 7.10 写卡前缺口闭合定值(2026-10-20 复核轮——由既有裁定与硬纪律推得) + +> 本节把 §4.3 六项卡点、§4.4 八项实现设计缺口、§4.5 六项需求澄清一次闭合。逐项给「定值+推导依据」,全部不占用裁决位——依据三源:用户已裁方向(2026-10-19 ECS 架构裁定、N1–N6 定值)、项目硬纪律(code-conventions/test-conventions/doc-conventions)、本仓代码实证(2026-10-20 逐点实查,file:line 在案)。若与你的判断不符,指出即推翻(同 §7.9 口径)。 + +#### 7.10.1 A1——ctx 结构定值 + +**定值**:ctx=新建纯引用束类 `EffectContext`(`game/core/effect_context.gd`,RefCounted),四个公开类型化字段 `round_bucket`/`battle_bucket`/`level_bucket`/`adventure_bucket`(各 `Dictionary[Variant, Variant]`,int 值),零方法零行为。**每战构造一次**:编排器 `_init` 建 ctx 并挂入自有两桶引用;`begin_battle` 挂入 adventure(`_ledger.adventure_counters`)与 level(enc 新键 `"level_counters"`,LevelRunner `_start_battle` 下传)两引用;ctx 以编排器公开成员 `counters_ctx` 在役——段类经 `oc` 引用即达;三协同件(action_economy/damage_controller/reward_economy)经现役 `set_fx` 注入面扩一参收同一 ctx 引用(后续挂载是同对象内字段赋值,注入时序无感)。 + +**推导依据**: +- 「每战一次」唯一:ctx 持桶**引用**且 round 桶清零用**就地清空**,则每轮重建 ctx 毫无收益、徒增重挂面。「每轮重建则 round 桶免费清零」的备选不成立——它把 level/adventure 引用变成每轮重挂的高频面,换来的只是把一处 `.clear()` 挪进构造。 +- round 桶清零点**留在引擎 `dispatch` 特判内**(`effect_engine.gd:210-212` 现役挂点),由按名单清零泛化为 `ctx.round_bucket.clear()`:前缀分桶后 round 桶内键集≡现役名单集合,行为逐位等价。挂点不挪的依据=现役语义是「重置随事件发生」而非「随发射位点发生」——裸 `dispatch("round_start")` 路径(冒烟 `:6060`/`:1573` 先例)依赖此语义。⇒ **T4「三处清零点」定为:轮始一处(引擎特判泛化)+战斗 new/进关 new 两处免费(宿主 new 天然空桶)**。 +- 「类」而非裸 Dictionary:RunLedger 先例(审计 P1-4 收口)已把「函数签名上不可见的共享可变引用」换成签名可见的显式类;ctx 跨四类边界传递(编排器→引擎→三协同件),code-conventions §2.2 跨层标识符语义成文 ⇒ 显式类。S9 类型闸下裸 `Dictionary` 参数只有 `Dictionary[Variant, Variant]` 注解可走且键名无校验,类字段即自文档。 +- 熵增闸不触:`tools/repo_structure_audit.py` 六查只巡顶层目录/根文件/图像白名单/退役路径/design 子目录/art 内容,`game/core/` 内新增 .gd 不触任何一查(§11 N1 甲「①熵增闸要求新类同批修订白名单」的顾虑经实查不成立于 core 内新文件——该顾虑不再构成「不新建类」的理由,但 N1 定值照旧:桶宿主挂编排器、ctx 只是参数面引用束,两者不冲突)。 +- 字段名取 `round_bucket` 族:`round` 会遮蔽 GDScript 内建函数 `round()`。 + +#### 7.10.2 A2——容器类型与测试接口定值 + +**定值**:四桶统一 `Dictionary[Variant, Variant]`(int 值;S9 现行口径「账本类字典标注 `Dictionary[Variant, Variant]` 即合格」,元素类型精化不入硬纪律)。测试读写接口=**宿主公开字段直读直写**:round/battle 桶=`BattleOrchestrator` 两个公开成员(`fx_counters_round`/`fx_counters_battle`,ctx 构造时挂引用,与 ctx 内字段同物异名同字典);level 桶=`LevelRunner.level_counters` 公开成员;adventure 桶=`RunLedger.adventure_counters`(现役字段名不动,§7.9 #3)。 + +**推导依据**:test-conventions §5.4 调试注入=测试代码直调核心层写口(直改计数器/存档域)——公开字段直写是该条现行承载形态(冒烟 `:6124` `ar.run_ledger.adventure_counters = {...}`、V16 `:114` 同款在役先例);「公开字段 vs getter vs 方法」三候选中后两者无任何约束要求,最小改动取字段。 + +#### 7.10.3 A3——前缀校验双落点定值(E2 并入 F1) + +**定值**:前缀合法性校验落两处、共用同一静态判定函数——①`validate_trigger_row`(.tres 行路径):`do` 含 `counter_id` 时校前缀(无前缀=合法 battle;`round_`/`lvl_`/`adv_` 合法;`meta_` 及其余未知前缀→errs 追加违例,加载致命);②`_push_trigger`(树合成行路径):同规则 assert,写错即调试期致命。**E2 撤销**:「同 counter_id 跨前缀重复」在新形态下无指称——前缀即归属,同一字符串必落同一桶,「跨桶同名」不可构造;「同一语义计数器两行写了两套 id」(改名漏改一类)不可机器判定(两串本不同),其防线归 F1:静态扫描 S 段新增**带引号旧 id 字面零命中**规则(`"tree_sense_sharp_used"`/`"tree_sense_guard_used"`/`"twin_digs"`/`"instinct_atk"`——带引号匹配不误伤 `"lvl_tree_sense_sharp_used"`/`"adv_twin_digs"`/`"round_instinct_atk"` 等新名)。 + +**推导依据**:完成定义 5「写错即加载致命」对 .tres 行经 errs→load_tables 拒绝通道成立(feat_table.gd:44/treasure_item_table.gd:104 调用面零改、校验在函数内部生效);树合成行不经 .tres 校验、只在 rebuild 期经 `_push_trigger` 生成(`effect_engine.gd:142-158`),漏②=A3 原判「与完成定义 5 直接冲突」成立。负面套件载体=`reward_dangling_treasure_test.gd` 同构(copy_tables 夹具注入坏行→load_tables 拒→expect 1+negative:true,run_all.gd manifest 登记)。 + +#### 7.10.4 A4/U2——`_battle_over` 不再需要孤立调用(阻塞消解) + +**定值**:无任何验收点依赖 `_battle_over` 孤立可达。原判的隐含前提是「adventure 跨战持久仍靠战末导出、断言须在战末时点取值」;新形态下导出动作整体消失,写入经 ctx 就地落共享桶,A1 断言改为「第 1战中经真实事件写入共享桶 → 第 2 战 `begin_battle`(同 ledger)经引擎读/返还判定验值」(V25 两编排器同构)——跨战持久由结构保证(同一字典引用),战末时点无待测行为。 + +#### 7.10.5 A5/U4——`round_start` 发射入口已定位 + +**定值**:真实发射点=`battle_orchestrator.gd:97 _emit_round_start()`(调用点 `:425` 首轮/`:1077` 续轮)。D1 载体=冒烟直呼 `orch._emit_round_start()`——即真实发射函数本身,窄于完整轮切换;跨下划线直呼先例在役(V25 `_judge_seal`、冒烟 `:6125` `_reset_tree_limited_counters`)。 + +#### 7.10.6 A6——施加面补列与行号订正 + +**定值**:`action_economy.gd:103-108`(dig_paid 的 counter_spend 订阅施加=加收对价+积计数)列入 §3.2 迁移面——该分支的「读-判-写」序列逐字保留,仅写口改静态函数。行号订正(2026-10-20 实查):action_economy 三写口实为 `:108/:111/:169`(草案 :110/:113/:173 系漂移);orchestrator counter_spend 实为 `:714`(草案 :717)。 + +#### 7.10.7 A7——改名传播面清点完成 + +**定值**:呈现层零引用(`game/presentation/` 全目录检索 counter_id 与 16 枚 id 字面零命中)——呈现面不入改名传播。传播面收窄为三面:`feats.tres` 行(id 改名 4 处+`domain`/`reset_at` 键删除约 12 行)、`effect_engine.gd` 合成行字面与 DO_KEYS 常量、测试断言字符串(§5 表)。T6 估时 0.25d 维持。 + +#### 7.10.8 写口形态定值(§3.2 修订——静态纯函数) + +**定值**:`counter_add`/`counter_spend` **实例方法删除**,改**静态纯函数** `static func counter_add(ctx, counter_id, value, set_mode=false)`/`static func counter_spend(ctx, counter_id, value) -> bool`,与 `validate_trigger_row`/`bucket_of` 同类(零实例状态,完成定义 1 不受触)。桶解析单点=`static func bucket_of(ctx, counter_id) -> Dictionary`(按前缀返回目标桶字典,前缀规则唯一出处)。 + +**推导依据**:§3.2 原稿「写由发射点落到传入计数器容器」的直写形态作废——7 个施加点各自内联桶解析+算术会把「spend 阈值闸」「set_mode」语义复制七份,同种子复放对语义单点的要求不容许;用户 N2 裁定的红线是「引擎不持有状态」,静态函数无实例态不触红线;调用形与现役一致(`_fx.counter_add(...)` → `EffectEngine.counter_add(ctx, ...)`)使 7 个施加点 diff 收窄为加一参。 + +#### 7.10.9 A8——保险双账语义厘清(不改面契约) + +**定值**:`_perfect_forgiven`(编排器自有账)与 `insurance_used`(battle 桶)**非镜像、系同点双记各司其职**:同一标错事件同一分支内各写一次(`grant_segment.gd:314` forgiven 加一/`:315` `_apply_counter_hit` 落桶)——前者供判定段「两账相减」裁定(`perfect_sweep_earned`),后者供引擎 when `lt 1` 限次闸;无重复写风险(闸序:dispatch 仅在 `insurance_used<1` 时返回豁免命中,随后两写同分支各一次)。本批零改动(N6 已定留编排器);卡内立「不改面」条目:两账同点双记关系迁移后必须原样保持(V25 对两者都断言,迁移保绿即证)。 + +#### 7.10.10 U1——A1 注入口径重写(真实事件面) + +**定值**:A1 注入走真实 `dig_paid` 路径——`orch.action_economy.request_dig(0, false)`(核心写口直调,test-conventions §5.4 口径)。可行性实证:双管镐 counter_add 行**无 when**(`feats.tres:26-32`),一次 request_dig 即 `adv_twin_digs` 加一。断言链=第 1 战挖一次(无返还——mod_eq 预评估读 0;桶值 1)→ 第 2 战(同 ledger 起 orch2)挖一次(预评估读持久值 1 判「第 2 次」→ 返还成立+桶值 2)——**返还判定证明第 2 战引擎经 ctx 读到了第 1 战的持久值**,读写两路径均走真实事件面。前置核过:首轮 `notify_round_start` 后 Active 相位、基础 AP 覆盖 dig 基础价,两连挖无经济障碍。 + +#### 7.10.11 U3——level 桶测试接口 + +**定值**:`LevelRunner.level_counters` 公开类型化成员(`Dictionary[Variant, Variant]`),`_start_battle` enc 增 `"level_counters"` 键下传(`level_runner.gd:466-477` 照抄 `"ledger"` 行位置),编排器 begin_battle 挂入 ctx。B1/B2 载体=冒烟 LevelRunner 直构(现役先例 `:6130` `level_runner.gd.new(_db, rng)` 在役)+公开字段直读直写(§7.10.2 同口径)。 + +#### 7.10.12 U5——G1 已知差异面(分组判读制) + +**定值**:RUNSUM 字段面清点完毕(`adventure_monte_carlo.gd:114-149` 共 27 字段)。行为变更只触 adventure 桶四枚中的三枚——**pain_layers 迁 battle 对全新开局零位移**(缺陷态下本就不跨战〔§7.8 自锁〕,battle 桶同样不跨战,前后皆无跨战携带);受影响枚=`adv_twin_digs`(返还得真跨战累积)与 `lvl_tree_sense_*`(每战限 2 → 每关限 2,§7.7 削弱定性)。同种子复放比对判读分两组: + +| 组 | 判定条件(由 RUNSUM 自身字段可判) | 判据 | +|---|---|---| +| 未受影响局 | feat_mode=off,或装备集不含双管镐与 sense 两组 | **全字段逐位一致**(结构迁移对未触路径必须透明——零漂移回归面) | +| 受影响局 | 保守超集:装备集含受影响件且(`mine_hits>0` 或 `seal_miss>0` 或付费挖格≥2) | 输入面字段恒等(policy/seed/atk_pct/hp_pct/route/attune/equipped/feat_mode);其余字段允许 RNG 级联位移(轮数一变后续流消费全移);统计面判据一条:**`levels_cleared` 分布不得上行**(削弱批清关率上移即意外,§7.7 定性) | + +复验规模:锚内 normal 档前 20 种子(81000–81019,配套纪律③子集 ≤20;normal 单局 1.21s,20 局约 25 秒)。逐位差异明细随实现报告记档。 + +#### 7.10.13 U6——`mine_hit` 构造路径 + +**定值**:`mine_hit` 无单事件判定函数(发射内联在授予段 run 的 mine 分支 `grant_segment.gd:92`),B2 构造=**两编排器共享 level 桶+引擎 dispatch 直驱**:`enc["level_counters"]` 传同一字典引用(V25 两编排器同构+挂载路径同测),各自 `_fx.dispatch(各自ctx, "mine_hit", {})`——sense 行 when 只读 counter fact、零 payload 依赖,裸 dispatch 即完整真实判定路径。`_facts_reveals` 捏造路径**不取**:mine 分支连带 `_grant_routed` 极性行路由,捏造快照须伪造 cell_type 行集,脆且越过被测面。第 2 战 dispatch 返回空=「无减伤/无返还」断言本体(lt 2 闸关)。 + +#### 7.10.14 B6——dig_combo 死读数删除 + +**定值**:本批删除,范围=死读数+combo 加成分支+`combo_cap` 参数管线一个整体(`battle_orchestrator.gd:635-647` 读数与分支、grant_segment.gd `:54/:61/:62` 收集与实参、`_feat_yield_adjust` 第五参)。实证:全仓无任何数据行声明 `dig_combo`(feats.tres/treasure_items.tres/树合成行三源零命中);`combo_cap>0` 需 yield_mult 行声明 cap>0——feats.tres 唯一 `"cap"` 行属石肤 ac_bonus(`:576-583`),yield_mult 带 cap 行零个 ⇒ `combo_val` 恒 0 且 `combo_cap` 恒 ≤0,分支恒短路,**删除零行为差**(同种子复放/V25/全部回归零影响)。删除依据:该位点(`_feat_yield_adjust` 读数行)本批必触(counter 签名改 ctx),迁移一个已证死路与重构立意相悖;`settle_segments_test.gd:32-33` 以 dig_combo 为样本 id 同批换活 id。**原文「需你一句确认」按约束推导闭合为定值,可否决——否决的代价=死路代码以新签名迁入新机制。** + +#### 7.10.15 B4——旧档验收补条 + +**定值**:§4.1 增 **H1(旧档断点加载不崩)**:旧断点 `adventure_counters` 含旧键(`tree_sense_sharp_used`=2 等)→ `resume_adventure` 受理零崩溃、旧键留桶成死键(无迁移——2026-10-18 代码术语刷新批先例)。载体=`feat_vouchers_test.gd` V16 旧档同构先例(`:124-127` bp_legacy 注入旧键续玩受理)。 + +#### 7.10.16 B1/B2/B3/B5——登记与归属 + +- **B1**:新增 06 条目「效果引擎系统无状态原则缺架构文档条目」(文档轨·待文档设计)——后续文档批补 architecture.md「架构原则」条目;实现批报告仍作反哺点。§10.3 所引 `design/registry/` 两 yaml 已随 2026-10-19 用户裁注销删除,该节对 yaml 的引用失义、以本条与 §7.9 #1 为准。 +- **B2**:06「计数器寿命域未统一」条目本轮改写(现状换代=无状态化重构方向、状态推进「文档设计已闭合+待写卡」)——后人从 06 进入即见新方向。 +- **B3**:天赋树锋/守重新定价=独立议题,不登记不进批(现值非缺陷非待办;若日后提起再立条目)。 +- **B5**:roadmap 当前位 stale 已呈报在案,归并行会话,不动。 + +--- + ## 8. 已作废的旧方向(防重走) 2026-10-19 前半场提出的「**寿命域统一口径**」方案(五档/四档/两档枚举、`domain` 键扩词表、`reset_at` 退役、D1–D9 裁决单)**整体作废**。作废理由:该方案的隐含前提是「引擎持有状态、需要一个字段说明它活多久」;改为分桶后,**寿命由宿主对象天然决定,不需要寿命字段**。 @@ -448,6 +550,8 @@ func counters_merge_export(exported): ### 10.1 行号订正汇总 +> 🔴 **2026-10-20 再漂移注记**:本表「实际」列的行号以提案复核时点为准;其后的 `c5200b6b`(禁写变更记录批·代码注释清偿)已使本文件部分行号再度漂移(如引擎成员块现役 :83-88、`counters_seed` :255、`EffectEngine.new` :271、树合成行 :136-155)。行号时效以需求卡片 `reports/需求卡片-效果引擎无状态化批-2026-10-20.md`(开工前实查)为准,本节数字仅作沿革参考。 + | 草案初版写法 | 实际 | 说明 | |---|---|---| | `effect_engine.gd` :83/84/85/86/88 | :86/87/88/89/91 | 整体 +3——迭代 31 卡② 在 `:42-44` 插入 `forgive_seal_miss` 三行注释 | diff --git a/design/research/提案-武器锻造系统-2026-10-07.md b/design/research/提案-武器锻造系统-2026-10-07.md index bd56cb6a..54174688 100644 --- a/design/research/提案-武器锻造系统-2026-10-07.md +++ b/design/research/提案-武器锻造系统-2026-10-07.md @@ -210,7 +210,7 @@ AC(护甲等级)单值现役生效(`hero.tres:9`=10;敌方攻击掷点 - **等级上限**:每件武器/每型甲各自封顶(provisional 锚点 = 5 级量级)。量纲理由:满级特效要"值得等",级数太多会稀释解锁节奏(与 F6 冲突)。终值归 M4。 - **定价结构**:沿用现役几何递增——每级价格 = 基础价 × 150%^(已购级数)(现役参数:单次 20 钥石、每级涨 150%,`meta.tres:11-24`;《元进度》定价曲线几何递增是已拍板条款)。甲型解锁 = 一次性解锁价(量纲 ≈ 中段几级锻造的花费,provisional)。全部终值归 M4。 -- **货币裁点(v1.1 重组——现役营地一切消费货币=钥石非金币,事实依据见文末修订记录)**: +- **货币裁点(v1.1 重组——现役营地一切消费货币=钥石非金币,事实依据见本文文末审查回写段)**: - **甲=纯钥石(推荐)**:与现役属性锻造/天赋树(2026-10-07 用户裁甲后树全钥石单币)/同调刷新升级同币同柜——原案语义是"攻击力提升改造",即同一笔钱换个花法,语义保真;零新经济面;Boss 击杀掉落产出与几何递增定价配套现成(`meta.tres:26-38`)。 - **乙=引入局外持久金币余额域**(金币入存档、可付营地消费):**淘汰依据**:须推翻两币分工拍板条款(《元进度》:"GP(金币)= 冒险内一次性属性提升货币——局内清零、不入存档……两币永不互兑",元进度.md:55)+ 新存档域 + 金币出口入账规则一套;与"金币无法带出冒险"(2026-10-07 用户判定)直接相逆。 - **丙=第三货币锻造币**(独立于钥石/金币的专用锻造币):**淘汰依据**:无产出渠道凭空造经济——产出渠道、兑换规则、存档域、呈现位全套新建,实装量三案最大。 @@ -311,7 +311,3 @@ AC(护甲等级)单值现役生效(`hero.tres:9`=10;敌方攻击掷点 每个裁点独立拍板,互不绑死(推荐列只是提案立场,不是打包方案)。裁决结果落 06-待办清单「武器锻造系统」专条与路线图卡③行;裁决通过后实装批另行立项,以本提案+裁决记录为需求卡片输入。 --- - -## 修订记录 - -- **v1.1(2026-10-07 盘问轮 S2 纠偏)——货币前提全案订正**。事实修正依据:现役营地一切消费货币=钥石(buy_forge→spend_keystone `meta_progression.gd:59`;树 tree_buy/tree_buy_fork 与刷新升级 buy_attune_refresh 同走 spend_keystone 钥石消费口);GP(显示名金币)=局内一次性货币,开局清零(`adventure_runner.gd:116`)、不入存档(save schema 无 gp 域),两币永不互兑(《元进度》两币分工拍板条款,元进度.md:55);金币无法支付营地柜台账(用户判定 2026-10-07)。错误根源=meta_tree.tres 脊柱行 gp 声明 + meta.tres 表尾陈旧注释「与 GP 商店同族」误导成文。订正面:〇节原案一注记、F1 事实行、裁点 4b 乙引文、裁点 5a 丙论据、裁点 5b 货币裁点整节重组(甲=纯钥石/乙=局外金币余额域/丙=第三货币锻造币)、裁点 5c 前提换钥石(甲=纯钥石零材料)、第九节定价行、第十节汇总表 5b-1/5c 行。配套实况:天赋树货币甲案同日修复(树全钥石单币落定,T8「GP 余额域缺位」双币骨架披露销账)。 diff --git a/design/qa/测试审计-单测与验收门禁标准-2026-10-15.md b/design/research/测试审计-单测与验收门禁标准-2026-10-15.md similarity index 93% rename from design/qa/测试审计-单测与验收门禁标准-2026-10-15.md rename to design/research/测试审计-单测与验收门禁标准-2026-10-15.md index 118b839b..e247f126 100644 --- a/design/qa/测试审计-单测与验收门禁标准-2026-10-15.md +++ b/design/research/测试审计-单测与验收门禁标准-2026-10-15.md @@ -342,11 +342,3 @@ active.md 只记「render_gate golden 0.00%(登记即结未重制)」—— 这份审计**找方向是准的**(术语倒挂、三处判定缺陷、L2 零承载,三条都是代码级确凿),但**证据硬度不够**——它是"读出来的结论",不是"跑出来的结论"。扭转方案的第一步必须是**先把 C 类结论全部坐实成 A 类**,否则后面所有改动都建立在我自己的推断上。 --- - -## 版本历史 - -- v1.0(2026-10-15):审计会话首版。范围 = 单测覆盖 + 验收门禁标准;未跑测,结论全出静态审计;缺口按 A–E 五级分档,§七为标准建议(待裁),§八列未决项。 -- v1.1(2026-10-15 同日,应「报告有什么可优化」问询):①§〇 加证据等级列,全文 ⚠ 标注 C 类结论;②补 §5.2b CI 注释漂移、§5.2c example_test 占位、§5.4 游离测量脚本台账、§5.5 golden 基线时效、§5.6 扫描域半数未落地;③§六 增 A-5 与 F 级(15/16/17);④新增 §九 自评十条 + 证据等级表。仍未跑测。 -- v1.2(2026-10-15 同日,应「CI 现在有用吗」问询):①§〇 加「CI 实态」行;②新增 §5.0(无远端、CI 从未执行、本地闸五件洞况表);③§一/§5.1 修正「smoke_all 不被执行」的错误表述(它本就在本地轻闸首项);④§九 自评补第 11 条(最大视角错误=未核实 CI 通不通电)。 -- v1.3(2026-10-15 同日,**用户裁「CI 没有用、后面也不用、不留死配置」后**):①`.github/workflows/` 全数删除(分支 `ci-removal-20261015`),全文 CI 表述改注为「已删除的历史状态」;②§5.3「本地重闸 vs CI」对比表作废、改为「本地闸是唯一门禁」;③§六 A-4/A-5 中 CI 项作废(保留 example_test 一件);④§七/§八 中 CI job 改名、Q2 作废;⑤架构事实源纪律:历史决策文档只作沿革引用、不回改;现行事实以 architecture.md 为准。 -- v1.4(2026-10-15 同日,用户裁「决策记录归 git commit log、不另存决策文档」后):七份历史决策文件已删(沿革归 git 历史),全文引用清除——原引用处改指 `design/dev/architecture/architecture.md`「测试与质量域」节;§5.6/Q1/时长预算等表述随清;结论本体零改动。 diff --git a/design/art/美术审计-canvas转HTML-2026-10-14.html b/design/research/美术审计-canvas转HTML-2026-10-14.html similarity index 98% rename from design/art/美术审计-canvas转HTML-2026-10-14.html rename to design/research/美术审计-canvas转HTML-2026-10-14.html index 118a5fd1..a1b9efaf 100644 --- a/design/art/美术审计-canvas转HTML-2026-10-14.html +++ b/design/research/美术审计-canvas转HTML-2026-10-14.html @@ -4,6 +4,7 @@ 视觉与美术审计 - 2026-10-14 +