diff --git a/design/gdd/01-核心循环.md b/design/gdd/01-核心循环.md index ec58cdaf..3d5095ca 100644 --- a/design/gdd/01-核心循环.md +++ b/design/gdd/01-核心循环.md @@ -6,7 +6,7 @@ 每场战斗都在一张雷图上打。战斗本身不用手操——你能做的全部决策,都在它的"准备期"里: -1. 开局一张新雷图,每轮发给你若干行动点。 +1. 开局一张新雷图,每轮发给你行动点,每轮预算见[行动经济](systems/排雷循环/行动经济.md)。 2. 用行动点做排雷决策:挖开安全格,拿增益和道具;控制(插旗)巢穴,削弱里面的怪物;点错惊动巢穴,怪物反而变强。 3. 行动点用尽——或者你主动停手——这一轮结束,轮末自动结算:你这一轮扫雷攒下的因,逐行兑现成战斗的果。你拿的增益打了出去,你控制的巢穴变成怪物的虚弱,你惊动的巢穴变成怪物的警觉(护甲变硬、伤害账轮末才落)。 4. 敌人没死光、你还活着,就进下一轮,同一张图接着挖;图开完了,发清图奖励,换一张新图接着打。 @@ -15,7 +15,7 @@ ### 数值语言 -- 游戏内伤害与成长数值一律**整数加减**(小整数加法核——模板 C 骨架 + 模板 A 成长语言):克制修正、奖励、商店与永久强化的属性提升都走"+1/−1 点"式整数;数字小而可读是设计价值,不是待放大的占位。 +- 游戏内伤害与成长数值一律**整数加减**:克制修正、奖励、商店与永久强化的属性提升都走"+1/−1 点"式整数;数字小而可读是设计价值,不是待放大的占位。 - **百分比仅保留三处既有粗档修正**(增益池乘区、护甲等级掷点折扣档、暴击倍率)与开发侧测量工具(难度杠杆扫描、通关率带平移);此后新增数值系统默认整数加法,引入百分比须显式修订本条款。 - 全局向下取整(round_direction = floor)不变;整数刻度下的档位粒度以"1 点"为单位设计,避免名义百分比与实际取整值脱钩。 @@ -76,12 +76,12 @@ | 节点级 | 一次停点(进入→离开,不按节点类型分档) | 敌方生命、增益状态容器、蓄力层、商店付费刷新计数(每停点清零) | | 回合级 | 一轮之内 | 当前 AP 池(每轮灌满、归零收轮)、结算动作发生的时点 | -节点级前提:节点链是 DAG——只向前走、无回头路、无环,节点只进一次,故「一次停点」=「这个节点的寿命」(对标哈迪斯/以撒的房间:多数房间有战斗,少数没有)。回合级**不存在跨轮效果**:跨轮的都是写入战斗级对象的一次性结算——buff 活在增益状态容器(容器寿命=一场战斗=节点级),duration 是 buff 自身的属性;下轮 AP 写入战斗级 AP 队列([行动经济](systems/排雷循环/行动经济.md))。 +节点级前提:节点链是有向无环图(DAG)——只向前走、无回头路、无环,节点只进一次,故「一次停点」=「这个节点的寿命」(参照哈迪斯/以撒的房间:多数房间有战斗,少数没有)。回合级**不存在跨轮效果**:跨轮的都是写入战斗级对象的一次性结算——增益活在增益状态容器(容器寿命=一场战斗=节点级),duration 是增益自身的属性;下轮 AP 写入战斗级 AP 队列([行动经济](systems/排雷循环/行动经济.md))。 ### 结算模型:一次性结算与持续态 - **一次性结算**:兑付动作瞬时完成,只有目标账本继续存在。登记两点=结算发生时点、写入哪本账(账是哪个档)。跨层关系是「转换」不是「横跨」:奇物高价值物→GP、格面资源→GP,都是一次性转换写入长寿命的账(类A→类C、类B→类C)。 -- **持续态**:效果自己有一段寿命(buff、秘宝被动、专长持有),标寿命档位。 +- **持续态**:效果自己有一段寿命(增益、秘宝被动、专长持有),标寿命档位。 - 五档轴量三样:持续态的寿命、一次性结算的时点、结算目标的档位。 ### 结算目标分两类:总线与抽屉 @@ -137,7 +137,7 @@ | 奇物 | 档位越高,出现概率越低(配额与权重) | 令牌池配额;专长 rarity 接 Boss 三选一按档配比/加权(约束见下) | | 地图战斗资源 | 档位=概率位 + 保底上限(T1-T4 四档池) | [地图战斗资源](systems/战斗循环/地图战斗资源.md)「四档概率结构与保底」节 | -**获取概率提升**是元进度/营地的合法提升轴(可提升=奇物高档位出现率/秘宝解锁进度/地图 T3/T4 权重),但**不动保底**——保底是承诺不是概率,任何概率件不得改变 T3「每板必有回复」类承诺。 +**获取概率提升**是元进度/营地的合法提升轴(可提升=奇物高档位出现率/秘宝解锁进度/地图 T3/T4 权重),但**不动保底**——保底是承诺不是概率,禁止任何概率件改变 T3「每板必有回复」类承诺。 **专长 rarity 语义约束**:Boss 三选一候选按档配比或加权抽取,使罕见度对出现率生效(字段双脱钩修复——此前 rarity 不影响抽选也不稳代表幅度);具体配比归调参批。 @@ -149,8 +149,9 @@ | 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.7 | 2026-10-10 | 分界尺措辞精确化(2026-10-10 用户澄清):秘宝行「不出裸属性值」精确为「不出角色战斗属性值」+操作包络正向列举(经济与操作参数不在此限)——「属性值」定义行(生命/护甲/攻击/伤害)不变;机制零改动 | | 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 文体豁免) | diff --git a/design/gdd/02-系统清单.md b/design/gdd/02-系统清单.md index ff99004b..65810c32 100644 --- a/design/gdd/02-系统清单.md +++ b/design/gdd/02-系统清单.md @@ -15,7 +15,7 @@ | `术语表.md` | 全库专用术语的唯一对照表——危险格/安全格/同调位/RAP/GP/真视等定义+退役词对照(2026-10-11 建立,v1.0) | | `06-待办清单.md` | 全项目待办事项的唯一登记处;各系统文档的「待办」节只留指路存根 | | `07-体验验证清单.md` | 需要真人试玩观测的验证项登记处(与 06 分工:06 是"要拍板的事",本篇是"要玩过才知道的事");每条注明结论回流路径 | -| `08-Alpha版本标准.md` | Alpha 版本包含哪些东西的清单——里程碑 M3 的完成标准;只列条目不写内容,定义一律指路各权威文档(**已定稿 v1.0**,2026-10-13) | +| `08-Alpha版本标准.md` | Alpha 版本包含哪些东西的清单——里程碑 M3 的完成标准;只列条目不写内容,定义一律指路各权威文档(**已定稿 v1.4**,2026-10-13) | ## systems/ 五个循环 @@ -43,7 +43,7 @@ | 文件 | 一句话概要 | 状态 | |---|---|---| | `关卡节点地图.md` | 单关内的节点图选路与推进 | 已定稿 | -| `关卡节点图生成.md` | 单关节点图的逐局随机来源:图模板池、抽签与实例化(实施排队统一流裁决后) | 设计草案·拍板点全落文 | +| `关卡节点图生成.md` | 单关节点图的逐局随机来源:图模板池、抽签与实例化(实施排队统一流裁决后) | 设计草案·拍板点全部已写入 | | `冒险结构.md` | 整局冒险的关卡序列、失败与大奖励 | 已定稿·自旧体系迁移 | | `难度曲线与Boss.md` | 难度曲线、期望值带与 Boss 设计 | 已定稿·自旧体系迁移 | | `奇物.md` | 一次冒险内各渠道给予玩家的增益总称(专长=触发器句式的机制件 / 属性值提升 / 资源=转换源凭证 × 三条渠道:奖励节点 / 商店 / 关底 Boss 击败) | 已实现·迭代 20 专长实装批落地(29 行=基础 27+迁入 2,流派机制退役;池结构案D 四级 104,通关兑付=专长三选一按档配比加权) | @@ -73,7 +73,7 @@ | 文件 | 一句话概要 | 状态 | |---|---|---| -| `battle.md` | 战斗屏 UX spec:三区布局、信息归属、交互映射、动效、上游义务对照 | Complete·随批修订 | +| `battle.md` | 战斗屏 UX spec:三区布局、信息归属、交互映射、动效、上游义务对照 | Complete·顺带修订 | | `interaction-patterns.md` | 交互 pattern 库:核心 8 成文 + 目录 20 条 | Complete | | `level-clear.md` | 关卡结算屏 UX spec:大奖励三件套兑付与钥石/GP 结算呈现 | 义务锁定版·视觉终稿后置 | | `level-map.md` | 关卡画面 UX spec:选路枢纽独立屏三停点布局、GP 常驻徽章、底栏状态栏 | 定稿版·独立屏+视觉终稿已冻结 | @@ -156,3 +156,4 @@ | 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 篇现行定稿版本) | diff --git a/design/gdd/06-待办清单.md b/design/gdd/06-待办清单.md index 89ff9899..8eb43ec6 100644 --- a/design/gdd/06-待办清单.md +++ b/design/gdd/06-待办清单.md @@ -1,6 +1,6 @@ # 06-待办清单 -本清单是全项目待办事项的**唯一登记处**:各系统文档不再自建「待办」条目节,只留一行指路存根;新增待办事项一律直接登记本清单。条目按四个循环分组,组内按系统分节;每条事项一个四级标题,其下用粗体属性名成段——**现状**(现状与失义原因,自各系统文档原样搬运、措辞不改;跨文档重复条目合并为一条,登记在建议归属主责方名下,其余来源在现状中注明出处;相关但不同面的条目各自保留,现状末尾互相指认;搬运时仅将原文中的「本文 / 本系统」替换为对应系统名,并把相对链接改写为本文件位置可用的路径)、**归属**、**状态**。事项解决后**从本清单移除**(2026-09-18 用户拍板改口径,原"改状态留痕"废止):去向与依据登记当批台账与 active.md 快照,git 历史即留痕。 +本清单是全项目待办事项的**唯一登记处**:各系统文档不再自建「待办」条目节,只留一行指路存根;新增待办事项一律直接登记本清单。条目按四个循环分组,组内按系统分节;每条事项一个四级标题,其下用粗体属性名成段——**现状**(现状与失义原因,自各系统文档原样搬运、措辞不改;跨文档重复条目合并为一条,登记在建议归属主责方名下,其余来源在现状中注明出处;相关但不同面的条目各自保留,现状末尾互相指认;搬运时仅将原文中的「本文 / 本系统」替换为对应系统名,并把相对链接改写为本文件位置可用的路径)、**归属**、**状态**。事项解决后**从本清单移除**(2026-09-18 用户拍板改口径,原"改状态留痕"废止):去向与依据登记当批状态记录与 active.md 快照,git 历史即留痕。 #### UI 按钮状态矩阵缺档——悬停没有反馈、危险钮按下没有反馈、键盘焦点全站空白(2026-10-13 登记,UI 美化三层诊断 · 第一层) @@ -40,7 +40,7 @@ **归属**:美术线(战斗一屏样张的验收标准归 [战斗表现](systems/战斗循环/战斗表现.md) 与 [美术圣经](../art/art-bible.md) §5.1 共裁) -**状态**:待办(**Alpha 阶段需完成**)——**意义提示**:按圣经条款,占位态是"不得跨里程碑"的,本条只要不做,界面美术就始终处于未定稿状态,上面所有呈现层改动做完也缺少验收依据。 +**状态**:待办(**Alpha 阶段需完成**)——**意义提示**:按圣经条款,占位态禁止跨里程碑,本条只要不做,界面美术就始终处于未定稿状态,上面所有呈现层改动做完也缺少验收依据。 #### UI 氛围层与九宫格切片观感修——光柱硬边与面板切片错位(2026-10-13 登记,UI 美化三层诊断 · 第三层) @@ -83,11 +83,11 @@ #### 旧行为 MC 行为锚全数作废——重锚归数值批(2026-10-06 登记) -**现状**:案C 地图伤害账殿后批(git 7ef18ac,台账 371)改变每轮结算行为序——授予段不再兑付任何伤害(伤害形态单据暂存至战斗段末,段内序=主角先手→逐敌还手→地图账),主角死亡短路语义随之换代(「授予段伤害致死短路先手」路径消失)。既有全部 MC 行为锚与对拍锚所锚行为已不存在,**全数作废**;新段内序断言已入冒烟闸。按 sim-data MC 缓存层规则(无数值调整禁重跑),重锚不在改动批执行。 +**现状**:案C 地图伤害账殿后批(git 7ef18ac,状态记录 371)改变每轮结算行为序——授予段不再兑付任何伤害(伤害形态单据暂存至战斗段末,段内序=主角先手→逐敌还手→地图账),主角死亡短路语义随之换代(「授予段伤害致死短路先手」路径消失)。既有全部 MC 行为锚与对拍锚所锚行为已不存在,**全数作废**;新段内序断言已入冒烟闸。按 sim-data MC 缓存层规则(无数值调整禁重跑),重锚不在改动批执行。 **归属**:M-4 数值批(用户 2026-10-06 确认此为影响数值难度的重要变量)。 -**状态**:待数值批触发时重采;重锚前一切 MC 旧读数只作历史存档,不得与新行为对拍。——**已增补进 Alpha 收官 M4 数值批〔未排期,2026-10-07 用户令移出迭代 18 暂不启动〕〔2026-10-06 用户令自迭代 17 卡②移出——不影响 17 在飞开发〕需求卡片 v1.1(2026-10-06:T0 推算稿第五件+T6 四带复算按案C 新行为首采;design/research/需求卡片-M4数值批-2026-10-05.md)** +**状态**:待数值批触发时重采;重锚前一切 MC 旧读数只作历史存档,禁止与新行为逐项比对。——**已增补进 Alpha 收官 M4 数值批〔未排期,2026-10-07 用户令移出迭代 18 暂不启动〕〔2026-10-06 用户令自迭代 17 卡②移出——不影响 17 在飞开发〕需求卡片 v1.1(2026-10-06:T0 推算稿第五件+T6 四带复算按案C 新行为首采;design/research/需求卡片-M4数值批-2026-10-05.md)** #### 双层 BD 延期与备选内容总登记(2026-10-03 立项——需求卡片退役保险) @@ -317,15 +317,15 @@ **现状**:对敌效果现行一律全体存活敌人共享一份层数;将来若要"只削弱其中一个",需要给实例加目标寻址字段——扩展位已预留,首个单体效果上线时补列,并随之裁决归集与呈现语义 -**归属**:增益状态(首个单体效果上线时随批) +**归属**:增益状态(首个单体效果上线时顺带) **状态**:待办 #### 空刷新的可见性 -**现状**:刷新类策略在剩余次数已满时再授予是合法空操作(返回成功、无任何变化),与"溢出不静默吞"的诚实原则存在张力;MVP 无刷新类内容行,首批刷新行上线时随批裁决 +**现状**:刷新类策略在剩余次数已满时再授予是合法空操作(返回成功、无任何变化),与"溢出不静默吞"的诚实原则存在张力;MVP 无刷新类内容行,首批刷新行上线时顺带裁决 -**归属**:增益状态(首批刷新行上线时随批) +**归属**:增益状态(首批刷新行上线时顺带) **状态**:待办 @@ -337,7 +337,7 @@ - 排雷循环:[行动经济](systems/排雷循环/行动经济.md)——经济契约对账以资源行值为原材料,类型频次构成随配比漂移,对账窗口须按配比包络复算;[棋盘生成](systems/排雷循环/棋盘生成.md)——生成管线零改动(资源身份摇号不在其域),board_biome 词表定稿是关卡特殊资源的前置;[排雷玩法](systems/排雷循环/排雷玩法.md)——挖掘/标旗动作决定极性、承载配比的风险轴,机制零改动;[秘宝](systems/跨局循环/秘宝.md)——相邻:预读类道具读取身份查询面,配比改变分布先验后「资源预读与推理的边界」读感联动,不做机制耦合。 - 战斗循环:[地图战斗资源](systems/战斗循环/地图战斗资源.md)——主战场:候选集合权重来源从纯表值扩为「表值 × 玩家覆盖」;基础配比是整体平移分布,「危险格与安全格同池」(同池同分布)语义不破,不动结构冻结;[战斗结算](systems/战斗循环/战斗结算.md)——唯一调用方:摇号入口需受理开局注入的权重覆盖,兑付编排零改动;[增益状态](systems/战斗循环/增益状态.md)——零改动(percent 行效果引用不变,配比只改触发频率不改状态语义);[敌人系统](systems/战斗循环/敌人系统.md)——间接:各关敌种构成是配比预测的对象,混编遭遇行集的走向影响配比博弈读数。 - 冒险循环:[元进度](systems/跨局循环/元进度.md)——配比能力的家:可用类型 / 预算点数 / 预设槽位走营地柜台解锁,配比预设 = 覆盖值通道的又一生产者;[冒险结构](systems/冒险循环/冒险结构.md)——冒险开始参数面扩容,配比覆盖域的字段语义待裁;[难度曲线与Boss](systems/冒险循环/难度曲线与Boss.md)——杠杆主权转移:设计者从「定权重」改为「定预算包络、玩家在包络内分配」,通关率验收带随配比漂移,切片与验收期必须锁默认权重;[关卡节点地图](systems/冒险循环/关卡节点地图.md)——关卡特殊资源与节点奖励(功能道具渠道)的分工须一次说清:特殊资源走图内格面池差异化,功能道具走节点奖励,两渠道不混。 -- 表现与支撑:[HUD 框架](systems/表现与支撑/HUD框架.md)——新增构筑界面(冒险前的配比设置面)与配比效果的局内可读呈现;[教学引导](systems/表现与支撑/教学引导.md)——新增「读敌配比」教学口径;[数据配置](systems/表现与支撑/数据配置.md)——配比预设存档域与预算参数表建账,registry 新条目;[存档序列化](systems/表现与支撑/存档序列化.md)——预设档契约域随批登记(与元进度存档四件同批)。 +- 表现与支撑:[HUD 框架](systems/表现与支撑/HUD框架.md)——新增构筑界面(冒险前的配比设置面)与配比效果的局内可读呈现;[教学引导](systems/表现与支撑/教学引导.md)——新增「读敌配比」教学口径;[数据配置](systems/表现与支撑/数据配置.md)——配比预设存档域与预算参数表建账,registry 新条目;[存档序列化](systems/表现与支撑/存档序列化.md)——预设档契约域顺带登记(与元进度存档四件同批)。 **依赖(本提案依赖谁)**:① 冒险开始参数面 + 覆盖值通道([元进度](systems/跨局循环/元进度.md) v1.0 已定稿口径,现成);② 八型候选集合与权重语义([地图战斗资源](systems/战斗循环/地图战斗资源.md) v0.14 现行结构);③ board_biome 词表定稿([棋盘生成](systems/排雷循环/棋盘生成.md),关卡特殊资源的前置);④ 数据配置表承载与存档域(预设持久化);⑤ 元进度解锁状态(可用配比容量)。 @@ -347,7 +347,7 @@ **前置**:① 验收批读数重测与真人试玩先跑——配比博弈的核心未知数(玩家配比是否收敛到唯一解、分布先验怎么被利用)只有真人数据能回答;② 当前批序列走完:本批审批 → 验收重测 → 曲线调参 → 秘宝内容批。〔原前置③「立项时与差异化批合并评估——同一冻结面一批做省一次修订流程」随差异化批否决退役(2026-10-04)——配比预设转独立立项评估〕 -**归属**:[地图战斗资源](systems/战斗循环/地图战斗资源.md)修订批(基础配比的权重覆盖语义 + GDD 修订)与[元进度](systems/跨局循环/元进度.md)(解锁容量与注入生产者)共裁;呈现面归[HUD 框架](systems/表现与支撑/HUD框架.md)与[教学引导](systems/表现与支撑/教学引导.md)随批。 +**归属**:[地图战斗资源](systems/战斗循环/地图战斗资源.md)修订批(基础配比的权重覆盖语义 + GDD 修订)与[元进度](systems/跨局循环/元进度.md)(解锁容量与注入生产者)共裁;呈现面归[HUD 框架](systems/表现与支撑/HUD框架.md)与[教学引导](systems/表现与支撑/教学引导.md)顺带。 **状态**:已裁待实施(2026-10-04 立项提案五拍板点全按推荐落定〔用户令「拍板点全部使用推荐」〕——①预算机制 = 组合制:总量挪点为骨架〔九型正向权重总和恒 77,拉高某型必以压低别型为代价,全押穿刺+魔法算术不可达〕+每型上下限包络+容量随营地解锁渐进〔三子裁随裁:gp 首发不可调〔包络 (2,2) 恒定〕/预设档位 3 套/下限 >0〕;②主权切分 = 设计者定包络与默认、玩家包络内分配,验收 = 默认分布锚〔现行四带权威读数不动〕+新增极端构筑护栏带;③容量柜台 = 奖励格图鉴承接〔随 A3 否决空置的柜台得正业〕;④注入语义 = 差值向量〔存相对默认偏移 ΣΔ=0,与偏运硬币同一摇号前权重合成层,关态逐位零扰动〕,集合操作保留在解锁层〔可调型集扩容〕作辅语义;⑤渠道边界 = 清图槽差异化先行 + 三句不混池口径〔板图分工/配比域封闭/格型无差——不按危险格安全格分的 A3 红线沿用〕。全案与淘汰依据 = design/research/提案-冒险前资源配比预设-2026-10-04.md §八备选全列 + §九裁决记录 + §十盘问轮四裁。盘问轮四裁随落(2026-10-04 全按推荐:合成序 = 表值→玩家配比差值→包络钳制→图级变异偏斜→同调硬币偏置〔包络只管玩家差值,提案 §6.3 原草图废止〕/图鉴柜台逐型商品/冒险开始锁档〔关间换档后置评估〕/包络宽度随容量分级放宽)。**已编入 roadmap 迭代 14 ⑥号卡(2026-10-04 用户令)**,需求卡片=design/research/需求卡片-冒险前资源配比预设批-2026-10-04.md(T0-T8≈6.0d 两段切分;开工门=②③号卡出口;零新拍板点,provisional 归出口追认)——序位在②③后(合成序扩参与包络数值锚依赖②判式换代与③变异投影,三者共用摇号投影点);包络数值 provisional 起步,待真人读数与②号新当量账双锚校准;需求卡片待起草(估时随需求卡片)。原「实施窗口 = Alpha」随编卡改迭代 14。原「与差异化批合并立项」随差异化批否决退役〔2026-10-04〕)。**挂起(2026-10-05 用户令)**:移出 roadmap 迭代 14(⑥号卡撤销)——暂不做,本条目在 06 保留为挂起待办;八项裁决与需求卡片全部冻结保留(需求卡片=design/research/需求卡片-冒险前资源配比预设批-2026-10-04.md,文件头已挂冻结横幅);原开工门「②③号卡出口」随挂起冻结——重启须用户另行发令,届时若②判式换代与③全局变异已合并进 master 则开工门自然解(合成序与包络数值锚仍依赖两者的摇号投影点) @@ -355,7 +355,7 @@ **现状**:道具三层审查的换算发现——小 GP 袋 20 ≈ 商店两三次首购(首购基价 4-5、A 链爬升前)≈ +2~4 点属性,而小攻击件只值 +1——「拿钱」在三选一面里经常比「拿数值」划算,且 GP 袋是池内最大户(23/98 张)进一步放大倾向。用户判「太离谱」。复查范围 = GP 袋面值(20/50)× 商店基价(4/4/4/5)× 价格曲线(A=1.8 / b=1.1)× 战斗 GP 掉落(普通 3 / 精英 5 / Boss 8,关级加值 0/1/2)四处联动;目标 = 钱与属性件的换算效率回到设计意图(拿钱 vs 拿数值的取舍成立;GP 袋最大户地位要么有理由要么让位)。连带前提:L1 无商店节点使 GP 在第一关无消费口(「L1 商店编排」不另立条目、归本条〔GP 经济换算失衡〕复查范围)——复查时按 L1 是否补商店分两种情形各算一遍。 -**归属**:[难度曲线与Boss](systems/冒险循环/难度曲线与Boss.md)调参批(M4 数值批)+ 奇物池结构随批 +**归属**:[难度曲线与Boss](systems/冒险循环/难度曲线与Boss.md)调参批(M4 数值批)+ 奇物池结构顺带 **状态**:待办(随 M4 数值批一并裁决;「L1 商店编排」不另立条目、其情形复查并入本条〔GP 经济换算失衡〕,无外部前置) @@ -369,7 +369,7 @@ #### 调参批数值点评登记(八型批随批登记) -**现状**:格面资源八型批后随批登记的数值点评——① 增伤型奖励/惩罚幅度 50/25 不对称是否有意;② 削弱型 65/25 同问(且 percent 套个位数取整偏粗——主角攻击 2 点时 ±25% 常取整无感);③ 回血奖励过薄(值 1、权重全池最低 2);④ 警觉/行动点修正两新词数值全部 provisional;⑤ 行动经济"满停一轮 = 一刷"节拍在 AP±1 修正下的对账;⑥ **格面资源正负兑付倍率差回调(2026-10-07 用户裁)**——2026-10-01「踩雷必须痛」抬档(heal +2/−6、pierce/magic +2/−8 等,负向 3-4 倍于正向)系错误的加难杠杆:难度提升应走怪物性能路线而非抬地图惩罚,回调归 M4 数值批(2026-10-09 里程碑立规:M4=Beta 阶段、M3 未由用户明令关闭前不排期——原「下一迭代数值批」表述作废);标错/开雷同档同罚维持不动(同批裁)。 +**现状**:格面资源八型批后顺带登记的数值点评——① 增伤型奖励/惩罚幅度 50/25 不对称是否有意;② 削弱型 65/25 同问(且 percent 套个位数取整偏粗——主角攻击 2 点时 ±25% 常取整无感);③ 回血奖励过薄(值 1、权重全池最低 2);④ 警觉/行动点修正两新词数值全部 provisional;⑤ 行动经济"满停一轮 = 一刷"节拍在 AP±1 修正下的对账;⑥ **格面资源正负兑付倍率差回调(2026-10-07 用户裁)**——2026-10-01「踩雷必须痛」抬档(heal +2/−6、pierce/magic +2/−8 等,负向 3-4 倍于正向)系错误的加难杠杆:难度提升应走怪物性能路线而非抬地图惩罚,回调归 M4 数值批(2026-10-09 里程碑立规:M4=Beta 阶段、M3 未由用户明令关闭前不排期——原「下一迭代数值批」表述作废);标错/开雷同档同罚维持不动(同批裁)。 **归属**:[难度曲线与Boss](systems/冒险循环/难度曲线与Boss.md)难度曲线调参批 @@ -379,7 +379,7 @@ **现状**:用户想法(暂不立件,素材登记)——两件套:件一=抬高刷新雷图代价(储备池 RAP 成本飙高)+ 刷新时解锁所有格子(全板开);件二=本回合留着 AP 没有刷新 → 获得减伤。联动 = 抬价逼留 AP、留 AP 给减伤、憋够一发全板解锁。我方补充登记五点:①形态骨架=「封锁-蓄力」combo 结构(抬高某动作代价封路 + 不做给补偿 + 憋到后的爆发);②件一=风险契约句式的扫雷侧版——碰撞点待裁:刷新开全板与清图判定/清图奖励/连锁展开的关系(算不算清图、发不发清图奖励);③件二词表可承载(on round_end when 本轮未刷新且余 AP≥X → 减伤/护盾),「本轮未刷新」事实=扩签候选;④归层按判定尺逐件裁(两件偏机制改写→专长域;但「刷新代价」是扫雷侧经济参数→秘宝域亦可);⑤防躺赢注记:憋的收益须小于正常挖格期望(否则最优解=永远不挖,玩法塌缩)。 -**归属**:专长重设计扩充批 / 秘宝内容批(归层随批裁) +**归属**:专长重设计扩充批 / 秘宝内容批(归层顺带裁) **状态**:待办(设计素材登记,不立项) @@ -417,7 +417,7 @@ **归属**:元进度设计批 -**状态**:部分收口(2026-09-21 元进度实现批再收窄;2026-09-23 换算率标定批再收窄)——**三柜台结构与 provisional 定价已落地**(属性锻造三档血+3/攻+1/甲+1、base 10 公比 150;Boss 两档 L1 5/1·L2 8/2·L3 12/3;工坊六件阈值 1/1/2/2/3/3 按总通关次数——全部读 `data/tables/meta.tres`);换算率三行已投值 6/9/1(同批,冒险条件口径实测,护甲行强条目重测履行);剩余面 = 定价数字与 Boss 两档——**已编入 Alpha 收官 M4 数值批〔未排期,2026-10-07 用户令移出迭代 18 暂不启动〕〔2026-10-06 用户令自迭代 17 卡②移出——不影响 17 在飞开发〕(2026-10-05——裁点已全裁〔2026-10-06 用户令:P1甲/P2甲/P3甲/P4甲〕待 U0:design/research/需求卡片-M4数值批-2026-10-05.md;定价数字与 Boss 两档终值 = 件④。注:本条「base 10 公比 150」文本滞后——meta.tres 现行 forge base_price=20(2026-09-22 数值设计批对齿 10→20),随件④收口时刷新)** +**状态**:部分完成(2026-09-21 元进度实现批再收窄;2026-09-23 换算率标定批再收窄)——**三柜台结构与 provisional 定价已落地**(属性锻造三档血+3/攻+1/甲+1、base 10 公比 150;Boss 两档 L1 5/1·L2 8/2·L3 12/3;工坊六件阈值 1/1/2/2/3/3 按总通关次数——全部读 `data/tables/meta.tres`);换算率三行已投值 6/9/1(同批,冒险条件口径实测,护甲行强条目重测履行);剩余面 = 定价数字与 Boss 两档——**已编入 Alpha 收官 M4 数值批〔未排期,2026-10-07 用户令移出迭代 18 暂不启动〕〔2026-10-06 用户令自迭代 17 卡②移出——不影响 17 在飞开发〕(2026-10-05——裁点已全裁〔2026-10-06 用户令:P1甲/P2甲/P3甲/P4甲〕待 U0:design/research/需求卡片-M4数值批-2026-10-05.md;定价数字与 Boss 两档终值 = 件④。注:本条「base 10 公比 150」文本滞后——meta.tres 现行 forge base_price=20(2026-09-22 数值设计批对齿 10→20),随件④完成时刷新)** #### 解锁界面与钥石呈现的交互形态(残余:状态面板〔原暂停层〕只读入口) @@ -425,7 +425,7 @@ **归属**:HUD 批(M-4,批未立项)——已随迭代 17 卡③实施 -**状态**:✅ 代码面已交付待实机目检(2026-10-06,迭代 17 卡③暂停层只读入口批〔时名——2026-10-13 改名状态面板〕——worktree g-plan2-iter17-pause 分支 iter17-pause-20261006,提交 c08a901/fc9eb1e/d44fdd5+收口笔;P1丁常驻角标/P2甲设置层同档 dim 遮罩/P3甲余额+三柜台进度/P4甲零动效直开直关全落;badge 已按 Q10 甲工厂化入 ui_kit 并同步迁营地钥石徽;机检=冒烟 788/0+run_all 17 套+四探针全绿〔含输入锁 case⑯/只读巡检/零动效契约/钥石徽对比度对〕+doc 三闸零新增;改名批机检=冒烟 938/0+run_all 24 套+probe --click/--full+render_gate 全绿;**人闸=用户实机目检** 迭代17人闸清单(已退役,git 历史可查)——过闸后本条销号;Esc 快捷通道维持本清单键盘/手柄条登记随键盘批办理) +**状态**:✅ 代码面已交付待实机目检(2026-10-06,迭代 17 卡③暂停层只读入口批〔时名——2026-10-13 改名状态面板〕——worktree g-plan2-iter17-pause 分支 iter17-pause-20261006,提交 c08a901/fc9eb1e/d44fdd5+收口笔;P1丁常驻角标/P2甲设置层同档 dim 遮罩/P3甲余额+三柜台进度/P4甲零动效直开直关全落;badge 已按 Q10 甲工厂化入 ui_kit 并同步迁营地钥石徽;机检=冒烟 788/0+run_all 17 套+四探针全绿〔含输入锁 case⑯/只读巡检/零动效契约/钥石徽对比度对〕+doc 三闸零新增;改名批机检=冒烟 938/0+run_all 24 套+probe --click/--full+render_gate 全绿;**人闸=用户实机目检** 迭代17人闸清单(已退役,git 历史可查)——过闸后本条注销;Esc 快捷通道维持本清单键盘/手柄条登记随键盘批办理) #### 未开格类型徽章呈现时机(2026-09-18 方向已拍板,待实施批) **现状**:2026-09-18 用户拍板方向——未开格常显奖励类型微光(周围 8 格泛光:魔法=紫 / 穿刺=蓝 / 群伤=红 / 治疗=绿 / 其他增益=黄),让玩家能针对敌人护甲类型规划优先开哪些格。设计依据:护甲克制轴已落地(穿刺弹/魔法矢),玩家需要类型先验才能兑现克制博弈。**2026-09-22 美术圣经审阅批更新(T1 裁决:采纳彩色常显微光)**:原五色与圣经语义色条款三方冲突(紫落 300°–345° 禁入带/治疗绿违反绿零逻辑/穿刺蓝违反蓝只说己方),经用户裁决采纳微光后五组色相已重选候选——芥末黄(通用增益)/黄绿(治疗)/青(穿刺)/紫罗兰(魔法)/绯红(群伤),见 [art-bible](../art/art-bible.md) §4.2「类型微光色带」(候选值,样张批冻结);圣经 §4.6.3 呈现约束已同步为「角嵌纹样(形状)+常显微光(色彩)」双通道,类型预读呈现方案在美术侧已成文。连带裁决面:① 本方向修订[不做清单](05-不做清单.md)「未开格不显示奖励身份」裁定(owner 修订,合法);② ~~与 art-bible §4.6.3 家族类型徽章口径对齐归美术批~~——已完成(2026-09-22 美术文档修订批);③ 探宝罗盘(预读 3×3)价值被清空,效果重定归秘宝内容批;④ ~~色板与既有格面徽标/UI 用色冲突检查归样张批~~——冲突面已在色相重选时规避,样张批保留组间互辨抽测义务;⑤ 原「资源预读与推理的边界」条目并入口径(2026-09-19 用户拍板:预读边界按本条微光方案定——类型级常显;探宝罗盘重定两方案另立条目评估);⑥ 实施窗口 = 表现层升级批(会改推理信息面,切片期默认不开、保护验收读数基线)。**2026-09-30 口径校正(用户裁决)**:微光正确口径=**英雄周围 8 格内的未开格显示类型微光**(非全板常显)——本条历史文本中的「常显」为无范围复述、「魔法=紫/穿刺=蓝…」为 2026-09-18 原案旧色(已被 T1 重选五组取代,现行见 art-bible §4.2);概念权威定义已落 [HUD框架](systems/表现与支撑/HUD框架.md)「未开格类型微光」节(2026-09-30 收口批落位),本条此后只承载实施状态、不再承载定义。 @@ -492,7 +492,7 @@ #### 主角描边素材侧复核(2026-10-06 待决项 B 登记注记) -**现状**:待决项 B 已按用户拍板走**文档例外条款**(character-design.md §5.1 v1.9:主角四态硬描边 = 深褐 `(40,19,13)` 显式例外,浅砖面对比更高;**素材不随批修改**)。本条仅为复核钩子:样张批(圣经 §1.4)终审时若发现深描边例外不成立(对比优势不实/与敌方同屏割裂感可感),素材侧修订(描边统一暖白族)**须先经本条重启**再开工,不得直接动图。 +**现状**:待决项 B 已按用户拍板走**文档例外条款**(character-design.md §5.1 v1.9:主角四态硬描边 = 深褐 `(40,19,13)` 显式例外,浅砖面对比更高;**素材不随批修改**)。本条仅为复核钩子:样张批(圣经 §1.4)终审时若发现深描边例外不成立(对比优势不实/与敌方同屏割裂感可感),素材侧修订(描边统一暖白族)**须先经本条重启**再开工,禁止直接动图。 **归属**:[character-design](../art/character-design.md) §5.1 · 样张批 @@ -502,7 +502,7 @@ **现状**:审计 P2-1——`artwork/ui-reuse-2026-09-23/` 独占 3043 个草稿(91%),vN 命名率 0%,冗余 41 文件,残留非素材文件(.url ×8 / .ogg ×6 / .ai ×2 / .swf ×1);根因 = 脚本链覆盖「生成→验证」但**缺「草稿整理」段**。整理涉及**批量文件移动/删除**,按用户惯例须先 dry-run 呈报清单、经确认再分批执行。 -**归属**:[art-bible](../art/art-bible.md) §8.3 归档纪律(原则已落文)· 资产管线批(工具+文件操作) +**归属**:[art-bible](../art/art-bible.md) §8.3 归档纪律(原则已写入)· 资产管线批(工具+文件操作) **状态**:待办(执行窗口随实现批;开工 = 用户点名,先 dry-run) @@ -566,7 +566,7 @@ **归属**:新界面立项(用户发令后排批);退役落码随 UI 落码批 M8/M9 -**状态**:待办(生涯未做前,冒险中无任何历史回看入口——已知代价,用户知情裁决)——**设计提纲已成文待评审**(2026-10-06 迭代 17 卡④设计批完成:提纲 = [systems/跨局循环/生涯.md](systems/跨局循环/生涯.md) v0.1 范围草案,五节成文〔信息架构/承载内容清单/与既有界面关系/分期实装建议/待裁点〕,现状描述经代码级复核;P0-P5 六裁点已全裁落文〔P0甲 提纲落现行事实源 / P1甲 主菜单一级入口 / P2甲 每局一行摘要+cap 扩容 N+补用时埋点 / P3甲 敌人图鉴优先 / P4甲 局内不放入口+生涯零跳转 / P5甲 settlement_review 复活承接〕,新发现待裁点 P6 营地最近冒险条带去留随评审一并裁。**人闸 = 用户评审提纲**;实装批另行立项,期一/二/三均未预占排期)——**实装批已编入 roadmap 迭代 18 卡④生涯界面实装批(2026-10-06 用户令;门=本提纲用户评审+设计定稿)**——**期一已落地(2026-10-07 迭代 18 卡④实装批:生涯页六类九项+主菜单入口+终身计数域存档 v6,批末重闸全绿;实机人闸挂账待用户——目检项=07⑲;出口报告 design/qa/iter18-career-exit-report-2026-10-07.md)**;剩余面=期二(历史回看/图鉴)与期三实装+P6 营地最近冒险条带去留 +**状态**:待办(生涯未做前,冒险中无任何历史回看入口——已知代价,用户知情裁决)——**设计提纲已成文待评审**(2026-10-06 迭代 17 卡④设计批完成:提纲 = [systems/跨局循环/生涯.md](systems/跨局循环/生涯.md) v0.1 范围草案,五节成文〔信息架构/承载内容清单/与既有界面关系/分期实装建议/待裁点〕,现状描述经代码级复核;P0-P5 六裁点已全裁并写入文档〔P0甲 提纲落现行事实源 / P1甲 主菜单一级入口 / P2甲 每局一行摘要+cap 扩容 N+补用时埋点 / P3甲 敌人图鉴优先 / P4甲 局内不放入口+生涯零跳转 / P5甲 settlement_review 复活承接〕,新发现待裁点 P6 营地最近冒险条带去留随评审一并裁。**人闸 = 用户评审提纲**;实装批另行立项,期一/二/三均未预占排期)——**实装批已编入 roadmap 迭代 18 卡④生涯界面实装批(2026-10-06 用户令;门=本提纲用户评审+设计定稿)**——**期一已落地(2026-10-07 迭代 18 卡④实装批:生涯页六类九项+主菜单入口+终身计数域存档 v6,批末重闸全绿;实机人闸挂账待用户——目检项=07⑲;出口报告 design/qa/iter18-career-exit-report-2026-10-07.md)**;剩余面=期二(历史回看/图鉴)与期三实装+P6 营地最近冒险条带去留 **迭代 19 卡②遗留件登记(2026-10-08)**:settlement_review_overlay.gd 现态考证=未接线遗留件(全仓零引用,M9 结算框改版「明细回看」钮退役后遗留——迭代 19 卡②需求卡片普查表「出批归退役处置另议」落位本条)。处置两途:①随生涯实装批按 P5 甲复活承接(重接线入生涯);②确认不再需要则正式退役删除文件。二选一归生涯实装批/用户裁;卡②批红线(旧屏零 diff)该文件零触碰。 @@ -574,9 +574,9 @@ #### 商店独立刷新机制——两参数待调参 + 机制文档回写 -**现状**:2026-10-04 用户裁决(P-C2+Q2 二次裁)推翻关卡节点地图 v1.5「无独立刷新、重抽绑购买」口径,定案=**基础免费 0 次 + GP 刷新(ceil(20×1.8^已付费刷) provisional)+ 池源同源(共享池,与三选一同一账本)**;**天赋/营地侧「刷新次数」增益=用户既有意向(口头裁决,曾因未落文丢失——Q2 追认),后续由用户调整添加,实现面预留 free_count=天赋增益位**。未定:天赋增益的具体形态与数值。**机制已落码(SR-1 随 UI 落码批收官,2026-10-04/05)**。**三选一同款付费刷新(2026-10-06 用户令——「三选一对齐商店,得有刷新」)已落码**:免费双源(刷新件 X/冒险池 Y)用尽后 GP 付费刷新,同旋钮同曲线同钱包,钮常驻选择态、两源皆穷=禁用;机制登记归[秘宝](systems/跨局循环/秘宝.md)「三选一刷新双源」节。剩余待办=①调参(shop_refresh_free/曲线两参数 provisional);②天赋增益形态与数值;③机制文档回写(冒险结构共享池账本节/关卡节点地图商店行 v1.6 已记,本条收口时核对三处同步)。来源=同上 §七 +**现状**:2026-10-04 用户裁决(P-C2+Q2 二次裁)推翻关卡节点地图 v1.5「无独立刷新、重抽绑购买」口径,定案=**基础免费 0 次 + GP 刷新(ceil(20×1.8^已付费刷) provisional)+ 池源同源(共享池,与三选一同一账本)**;**天赋/营地侧「刷新次数」增益=用户既有意向(口头裁决,曾因未写入文档丢失——Q2 追认),后续由用户调整添加,实现面预留 free_count=天赋增益位**。未定:天赋增益的具体形态与数值。**机制已落码(SR-1 随 UI 落码批收官,2026-10-04/05)**。**三选一同款付费刷新(2026-10-06 用户令——「三选一对齐商店,得有刷新」)已落码**:免费双源(刷新件 X/冒险池 Y)用尽后 GP 付费刷新,同旋钮同曲线同钱包,钮常驻选择态、两源皆穷=禁用;机制登记归[秘宝](systems/跨局循环/秘宝.md)「三选一刷新双源」节。剩余待办=①调参(shop_refresh_free/曲线两参数 provisional);②天赋增益形态与数值;③机制文档回写(冒险结构共享池账本节/关卡节点地图商店行 v1.6 已记,本条完成时核对三处同步)。来源=同上 §七 -**归属**:M4 数值批(调参两参数随批);天赋增益随天赋侧内容批 +**归属**:M4 数值批(调参两参数顺带);天赋增益随天赋侧内容批 **状态**:待办(机制已落码;调参、天赋增益与文档回写未落) @@ -585,13 +585,13 @@ #### 文档/结构闸存量欠账(2026-10-08 迭代 19 总收口批登记) 新重闸口径首次全闸套跑翻出;经 T0 基点 9160942 复测确认为存量/外部批旧债,非本迭代新增。 -- gdd_lint 表格占比 3 件:01-核心循环(35%)/06-待办清单(0%)/07-体验验证清单(6%)——T0 基点已 2 件存量在案,第 3 件疑外部道具批 80 行散文落文稀释占比 +- gdd_lint 表格占比 3 件:01-核心循环(35%)/06-待办清单(0%)/07-体验验证清单(6%)——T0 基点已 2 件存量在案,第 3 件疑外部道具批 80 行散文写入稀释占比 - doc_link 死链 2 件:奇物.md:245 → ../ux/battle.md 与 ../ux/node-reward.md(奇物 v2.7 b6b43eb 旧债)——**已清偿(2026-10-09 独立复核批:路径层级 ../ux/→../../ux/ 修正,doc_link 复验零死链)** - doc_term 退役术语旗 1 件:06「拔旗回收返 AP」备选条目文字引用(该条目自身裁决时顺手处置) **归属**:文档体检批/对应来源批 -**状态**:待办(已呈报登记;处置不阻塞迭代 19 收口) +**状态**:待办(已呈报登记;处置不阻塞迭代 19 完成) #### qa/ 实现报告收尾·孤儿遗留七项(2026-10-14 补登——用户裁「全部补登 06」) **来源**: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 休眠等)已在各报告标注结案证据,不入本条。 @@ -629,7 +629,7 @@ #### 技术债观察登记——长函数余量与 lambda 连接防回归(2026-10-15 迭代 27 卡片义务补登) -**现状**:迭代 27 需求卡片两项「登记 06 观察」义务随批漏登,卡片核对时补登——①**长函数 17 个**中非结算段的装配/校验函数(`level_map_screen.gd` 选路装配 155 行/`camp_overlay_view.gd` 152 行/`debug_overlay.gd` 114 行/`treasure_item_table.gd` schema 校验群等;`main._build_ui` 已随场景拆分自然解体、`_settle`/`_resolve_hero_attack` 已随波二拆段=17 中 3 件已消解,余 14 件);②**lambda 连接 76 处**(presentation 6/smoke 62/tests 8——实读无泄漏,登记防回归)。 +**现状**:迭代 27 需求卡片两项「登记 06 观察」义务批内漏登,卡片核对时补登——①**长函数 17 个**中非结算段的装配/校验函数(`level_map_screen.gd` 选路装配 155 行/`camp_overlay_view.gd` 152 行/`debug_overlay.gd` 114 行/`treasure_item_table.gd` schema 校验群等;`main._build_ui` 已随场景拆分自然解体、`_settle`/`_resolve_hero_attack` 已随波二拆段=17 中 3 件已消解,余 14 件);②**lambda 连接 76 处**(presentation 6/smoke 62/tests 8——实读无泄漏,登记防回归)。 **归属**:工程债观察备忘(不阻塞,不排期;新增此类代码沿现役规范评审盯) @@ -637,9 +637,9 @@ #### 迭代 27 代码架构技术债修复批——GDD 反哺点两条(2026-10-14 随批登记,待用户逐点裁决另批落文) -**现状**:五波全量入库(单会话交付;逐位一致对拍三变体五跑全同;实现报告=design/qa/iter27-实现报告-2026-10-14.md)。实现与设计权威文档的差异/缺口如下,经裁决后另批落文——**机械面随批已动的只有本条与 07/roadmap**。 +**现状**:五波全量入库(单会话交付;逐位一致对拍三变体五跑全同;实现报告=design/qa/iter27-实现报告-2026-10-14.md)。实现与设计权威文档的差异/缺口如下,经裁决后另批写入文档——**机械面已顺带改动的只有本条与 07/roadmap**。 -**归属**:工程债/重构批收口反哺(不阻塞,不排期) +**归属**:工程债/重构批完成反哺(不阻塞,不排期) | # | 文档 | 反哺点 | |---|---|---| @@ -662,9 +662,9 @@ #### 迭代 28 启动装配与生命周期验收补全批——GDD 反哺点三条(2026-10-15 随批登记,待用户逐点裁决另批落文) -**现状**:六任务全量入库(单会话交付;变异验证六次注入全见红并精确还原;实现报告=design/qa/iter28-实现报告-2026-10-15.md)。实现与设计权威文档的差异/缺口如下,经裁决后另批落文——**机械面随批已动的有 roadmap/本条/07/active.md/CLAUDE.md/code-conventions.md/req-card 技能(仓外)**。**与迭代 27 反哺点①的关系**:迭代 27 只登记了「场景分层/会话生命周期陈述滞后于实态」的方向性缺口,本批把其中「层序=谁说了算」「boot 后置条件是什么」「会话引用面何时活何时死」三件做成了代码级事实与可执行断言,本条是其**具体化承接**——落文时可合并处理。 +**现状**:六任务全量入库(单会话交付;变异验证六次注入全见红并精确还原;实现报告=design/qa/iter28-实现报告-2026-10-15.md)。实现与设计权威文档的差异/缺口如下,经裁决后另批写入文档——**机械面已顺带改动的有 roadmap/本条/07/active.md/CLAUDE.md/code-conventions.md/req-card 技能(仓外)**。**与迭代 27 反哺点①的关系**:迭代 27 只登记了「场景分层/会话生命周期陈述滞后于实态」的方向性缺口,本批把其中「层序=谁说了算」「boot 后置条件是什么」「会话引用面何时活何时死」三件做成了代码级事实与可执行断言,本条是其**具体化承接**——写入文档时可合并处理。 -**归属**:工程债/测试基建批收口反哺(不阻塞,不排期) +**归属**:工程债/测试基建批完成反哺(不阻塞,不排期) | # | 文档 | 反哺点 | |---|---|---| diff --git a/design/gdd/07-体验验证清单.md b/design/gdd/07-体验验证清单.md index e8a0eb8a..b08646b3 100644 --- a/design/gdd/07-体验验证清单.md +++ b/design/gdd/07-体验验证清单.md @@ -1,6 +1,6 @@ # 07-体验验证清单 -本文登记**需要真人体验/观测才能下结论**的验证项,与 [06-待办清单](06-待办清单.md) 分工:06 登记"要拍板的事",本文登记"要玩过才知道的事"。每条注明**结论回流**路径——体验感受不满不等于当场改数:数值终值归其登记的归属批,体验反馈是该批的输入。**登记不阻塞(2026-10-12 用户立规)**:真人检测项登记进本清单后,实现批照常合并收口、后续迭代照常开工,验收时间由用户自行安排,结论按各条回流路径回流。 +本文登记**需要真人体验/观测才能下结论**的验证项,与 [06-待办清单](06-待办清单.md) 分工:06 登记"要拍板的事",本文登记"要玩过才知道的事"。每条注明**结论回流**路径——体验感受不满不等于当场改数:数值终值归其登记的归属批,体验反馈是该批的输入。**登记不阻塞(2026-10-12 用户立规)**:真人检测项登记进本清单后,实现批照常合并进 master、后续迭代照常开工,验收时间由用户自行安排,结论按各条回流路径回流。 状态词汇设计权威=增益状态 状态词表节(原提案 v1.0 已按生命周期条款退役,git 提交 7f24b64 可考) @@ -73,11 +73,11 @@ 弃图率 / 每轮刷新率随试玩日志采集;预警阈值须有基线读数才能定(2026-09-18 拍板:现在定是拍脑袋)——基线已采(见下条),阈值数字归后续调参(数值批(Beta 阶段,未排期)计划书备选面)联动复核。挖掘期当场刷新无结算发生,两读数均不影响对账。 -**基线已采(2026-09-19 验收重测批——读数已内联本节)**:MC 完美档弃图 ~0.1 次/局量级(L1 基线格 0.23 / L2 0.03)、normal 档零弃图(模拟画像不主动刷新);每轮刷新率 ≤0.6%。阈值数字归后续调参(数值批(Beta 阶段,未排期)计划书备选面,待 U0)。两读数已固化进 `log_analysis.py` 关卡级统计列(分析器随批升级)。 +**基线已采(2026-09-19 验收重测批——读数已内联本节)**:MC 完美档弃图 ~0.1 次/局量级(L1 基线格 0.23 / L2 0.03)、normal 档零弃图(模拟画像不主动刷新);每轮刷新率 ≤0.6%。阈值数字归后续调参(数值批(Beta 阶段,未排期)计划书备选面,待 U0)。两读数已固化进 `log_analysis.py` 关卡级统计列(分析器顺带升级)。 ### ⑧ 旗行为基线监控(插旗不可逆批 2026-09-19 落地后的行为监控;原「提案评估前置采集」使命随提案转正终结) -2026-09-19 上午拍板):本项为插旗不可逆提案的 Alpha 评估前置采集——同日用户在真人试玩中确认"不能挖旗格"违背设定,**提案全套提前落地**(禁拔旗 + 挖旗格兑付改判,战斗结算 v0.18 四情况表;登记原文见 2026-09-18 台账 72 与 git 历史 06 清单条目)。评估使命终结,本项转为一律机制的真人行为监控(与 ⑥⑦ 同形状,纯日志侧采集零新增埋点)。 +2026-09-19 上午拍板):本项为插旗不可逆提案的 Alpha 评估前置采集——同日用户在真人试玩中确认"不能挖旗格"违背设定,**提案全套提前落地**(禁拔旗 + 挖旗格兑付改判,战斗结算 v0.18 四情况表;登记原文见 2026-09-18 状态记录 72 与 git 历史 06 清单条目)。评估使命终结,本项转为一律机制的真人行为监控(与 ⑥⑦ 同形状,纯日志侧采集零新增埋点)。 - **观测什么**(读数全部可由现役 JSONL 日志推导——动作行含 flag_place/被拒 dig、结算步流含 flag_hit/flag_miss 判定行〔带格坐标〕与 reward_ineffective 作废行;flag_pull 动作行与同轮插撤、拔旗次数两读数随拔旗退役作废删除):① 误旗率 = flag_miss 判定行 ÷ flag_place 动作行(判定时点口径细节随首批读数钉死);② 挖旗格直挖率 = 插旗格直接挖开数 ÷ flag_place 动作行(原「被拒后路径分布」三路径随挖旗格放行消失);③ 四情况触发分布(①标中留判 / ②危险格直挖 / ③标空留判 / ④安全格直挖零奖励——④占比是核心读数)。 - **语义锚(2026-09-19 落地实测锁定,smoke_all `_smoke_flag_irreversible_quadrants` 断言在案)**:插旗安全格直挖 = 零惩罚零奖励(正向兑付作废、作废归因行恰一次、标空不判);插旗危险格直挖 = 只受挖雷一层惩罚(mine_hit 照常)、标中不发;不挖留判 = 标中/标空照常;flag_pull 出目录拒绝、重复插旗 flag_present 拒绝。 @@ -107,14 +107,14 @@ 2. **整体难度印象**:用户 2026-10-01 已阶段性验收「令人稍微满意」——本批试玩读数作正式标定(真人通关率+k 系数),若体感偏难/偏易也照实记,不因单局顺逆回调。 模拟侧对照读数(普通档画像 L1 13%/战役 0%;完美档 78.5%)见同报告 §四。 -### ⑩ 迭代 10 奖励重构体验项(2026-10-01 随批登记——实机目检一轮已过 1/3/4/5/6/9/14,余项人工参与) +### ⑩ 迭代 10 奖励重构体验项(2026-10-01 顺带登记——实机目检一轮已过 1/3/4/5/6/9/14,余项人工参与) - **逐行结算演出复验**:完全退出游戏后重启(减动效开关在启动时加载——首轮目检「零动画」系该开关遗留开启,已翻回),战斗停手看轮末结算是否一行一行滚出(弹道/受击闪白/伤害数字逐行)。机制系迭代 8 已落地(排播队列 0.3/0.22s),非迭代 10 事项;若重启后仍无演出再报 bug 批。 - **道具件卡片直显复验**:三选一抽到秘宝件时,卡片应直显「秘宝 / 探巢摆钟 · 真视 3×3」式具体道具(掷定前置已实装,node-reward.md v2.1)——不再是「随机获得一件」盲选。 - **通关节奏体感**:血回满→20% 部分回血 + 三选一选件后,L2/L3 的紧张度与「这局能走多远」驱动是否成立(读数带内:普通 L1 41.8%/L2 10.2%——体感不满不当场改数,归曲线调参批)。 - **钥石节奏体感**:Boss 逐杀掉落(首杀 3/复杀 2/2/3)后营地积累速度明显变慢——元进度产出重标(均值 1.38/3.01)归元进度设计批,体感反馈是其输入。 -### ⑪ Boss 图整图变异(贫矿脉)目检项(2026-10-04 全局作用域变异首发批随批登记——**目检改排:随 UI 优化批之后统一验证**,用户 2026-10-04 裁「先做完 UI 优化再一起验证」) +### ⑪ Boss 图整图变异(贫矿脉)目检项(2026-10-04 全局作用域变异首发批顺带登记——**目检改排:随 UI 优化批之后统一验证**,用户 2026-10-04 裁「先做完 UI 优化再一起验证」) > **改排状态注记(2026-10-05 ui-struct-probe 批)**:UI 优化批(UI 落码 11 卡+SR-1)已全入库;期间实机目检抓到标题屏双列叠放缺陷,已随 ui-struct-probe 批修复,并新增全 UI 屏结构探针入轻闸(按钮互压/等宽/出屏/零尺寸——机械可判项自此探针代管,见 §⑯)。本条统一验证窗口仍开,等用户实机目检时点;下列六项均为体感/呈现面,保留人闸。 @@ -132,15 +132,15 @@ **局后随手记**(一句话):Boss 图这层"攻击多、回血少"的体感成不成立;有没有觉得 Boss 图突然变难/变容易。读数核对归模拟批(off/on 双档,只测不判),你的体感只做方向参考——不会当场改数值。 -### ⑫ 旗溢价兑付与标旗激励(2026-10-05 挖掘风险不等式判式换代批随批登记——迭代14②号卡) +### ⑫ 旗溢价兑付与标旗激励(2026-10-05 挖掘风险不等式判式换代批顺带登记——迭代14②号卡) - **机制一句**:标中旗的正向兑付现在按同型正向 ×1.25 兑付(`settlement.tres` flag_hit_premium=125 provisional——条款3 条件二旗溢价形态 a),标空与挖格兑付不变;危险格与安全格同池结构零触碰。 - **看什么(实机目检,约 5 分钟)**:①插旗标中一面旗,结算明细的兑付数值应比改前同类行略大(增伤 50→63 / 削弱 65→81 / 急救 2→3 / 金币袋 3→4;盾牌加护与行动点 1 点量纲不变=整数粒度地板);②挖安全格与标空惩罚行数值应与改前逐位相同;③战斗结算帮助文案如有旗相关行,无自造词。 -- **行为读数(改前改后 MC 锚已采,判读随批出口报告)**:η=标中÷插旗 与 标旗率 位移 ≥5pp 判「有感」;行为无效 δ 仍保留+登记「行为无感」(判式诚实性不依赖行为弹性——2026-10-04 grill Q4 裁)。 +- **行为读数(改前改后 MC 锚已采,判读随出口报告顺带交付)**:η=标中÷插旗 与 标旗率 位移 ≥5pp 判「有感」;行为无效 δ 仍保留+登记「行为无感」(判式诚实性不依赖行为弹性——2026-10-04 grill Q4 裁)。 - **红灯信号**:标旗 rush 复发(首轮全标旗不挖——δ 与完美排雷 ×2 叠加通胀是既有联动面:旗溢价三件套 δ↔p_perfect↔ap_per_round 同窗检算,难度曲线与Boss 调参联动表在册)。 -- **结论回流**:体感 → 本条目记录;数值终值(δ 值与 ×1.5 档留后手)归调参批,不在试玩现场改数。**判式换代文本(行动经济 F1 条款3/战斗结算 验收标准/难度曲线与Boss 联动表三处修订稿)随批呈用户人闸**——追认单随出口报告。 +- **结论回流**:体感 → 本条目记录;数值终值(δ 值与 ×1.5 档留后手)归调参批,不在试玩现场改数。**判式换代文本(行动经济 F1 条款3/战斗结算 验收标准/难度曲线与Boss 联动表三处修订稿)顺带呈用户人闸**——追认单随出口报告。 -### ⑬ 初始展开收窄体感(2026-10-05 初始展开收窄批随批登记——迭代14①号卡;需求卡片 §T8 四信号组) +### ⑬ 初始展开收窄体感(2026-10-05 初始展开收窄批顺带登记——迭代14①号卡;需求卡片 §T8 四信号组) - **机制一句**:开局免费展开(R₀)从「一口气开掉约 2/3 板」收窄——剃雷域从全域 flood 缩到出生 5×5(shave_ring_radius=1),另加生成期 R₀≤cap 重掷闸封顶(10×10≤45 / 12×12≤43 / 13×13≤51 / 14×14≤59)。实测开局免费展开均值:10×10 68.6→39.7 格、12×12 83.2→37.9 格。 - **对症信号(「开一大片」体感)**:开局第一挖还会不会「唰一下开掉大半张图」?预期=开场仍是出生区连锁、但明显比以前克制;「开了片面积」的失控感是否消退。 @@ -150,25 +150,25 @@ - **红灯信号**:开局连续多板几乎无免费展开(R₀ 常年 ≈9-15,体感「开局一片黑」);或可推理率体感骤降(数字不够推)。前者=剃雷半径 r 回调面(P1 旋钮 [0,2]),后者归 S1 相变警戒复测。 - **结论回流**:体感 → 本条目记录;参数终值(r 0/1/2、cap 收紧路径 45→40 等)归 P1-P3 拍板面(读数后置,MC 四带复算挂 07 现行义务),不在试玩现场改数。 -### ⑭ Boss 半血解锁呈现目检(2026-10-05 技能池执行批随批登记——迭代14④号卡;D8 呈现面) +### ⑭ Boss 半血解锁呈现目检(2026-10-05 技能池执行批顺带登记——迭代14④号卡;D8 呈现面) - **机制一句**:三 Boss(食人魔酋长/蛛化卓尔精灵/灰矮人石君王)血量降至一半时,各解锁一行新独占伤害技(震地怒击 ×2.5/CD4 · 遏毒 ×2.0/CD3 · 岩崩 ×2.5/CD4——provisional 归调参)入池参与摇号;解锁瞬间出一次归因明细行「XX 解锁了 YY」(金框行)+ 技能名 toast 一次性提示。 - **看什么(实机目检约 5 分钟)**:①把任一 Boss 打到半血以下,下一轮开始应看到「XX 解锁了 YY」金框明细行 + 右上技能名 toast(只报名不报数值);②同一场战斗继续打,解锁行与 toast 不复弹(单向闩);③解锁后 Boss 会实际使出该技(伤害明显更重);④普通小怪全程无解锁行。 - **红灯信号**:解锁行反复弹(闩失效);toast 带数值/权重(池不公开纪律破);满血即解锁(门谓词错)。 - **结论回流**:体感 → 本条目记录;技能强度体感归 T7 节奏重测读数(跑批待用户批准,过涝越带 S2 回调呈报禁自动调)。 -### ⑮ 秘宝词族换词全 UI 面目检 + 渲染像素闸补跑(2026-10-05 秘宝代码词族对齐批随批登记——迭代15③号卡) +### ⑮ 秘宝词族换词全 UI 面目检 + 渲染像素闸补跑(2026-10-05 秘宝代码词族对齐批顺带登记——迭代15③号卡) - **实机目检(「秘宝」字样全 UI 面,约 3 分钟)**:①C 区槽位标题应显示「秘宝」(原「魔法道具」,hero_info_panel_view 槽位组);②空槽悬停提示应显示「秘宝槽(空)」;③战斗总结三选一叙述行应显示「秘宝 / …」或「秘宝 / 随机获得一件」(原「魔法道具」开头);④换关 toast 应显示「上关剩余 N 件秘宝已随关卡结束清空」。**红灯信号**:任何界面残留「魔法道具」字样。〔**✅ 真人目检半已核销(2026-10-14)**:用户实机目检回报完成,未呈报残留(qa 收尾批)〕 -- **渲染像素类闸补跑挂账**:本批屏蔽五件(golden_compare / shot_probe / fx_probe / ui_layout_probe / board_shot——组 A 文案变更使像素断言合法失效,按 goal 令弃断);**补跑时点=迭代 14 全入库后的表现批周期闸一次性补跑**,与本批无独立补跑义务;届时若 golden 基线因文案换代失效,按换代流程重锚而非当缺陷修。**分工注记(2026-10-05 ui-struct-probe 批)**:结构类断言(互压/等宽/出屏)已由 `ui_struct_probe` 入轻闸默认必跑段(tools/probe_gate.sh),与像素五闸互补不替代——五闸补跑义务不变。**核销注记(2026-10-08 迭代 19 卡①自动化验收补齐批——机器补跑半随批核销)**:五件机器半全部归宿已入库并实测绿——shot_probe(扩屏七屏+shot_checker A-D 断言)/board_shot(L1-L3 取证+golden 逐像素 0.00%×3)/golden_compare 三件入 render_gate(窗口化自动闸),fx_probe 入 probe_gate --full(headless 逻辑层断言),ui_layout_probe 补 1280/1920 两档最小断言(首跑 PASS);五闸归宿对账见需求卡片-自动化验收补齐批 §一。**真人目检半(上方「秘宝」字样全 UI 面 3 分钟)仍归用户,不销号**。 +- **渲染像素类闸补跑挂账**:本批屏蔽五件(golden_compare / shot_probe / fx_probe / ui_layout_probe / board_shot——组 A 文案变更使像素断言合法失效,按 goal 令弃断);**补跑时点=迭代 14 全入库后的表现批周期闸一次性补跑**,与本批无独立补跑义务;届时若 golden 基线因文案换代失效,按换代流程重锚而非当缺陷修。**分工注记(2026-10-05 ui-struct-probe 批)**:结构类断言(互压/等宽/出屏)已由 `ui_struct_probe` 入轻闸默认必跑段(tools/probe_gate.sh),与像素五闸互补不替代——五闸补跑义务不变。**核销注记(2026-10-08 迭代 19 卡①自动化验收补齐批——机器补跑半顺带核销)**:五件机器半全部归宿已入库并实测绿——shot_probe(扩屏七屏+shot_checker A-D 断言)/board_shot(L1-L3 取证+golden 逐像素 0.00%×3)/golden_compare 三件入 render_gate(窗口化自动闸),fx_probe 入 probe_gate --full(headless 逻辑层断言),ui_layout_probe 补 1280/1920 两档最小断言(首跑 PASS);五闸归宿对账见需求卡片-自动化验收补齐批 §一。**真人目检半(上方「秘宝」字样全 UI 面 3 分钟)仍归用户,不注销**。 -### ⑯ UI 结构批复验(2026-10-05 ui-struct-probe mini-loop 随批登记——标题屏双列修复+按钮宽度纪律,约 2 分钟) +### ⑯ UI 结构批复验(2026-10-05 ui-struct-probe mini-loop 顺带登记——标题屏双列修复+按钮宽度纪律,约 2 分钟) - **背景**:实机目检抓到标题屏立绘/帮助牌叠压操作行牌(M2 双列接线缺陷,ui_assembler.gd 右列误挂 MarginContainer)+全站按钮宽度无纪律(UiKit 工厂无宽度约束)。已修复:右列挂回 HBox 第二列;UiKit.button 全站最小宽度基准 216+SIZE_FILL(行板/角标/图标钮 9 处豁免);全 UI 屏结构探针入轻闸。 - **看什么(实机目检约 2 分钟)**:①标题屏应为左右双列——左操作列(冒险/营地与系统两组)与右立绘看台+玩法速览牌并排,互不遮挡,「退出游戏」按钮完整可见;②同组按钮等宽(菜单列/确认弹窗),按钮不再宽窄参差;③营地屏三柜台+底栏不出屏、不重叠。 - **红灯信号**:任何屏出现控件叠压/按钮宽窄不一回潮/内容超出屏幕——结构探针已拦机检面,红灯=探针盲区,报批补断言。 -### ⑰ 奇物渠道分离与凭证目检(2026-10-05 奇物词族对齐与渠道分离批随批登记——迭代15②号卡) +### ⑰ 奇物渠道分离与凭证目检(2026-10-05 奇物词族对齐与渠道分离批顺带登记——迭代15②号卡) - **专长兑付时点(单列检查项——契约①核心)**:关底 Boss 被击败那一刻应弹出通关三选一(候选应全为专长件=卡面只写单件名与效果);**战斗结算面不应出现任何奇物授予**;普通战斗节点打完不给任何奇物。 - **凭证目检**:奖励节点/商店偶见「奇物凭证」卡(价与其他商品相当);选中/买下同一时刻应**直接开出一次奇物三选一**(不进持有集、无库存残留);同局第二次买到应正常(限购 1——第三次起不再出现)。 @@ -176,26 +176,26 @@ - **红灯信号**:战斗结算后弹奇物;凭证进持有集;货架出现专长单件(非凭证形态);refresh 件写进角色加成区。 - **结论回流**:呈现面违规改法+档位呈现三路=C1 待裁(呈现批);强度体感归 Beta 阶段(未排期)带判读(本批 MC 只测不判)。 -### ⑱ 首批混编遭遇目检与读数义务(迭代 18 卡⑤投放随批登记——首个混编遭遇落表) +### ⑱ 首批混编遭遇目检与读数义务(迭代 18 卡⑤投放顺带登记——首个混编遭遇落表) - **投放内容**:(2,5) 双行行集 = 熊地精重击手(既有行零变更)+ 巨蜘蛛巢群(新行,行值整行复制 (2,6) 巢群行——零数值新增);行序 = 重击手在前(默认目标)·巢群在后(R6 行序契约:文件序 = 声明序 = 生成序)。 - **实机目检三项**(混编遭遇至少触发一次——L2 节点 5):同场两敌种呈现(重击手与蜘蛛同屏);行序与表一致(默认目标 = 重击手,蜘蛛随后);实例总数 ≤4 目视(3-4 只 = 重击手 1 + 蜘蛛 2-3)。 - **难度带读数义务**:L2 含混编后的难度带位移——随 Alpha 收官 M4 数值批统一执行,届时另报批(本批 MC 零跑)。 -- **首遇教学位与断言面复核(本批已履行)**:巨蜘蛛首遇位 (2,4)「固定 2 不加骰」零触碰、钩爪恐魔 (3,0)/(3,1) 固定数量零触碰;expect_pools 三元键池模板 + (2,5) 行集构成/行序/静态最坏骰和 ≤4 断言随批入冒烟全绿。 +- **首遇教学位与断言面复核(本批已履行)**:巨蜘蛛首遇位 (2,4)「固定 2 不加骰」零触碰、钩爪恐魔 (3,0)/(3,1) 固定数量零触碰;expect_pools 三元键池模板 + (2,5) 行集构成/行序/静态最坏骰和 ≤4 断言顺带入冒烟全绿。 - **红灯信号**:(2,5) 只出一种敌种;敌人数 5 只以上(越 spawn 守卫应不可能——出现即报缺陷);首遇位 (2,4) 数量出现掷骰波动(应恒 2)。 - **Boss 多行(第二批投放)六面读数清单维持**:Boss 名取首行显示 / Boss 遭遇骰逐行区间骰(每行各掷自己区间——卡① Q8 逐行骰换代口径)/ 半血解锁 / 独占技 / 难度带 / 首遇教学位复核——逐项过,随第二批需求卡片执行。 -### ⑲ 生涯页目检(迭代 18 卡④生涯界面实装批·期一随批登记——主菜单新增一级只读页+存档 v6) +### ⑲ 生涯页目检(迭代 18 卡④生涯界面实装批·期一顺带登记——主菜单新增一级只读页+存档 v6) - **入口与开合**:主菜单「营地与系统」组出现「生涯」钮(营地钮与设置钮之间);点击开全屏页、点「返回」回主菜单(继续上局钮可见性随开合正确恢复)。 -- **页呈现两类六项**:组一·冒险战绩(冒险总局数 / 通关局数〔括注「三关全通」〕 / 各关通关次数〔一行三关,关名带层号〕 / Boss 首杀〔X/3 关〕 / Boss 总击杀);组二·资源(钥石余额徽)——数值与存档实况一致(对照:玩几局后总局数含放弃与失败、三关全通才计通关)。〔原「属性锻造已购合计」「天赋树已购概览」两观测项随生涯页三投影删除摘除——2026-10-12 用户裁⑧,天赋树实装批随批〕 +- **页呈现两类六项**:组一·冒险战绩(冒险总局数 / 通关局数〔括注「三关全通」〕 / 各关通关次数〔一行三关,关名带层号〕 / Boss 首杀〔X/3 关〕 / Boss 总击杀);组二·资源(钥石余额徽)——数值与存档实况一致(对照:玩几局后总局数含放弃与失败、三关全通才计通关)。〔原「属性锻造已购合计」「天赋树已购概览」两观测项随生涯页三投影删除摘除——2026-10-12 用户裁⑧,天赋树实装批顺带〕 - **旧档载入**:v5 现役档(升级前存档)载入后生涯页正常显示,总局数/通关局数从 0 起计(终身计数域 v6 新增,缺省补零),钥石等既有进度原样。 - **零跳转与局内零入口**:页内除「返回」外无任何前往他处的按钮;冒险进行中(战斗屏/关卡地图屏/状态面板)无生涯入口。 - **对比度与零动效**:页文字亮墨族在深棕底上可读(机检 3 对已入 ui_contrast 闸);开页/关页无过渡动画。 -- **红灯信号**:计数与实玩局数对不上(收束入账重复或漏计);旧档载入报错或计数域显示异常;页内出现购买/跳转入口;入口在局内可点。 +- **红灯信号**:计数与实玩局数对不上(收束入账重复或漏计);旧档载入返回错误或计数域显示异常;页内出现购买/跳转入口;入口在局内可点。 - **结论回流**:呈现问题归生涯批后续修正(本批需求卡片 v1.2 在案);「通关局数」口径如与体感冲突=P1 甲裁决复核(三关全通才计 1,用户已裁);期二内容(历史回看/图鉴)缺位属分期计划非缺陷。 -### ⑳ 营地统一四柜台目检(迭代 21 天赋树实装批随批登记——V22 人闸;2026-10-12) +### ⑳ 营地统一四柜台目检(迭代 21 天赋树实装批顺带登记——V22 人闸;2026-10-12) - **四柜台并排**:树淬炼柜台=主界面(脊柱两行一线一节点行板+Fork 三行双态切换钮+脉分组头);锻造工坊柜台未点亮=锁定态、点亮=展开零交互占位面板;秘宝匣柜台未点亮=锁定态、点亮=展开(工坊六行+同调装配段+Y 升级行);图鉴常开独立位;宽度不足横向滚动。 - **树购买交互**:余额不足购买钮态、行门槛/前置拦截 toast、购买后行板即时刷新(Lv/钮禁用态)。 @@ -204,7 +204,7 @@ - 验证方式:用户实机目检(本批自动闸外唯一人闸)。 - **✅ 已核销(2026-10-14)**:用户实机目检回报完成,未呈报问题(qa 收尾批)。 -### ㉑ 秘宝解锁-装配正常流程体验(迭代 22 秘宝体系实现重构落地批随批登记——2026-10-12) +### ㉑ 秘宝解锁-装配正常流程体验(迭代 22 秘宝体系实现重构落地批顺带登记——2026-10-12) - **解锁面**:攒钥石→秘宝匣柜台钥石购买(余额不足钮禁用、购买后行板即时刷新为已解锁);条件件进度呈现(远程镐=通关 1 次/刷新执照=Boss 击杀 3 次/天眼=通关 3 且 Boss 4/信标网络=真视使用 10——达标未解锁时开营地/冒险收束即自动入账)。 - **装配面**:槽位=树同调位点亮数(未点亮树=0 槽不能装配);件档≤格档(普通/优秀/稀有递增向下兼容——稀有件装普通格被拒);未解锁件装配钮禁用;满位禁选。 @@ -213,7 +213,7 @@ - 验证方式:用户实机目检(本批自动闸外唯一人闸;能力验证半已由自动化闸覆盖=V1-V19)。 - **✅ 已核销(2026-10-14)**:用户实机目检回报完成,未呈报问题(qa 收尾批)。 -### ㉒ 锻造工坊工作间形态与购买交互(迭代 23 锻造工坊实装批随批登记——2026-10-12) +### ㉒ 锻造工坊工作间形态与购买交互(迭代 23 锻造工坊实装批顺带登记——2026-10-12) - **门与形态**:树上「锻造工坊」钥匙未点亮=锁定态(纯文案、无任何可交互购买路径);点亮后工作间展开=武器锻造区/护甲锻造区两区并列,六路线行板(行名=件名+锻造:长剑锻造/长枪锻造/法杖锻造/轻甲锻造/重甲锻造/魔法护甲锻造;每行件名+Lv+解锁态+钮组)。 - **购买面**:已解锁路线「锻造 N 钥石」钮(几何价 20/30/45/67/101 逐级涨);余额不足钮禁用;买后等级+1、行板即时刷新、钥石余额扣减。 @@ -223,7 +223,7 @@ - 验证方式:用户实机目检(本批自动闸外唯一人闸;能力验证半已由自动化闸覆盖=V1-V14)。 - **✅ 已核销(2026-10-14)**:用户实机目检回报完成,未呈报问题(qa 收尾批)。 -### ㉓ 敌人表内容修批三观测(迭代 24 敌人表内容修批随批登记——2026-10-13) +### ㉓ 敌人表内容修批三观测(迭代 24 敌人表内容修批顺带登记——2026-10-13) - **新招可见性**:第二关与第三关的普通战斗(非 Boss)是否真的见到「第一关没见过」的招式——巨蜘蛛族毒吐((2,5) 起投,首遇位 (2,4) 不投)、灰矮人族盾击((3,0)/(3,5)/(3,7));不是只有 Boss 变花。 - **甲型体感**:营地选重甲进战斗,挨打是否比选轻甲**可感知地**轻一点(敌方攻击查矩阵 −1);选魔法护甲是否更疼(+1)。 @@ -231,17 +231,17 @@ - 验证方式:用户实机目检(登记不阻塞——2026-10-12 真人检测立规;能力验证半已由自动化闸覆盖=V1-V7)。 - **✅ 已核销(2026-10-14)**:用户实机目检回报完成,未呈报问题(qa 收尾批)。 -### ㉔ UI 全局主题批全屏巡检(迭代 25 UI 全局主题批随批登记——2026-10-13) +### ㉔ UI 全局主题批全屏巡检(迭代 25 UI 全局主题批顺带登记——2026-10-13) - **引擎默认灰清零巡检**:营地三处滚动容器(含右侧竖滚条)、战斗日志/结算回看的自动滚动条、设置面音量滑轨、各屏悬停气泡(含标题屏深底气泡承旧观感)、调试浮窗种子输入框/批量模拟数/输出区、全屏 15 处分隔线——逐屏看过,应无引擎默认灰色圆角现代风残留。 -- **音量滑轨两段可辨**:把主音量拖到中点,已填充段(深棕)与未填充段(暖石)是否一眼可辨(本批销号 06 第三层①的实机判据)。 +- **音量滑轨两段可辨**:把主音量拖到中点,已填充段(深棕)与未填充段(暖石)是否一眼可辨(本批注销 06 第三层①的实机判据)。 - **专项观察点 1·滑轨柄是否抢焦点**:设置屏上滑轨柄(烛光黄方柄)是否比「关闭」按钮还抢眼——若是,走 L2 微调(候选降档 STONE 灰石系;色值已冻结,目检前不改)。 - **专项观察点 2·滚动条槽是否看得见**:滚得动的内容里,能否一眼看出滚动条在哪(槽=BG_OVERLAY α0.35)——若否,走 L2 微调(候选提不透明度或改取 SLOT_BACKDROP)。 - **预盖件无实役(登记注记)**:CheckBox / CheckButton / OptionButton 及其弹层 PopupMenu 游戏零使用,本批仅预盖(冒烟 V3 已有运行时证词)——无需目检,备案待未来批次启用时复查。 - 验证方式:用户实机目检(登记不阻塞——2026-10-12 真人检测立规;能力验证半已由自动化闸覆盖=冒烟 V1-V6)。 - **✅ 已核销(2026-10-14)**:用户实机目检回报完成,未呈报问题(qa 收尾批)。 -### ㉕ UI 交互与观感批逐屏巡检(迭代 26 UI 交互与观感批随批登记——2026-10-14) +### ㉕ UI 交互与观感批逐屏巡检(迭代 26 UI 交互与观感批顺带登记——2026-10-14) - **按钮五态反馈**:标题屏/营地/商店/设置/三选一逐屏——鼠标悬停(石纹钮应有可感提亮;主钮/危险钮承现行提亮档)、按下(本族下沉:石纹按压图/烛光黄深档/深红深档)、禁用(余额不足的商店购买钮=本族底幽灵化,非旧「灰头灰脑按不下去」观感)三种反馈均应可感。 - **键盘焦点环**:Tab 遍历各屏按钮,焦点环(INK 2px 内缩 1px)应可见不糊、不遮钮底字;三类钮底(石纹/烛光黄/深红)上环的可辨性实比。 @@ -253,11 +253,11 @@ ## 验收读数重测义务(履行留痕 + 现行义务) -**已履行**(按序换代,旧读数各随其批作废留痕不入本单):①验收读数重测批(2026-09-19——Boss 单独出列/承伤带/通关率基线全量重测,硬化翻倍期·乏力死效果期·充能期旧读数作废);②迭代 5 基线重测(统一随机流后 MC+verifier 双窗);③**数值修复批新尺重测(2026-10-01)**——模拟档位重构后全量重测,新锚 `sim-data/runsum_numfix_final_n200_20261001.jsonl`,全旧带作废只测不判(numfix 报告(已退役,git 历史可查));④**迭代 10 奖励重构批重锚(2026-10-01)**——四代锚 77000/78000/79000/80000(改前/重构后/共享池后/掷定前置后,各 400 局),普通 L1 41.8%/L2 10.2% 带内(迭代10通关率读数(已退役,git 历史可查));⑤**T19 真人标定局收口(2026-10-03 用户裁)**——有效局 2(1 通关 1 死于 L3 首战,T19真人试玩读数(已退役,git 历史可查)),用户裁定**佐证级收口不再补局**;k 预期带同日立(**正常 >0.5、预警 <0.3**),字段随 81000 重锚入库后补算终值。 +**已履行**(按序换代,旧读数各随其批作废留痕不入本单):①验收读数重测批(2026-09-19——Boss 单独出列/承伤带/通关率基线全量重测,硬化翻倍期·乏力死效果期·充能期旧读数作废);②迭代 5 基线重测(统一随机流后 MC+verifier 双窗);③**数值修复批新尺重测(2026-10-01)**——模拟档位重构后全量重测,新锚 `sim-data/runsum_numfix_final_n200_20261001.jsonl`,全旧带作废只测不判(numfix 报告(已退役,git 历史可查));④**迭代 10 奖励重构批重锚(2026-10-01)**——四代锚 77000/78000/79000/80000(改前/重构后/共享池后/掷定前置后,各 400 局),普通 L1 41.8%/L2 10.2% 带内(迭代10通关率读数(已退役,git 历史可查));⑤**T19 真人标定局完成(2026-10-03 用户裁)**——有效局 2(1 通关 1 死于 L3 首战,T19真人试玩读数(已退役,git 历史可查)),用户裁定**佐证级完成不再补局**;k 预期带同日立(**正常 >0.5、预警 <0.3**),字段随 81000 重锚入库后补算终值。 -**现行义务**:**T7 技能池节奏重测(2026-10-05 技能池执行批挂单)**——≥50 distinct seeds 节奏重测(过涝判读带=Boss 半血后特殊技密度上探;跑批须用户批准;S2 过涝越带→解锁技权重/倍率回调呈报禁自动调;**2026-10-06 联审批注:判读带立单于案C 行为换代前,执行前须按案C 新行为复核「半血后」窗口与密度分母是否仍有效,失权即停机呈报重立带**)→ ~~T19 真人标定局~~(⑤已收口)→ 真人侧读数换 81000 锚补算 k 终值(随迭代 9 出口重锚批出,模拟锚 2026-09-19 判读报告的现行锚地位由 81000 锚+真人两局承接)。工具面:`analyze_playtest.py` / `balance_verifier.py` 冒险段 / JSONL 日志现役。 +**现行义务**:**T7 技能池节奏重测(2026-10-05 技能池执行批挂单)**——≥50 distinct seeds 节奏重测(过涝判读带=Boss 半血后特殊技密度上探;跑批须用户批准;S2 过涝越带→解锁技权重/倍率回调呈报禁自动调;**2026-10-06 联审批注:判读带立单于案C 行为换代前,执行前须按案C 新行为复核「半血后」窗口与密度分母是否仍有效,失权即停机呈报重立带**)→ ~~T19 真人标定局~~(⑤已完成)→ 真人侧读数换 81000 锚补算 k 终值(随迭代 9 出口重锚批出,模拟锚 2026-09-19 判读报告的现行锚地位由 81000 锚+真人两局承接)。工具面:`analyze_playtest.py` / `balance_verifier.py` 冒险段 / JSONL 日志现役。 -**后续内容批义务(2026-10-06 敌人表行集多行批 P3 丙二裁挂单)**:首个混编遭遇行投放(连同 Boss 多行内容,敌种候选与坐标由内容批裁)——投时 MC 取证先报批(数值验证场景二档起)、难度带读数义务随投登记、首遇教学位纪律与 expect_pools 断言面逐项复核(巨蜘蛛首遇位「固定 2 不加骰」等表注释为准)、Boss 多行投放时 Boss 名取首行显示/Boss 遭遇骰逐行区间骰〔每行各掷自己区间——2026-10-07 卡① Q8 逐行骰换代,旧「读首行区间」口径消解〕/半血解锁/独占技/难度带六面读数逐项过。——**已编入 roadmap 迭代 18 卡⑤混编遭遇首批投放批(2026-10-06 用户令;读数义务维持随批登记,MC 取证跑批顺延 Alpha 收官 M4 数值批统一执行〔未排期,届时另令——数值统一调整殿后〕)。进展:首批已于 2026-10-07 落表((2,5) 双行,目检与读数义务见 ⑱);剩余面 = Boss 多行第二批(六面读数随投逐项过)** +**后续内容批义务(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 多行第二批(六面读数随投逐项过)** ## 版本历史 @@ -275,11 +275,12 @@ | 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 处 | -## ㉖ 代码架构技术债修复批——全流程走查(迭代 27 卡①随批登记;能力验证半=冒烟 V1-V9+parity 三变体逐位一致对拍五跑全同) +## ㉖ 代码架构技术债修复批——全流程走查(迭代 27 卡①顺带登记;能力验证半=冒烟 V1-V9+parity 三变体逐位一致、与基线数据逐项比对五跑全同) -> 场景拆分+会话物化+战斗域重构+账本收口+模态协议内聚后,玩家可见面唯一验收=观感零变化。登记不阻塞(2026-10-12 真人检测立规)。 +> 场景拆分+会话物化+战斗域重构+账本完成+模态协议内聚后,玩家可见面唯一验收=观感零变化。登记不阻塞(2026-10-12 真人检测立规)。 | # | 目检项 | 判据 | |---|---|---| @@ -291,7 +292,7 @@ --- -## ㉗ 启动装配与生命周期验收补全批——启动态菜单目检(迭代 28 卡①随批登记;能力验证半=冒烟 V1a-d/V2a-f/V3a-i+启动态菜单 golden 逐像素) +## ㉗ 启动装配与生命周期验收补全批——启动态菜单目检(迭代 28 卡①顺带登记;能力验证半=冒烟 V1a-d/V2a-f/V3a-i+启动态菜单 golden 逐像素) > 装配顺序修复(冒险屏先挂、菜单屏后挂)后,**启动即见的那一屏**是本批唯一玩家可见行为变更。自动化闸只能证明「顶层是谁」与「逐像素未变」,真机上「看着对不对、点不点得动」仍需人眼。登记不阻塞(2026-10-12 真人检测立规)。 diff --git a/design/gdd/08-Alpha版本标准.md b/design/gdd/08-Alpha版本标准.md index 683c3870..eccfac2d 100644 --- a/design/gdd/08-Alpha版本标准.md +++ b/design/gdd/08-Alpha版本标准.md @@ -2,7 +2,7 @@ > **一句话定位**:本文定义这个项目的 **Alpha 版本包含哪些东西**——它是里程碑 M3 的完成标准,也是判断"还差什么"的对照表。 > **本文只列条目,不写内容**:每样东西是什么、规则怎么走,一律归各自的权威文档,本文只给指路链接。想知道某样东西的定义,请点链接,不要在本文里找解释。 -> **状态**:**已定稿(v1.2)**——2026-10-13 用户令定稿(v1.0),同日按用户裁决增补界面美化八条、升版 v1.1;同日迭代 24 卡①机械面摘除敌种池待修行注、升版 v1.2(见文末版本历史)。Alpha 的内容范围自此冻结:增删条目一律须经用户裁决,并记入文末版本历史。 +> **状态**:**已定稿(v1.4)**——2026-10-13 用户令定稿(v1.0),同日升版 v1.1(界面美化八条)与 v1.2(敌种池行注摘除);v1.3/v1.4 为迭代 25/26 完成回填(见文末版本历史)。Alpha 的内容范围自此冻结:增删条目一律须经用户裁决,并记入文末版本历史。 > **成文**:2026-10-13。 ## 本文怎么用 @@ -12,7 +12,7 @@ - 想知道哪些还没定 → 读最后一节「未决项」。 - **Alpha 完成的判据**:本文所有条目的现状都是「在役」,且「未决项」一节为空。 -现状一列的取值只有三种:**在役**(已实装可玩)、**待做**(已定要进 Alpha、尚未实装)、**待裁**(要不要进 Alpha 还没定,见「未决项」)。 +现状一列的取值只有四种:**在役**(已实装可玩)、**部分在役**(条目拆半:已实装部分与未结部分在同一格并注,注内写明两半)、**待做**(已定要进 Alpha、尚未实装)、**待裁**(要不要进 Alpha 还没定,见「未决项」)。 --- @@ -158,7 +158,7 @@ | UI 字体补完(拉丁像素字专件 + 字重两档) | [美术圣经](../art/art-bible.md) §7.4 | 待做 | | 战斗一屏样张(界面美术的终稿闸) | [美术圣经](../art/art-bible.md) §1.4 | 待做 | | UI 氛围层与九宫格切片观感修 | [06-待办清单](06-待办清单.md) | 部分在役(迭代 26 · 2026-10-14:光柱硬边半已修=连续 alpha 渐变;九宫格切片错位半未结——待素材尺寸核对,属美术线连带面) | -| UI 元素细节修(滑轨填充 / 图标垫块 / 留白 / 开发件外泄) | [06-待办清单](06-待办清单.md) | 在役(迭代 26 · 2026-10-14 入库:①滑轨填充随迭代 25 销号;余②图标垫块明度差降档/③商店+营地布局修/④诊断钮迁调试浮窗 全落地) | +| UI 元素细节修(滑轨填充 / 图标垫块 / 留白 / 开发件外泄) | [06-待办清单](06-待办清单.md) | 在役(迭代 26 · 2026-10-14 入库:①滑轨填充随迭代 25 注销;余②图标垫块明度差降档/③商店+营地布局修/④诊断钮迁调试浮窗 全落地) | --- @@ -224,3 +224,4 @@ | 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 不含」零触碰 | diff --git a/design/gdd/systems/冒险循环/关卡节点图生成.md b/design/gdd/systems/冒险循环/关卡节点图生成.md index 51e1465b..8ad53526 100644 --- a/design/gdd/systems/冒险循环/关卡节点图生成.md +++ b/design/gdd/systems/冒险循环/关卡节点图生成.md @@ -101,8 +101,8 @@ | 台阶 | 内容 | 前置条件 | |---|---|---| | 一:图模板抽签 | 每关模板池 N≥1,逐局从池中抽一张手工模板实例化 | 测量对账条款先行(见下节);每张新模板按内容纪律配齐数值行 | -| 二:骨架固定+属性随机 | 模板拓扑定型,节点类型在**候选槽位**(本文含义:模板给某个可变位列出的允许节点类型集合,实例化时从集合内均匀掷一个——例:某槽位允许{奖励,恢复},掷中哪个就是哪个)内掷定 | 台阶一收口;商店房所在位排除出候选槽位(保必经位) | -| 三:全程序生成 | 读参数(深度、分支密度、节点类型配比)直接构造图,构造失败重掷(重掷预算同棋盘生成 max_gen_attempts 纪律) | 台阶二收口;图合法性校验作最终守门 | +| 二:骨架固定+属性随机 | 模板拓扑定型,节点类型在**候选槽位**(本文含义:模板给某个可变位列出的允许节点类型集合,实例化时从集合内均匀掷一个——例:某槽位允许{奖励,恢复},掷中哪个就是哪个)内掷定 | 台阶一完成;商店房所在位排除出候选槽位(保必经位) | +| 三:全程序生成 | 读参数(深度、分支密度、节点类型配比)直接构造图,构造失败重掷(重掷预算同棋盘生成 max_gen_attempts 纪律) | 台阶二完成;图合法性校验作最终守门 | 台阶二的随机量入账:候选槽位掷定消费同一条图模板抽签流的后续 scope,计数器域照旧覆盖,可复现性零损失。台阶三的参数取值域届时随本文修订登记,本草案不预设。 @@ -113,8 +113,8 @@ **人话阶段**:2026-09-21 呈报暂缓的三理由之一是"污染 MC 读数"——模拟试玩与数值验证的通关率是按固定图测的,图一随机,读数波动就混进了布局差异。本节是消解条款,三条: 1. **分层出数**:模拟试玩与数值验证工具的读数按「关卡 × 图模板」分层记录;混合池的整体通关率 = 各模板条件通关率的加权平均(权重 = 抽中概率,均匀池即算术平均)。 -2. **基线可比**:基线批(对拍、重投)跑固定模板口径——把池临时缩到 N=1(回滚档)或固定抽签 scope,保证新旧基线在同一张图上对话。 -3. **实施门**:随机量(扩池)上线排在[难度曲线与Boss](难度曲线与Boss.md)曲线调参批收口之后——现行行值 provisional 收带前叠加布局随机,归因会失真;抽签机制本身可先行落地(池保持 N=1 行为零变化,见拍板点③选项 C)。 +2. **基线可比**:基线批(与基线数据逐项比对、重投)跑固定模板口径——把池临时缩到 N=1(回滚档)或固定抽签 scope,保证新旧基线在同一张图上对话。 +3. **实施门**:随机量(扩池)上线排在[难度曲线与Boss](难度曲线与Boss.md)曲线调参批完成之后——现行行值 provisional 收带前叠加布局随机,归因会失真;抽签机制本身可先行落地(池保持 N=1 行为零变化,见拍板点③选项 C)。 另两条暂缓理由随批消解:**类型集未稳**——五类节点封闭枚举已随商店房批定稿,扩类走文档修订的既有通道对模板同样适用(模板 schema 跟随枚举走);**内容量不足**——台阶一的模板就是内容批,按内容批节奏逐张走,不设批量生产目标。 @@ -154,8 +154,8 @@ | 选项 | 内容 | 后果 | |---|---|---| -| A 机制+骨架立即全上 | 现在做完整内容批(含扩池到 5 张) | 曲线调参批未收口,数值基线在动;地图一随机,模拟读数的波动归因变难(数值动了还是图动了分不清) | -| B 全部等调参批收口(v0.1 原荐) | 机制与内容都排在曲线调参批后 | 读数对账最干净;机制落地要等 | +| A 机制+骨架立即全上 | 现在做完整内容批(含扩池到 5 张) | 曲线调参批未完成,数值基线在动;地图一随机,模拟读数的波动归因变难(数值动了还是图动了分不清) | +| B 全部等调参批完成(v0.1 原荐) | 机制与内容都排在曲线调参批后 | 读数对账最干净;机制落地要等 | | C 机制先行、骨架随后(原荐) | 先落抽签机制但每关池暂放 1 张现行图(行为零变化),骨架内容批画好后一次扩到 5 张——扩池时点守测量对账实施门 | 机制与内容解耦:扩池前读数零污染,扩池后分层出数条款接管;不用等调参批 | ## 依赖与输出 @@ -166,7 +166,7 @@ |---|---|---| | 上游 | [冒险结构](冒险结构.md) | 开始关卡流程是抽签时点的宿主;主种子与派生流的语义权威;行集内容责任方(模板内容归它) | | 上游 | [数据配置](../表现与支撑/数据配置.md) | 关卡表模板池列的承载与统一读取;node_map 统一流用途标签(扩签已落地 v0.5)与流种子派生公式的基础设施 | -| 上游 | [难度曲线与Boss](难度曲线与Boss.md) | 模板内遭遇数值的所有权;曲线调参批收口是台阶一的实施门 | +| 上游 | [难度曲线与Boss](难度曲线与Boss.md) | 模板内遭遇数值的所有权;曲线调参批完成是台阶一的实施门 | | 下游 | [关卡节点地图](关卡节点地图.md) | 实例化行集的供给方;其图合法性校验与全部行进规则零改动 | | 下游 | [存档序列化](../表现与支撑/存档序列化.md) | 抽签 scope 计数器入既有快照契约(主种子 + 流计数器),零新增域;「首次冒险已进行」布尔位为唯一新增存档字段(实施批落 schema) | | 下游 | [HUD框架](../表现与支撑/HUD框架.md) | 零新语义——节点态照旧读图,模板差异对呈现层透明 | @@ -186,8 +186,8 @@ | 优先级 | 内容 | 后置原因 | |---|---|---| -| P1 | 台阶二:骨架固定+属性随机(候选槽位掷定) | 台阶一收口后另批立项;商店必经位的槽位排除规则随批成文 | -| P2 | 台阶三:全程序生成(参数化构造) | 台阶二收口后另批立项;参数取值域与重掷预算随批修订本文 | +| P1 | 台阶二:骨架固定+属性随机(候选槽位掷定) | 台阶一完成后另批立项;商店必经位的槽位排除规则随批成文 | +| P2 | 台阶三:全程序生成(参数化构造) | 台阶二完成后另批立项;参数取值域与重掷预算随批修订本文 | ## 调参表 @@ -198,7 +198,7 @@ | 模板池大小 N | int [1,+∞),关卡表逐关行 | 每关 5(2026-09-27 拍板点④;2026-09-28 台阶一实施批落地,3 关 × 5) | N=1 = 回滚档;扩池 = 内容批 | | 重掷预算(台阶三) | 未立项不设值 | — | 台阶三立项时随本文修订登记 | -## 验收标准(草案——随拍板点裁决收口,实施批落地时按本节验收) +## 验收标准(草案——随拍板点裁决完成,实施批落地时按本节验收) - 池内全模板加载期通过图合法性校验,违规致命(校验面不只抽中的那张)。 - 抽签确定性:同主种子同操作序列逐位同一张图;抽签 scope 可独立回放。 @@ -224,3 +224,4 @@ | 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 e5a57f6e..cfcb3548 100644 --- a/design/gdd/systems/冒险循环/关卡节点地图.md +++ b/design/gdd/systems/冒险循环/关卡节点地图.md @@ -5,7 +5,7 @@ ## 设计目的 -一关不是一场战斗,而是若干**节点**(本文含义:关卡内移动的步进单位,画在图上就是一个格)连成的一张**节点图**。玩家从一个入口出发,在每个路口看着几条路选一条走——这条路上有要打的仗、有开奖励的房间、有能歇脚的篝火——最后所有路线汇到关底 Boss。关卡节点地图管的就是这张图上的"走":怎么选路、走到每种节点上发生什么、Boss 分出胜负后怎么把这一关的结局交回去。 +一关不是一场战斗,而是由关卡表配置的一组**节点**(本文含义:关卡内移动的步进单位,画在图上就是一个格)连成的一张**节点图**。玩家从一个入口出发,在每个路口看着几条路选一条走——这条路上有要打的仗、有开奖励的房间、有能歇脚的篝火——最后所有路线汇到关底 Boss。关卡节点地图管的就是这张图上的"走":怎么选路、走到每种节点上发生什么、Boss 分出胜负后怎么把这一关的结局交回去。 用循环的层次说:冒险是外层骨架,关卡是**中循环**,战斗是**小循环**。本文管中循环——图怎么编排、怎么走、每类节点到达时触发什么;一场战斗内部发生什么全部归小循环(战斗结算与敌人系统),本文把控制流移交给它之后就不再看里面。它是[冒险结构](冒险结构.md)(序列、大奖励、重开)与战斗循环(结算与敌人)之间的行进层。 @@ -191,3 +191,4 @@ Boss 兑付(胜利或英雄死亡)触发关卡收束点,此后不再有选 | 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 处**——设计目的首句「若干节点」改「由关卡表配置的一组节点」(「若干」→写明数值出处:节点构成与数量读关卡表行集)。机制与数值零改动 | diff --git a/design/gdd/systems/冒险循环/冒险结构.md b/design/gdd/systems/冒险循环/冒险结构.md index b5c1a24b..58d372db 100644 --- a/design/gdd/systems/冒险循环/冒险结构.md +++ b/design/gdd/systems/冒险循环/冒险结构.md @@ -49,7 +49,7 @@ ### 冒险的一生:开始、推进与三种结局 -"冒险"在本文是一个计量单位:玩家从开始新冒险到出局结算的一段完整游玩,由若干关卡串成,全程只有一条命。冒险任何时刻恰处三种状态之一:待机(还没开始,或上一局已结算完毕)、进行中(某一关正在推进)、结算中(一关刚宣布结束,正在算通关兑付与结局)。 +"冒险"在本文是一个计量单位:玩家从开始新冒险到出局结算的一段完整游玩,由三关串成(关数读关卡表),全程只有一条命。冒险任何时刻恰处三种状态之一:待机(还没开始,或上一局已结算完毕)、进行中(某一关正在推进)、结算中(一关刚宣布结束,正在算通关兑付与结局)。 ``` 待机 ──(开始新冒险:注入主种子、生命回满、进第 1 关)──▶ 进行中 @@ -77,7 +77,7 @@ MVP 的序列是三关线性:地精洞窟→幽暗地域→灰矮人矿城(2 三关序列均已生效(2026-09-21 冒险结构实现批起;L2 行值随分支节点图批、L3 随第三关内容批落地,见[难度曲线与Boss](难度曲线与Boss.md))。 -加关纪律:加一关等于一个内容批——节点链行、敌我数值、新元素必须同批落,禁止只加序列不加内容。行集里每个战斗与关底节点都必须在敌人、棋盘生成的数值表里有精确行,冒烟期校验;越界关卡按内容生产缺口拦截。运行期对越界的开始关卡请求与缺失的关卡行一律报错停机——那是配置违约,不是玩家能碰到的状态,不做兜底吞掉。 +加关纪律:加一关等于一个内容批——节点链行、敌我数值、新元素必须同批落,禁止只加序列不加内容。行集里每个战斗与关底节点都必须在敌人、棋盘生成的数值表里有精确行,冒烟期校验;越界关卡按内容生产缺口拦截。运行期对越界的开始关卡请求与缺失的关卡行一律返回错误并停机——那是配置违约,不是玩家能碰到的状态,不做兜底吞掉。 序列的难度排布消费难度曲线与Boss的逐关通关率带。整局难度由长度叠加: @@ -138,9 +138,9 @@ GP(显示名「金币」)是冒险内的一次性属性提升货币:战斗 **独立资源口径**(框架见[核心循环](../../01-核心循环.md)「生命周期轴」节):GP 与钥石是两条平行独立资源,不立统一上位概念——GP=冒险级独立资源账(本节),钥石=存档级账(归[元进度](../跨局循环/元进度.md))。各层对 GP 的兑付都是**一次性转换入账**:转换源(奇物 GP 袋、格面 gp 型等)结算即消尽,只有钱包长存——这是「类A→类C」的转换关系,不是「奖励横跨多层」。 -钱包只有三个收口: +钱包只有三个收支口: -| 收口 | 方向 | 规则 | +| 收支口 | 方向 | 规则 | |---|---|---| | 战斗完成 | 入 | 每完成一场战斗统一到账一次:金额 = 掉落掷定 + 关级掉落加值 + 本战战斗内缓冲,随战斗结束信号携带的 gp_dropped 一笔入账 | | 商店购买 | 出 | 商店房购买按现行价扣减钱包,余额不足拒绝。价格公式(**v0.13 换代——pool 模式现行**):ceil(基价 × b^(关序−1) × A^(本次进店已购次数)),A=店内递增/b=跨关递增表因子(provisional 1.8/1.1),ceil 向上单一取整(玩家不利向,杜绝「差 1 GP 反复钓」套利角);legacy 固定三件模式(shop=off 对照承载)沿用旧式 = 基价 + 关级价格加成 + 步长 × 已购档数 | @@ -152,7 +152,7 @@ GP(显示名「金币」)是冒险内的一次性属性提升货币:战斗 掉落掷定消费 gp_drop 封闭随机流(主种子派生、可回放)。**商店货架抽签消费 shop_draw 封闭随机流**(v0.13 扩签——每次抽 3〔进店+每次买后重抽〕恰一 scope,与 reward_pick 分签防取数序互扰)。掉落与价格的现行行值读商店表(registry 为准),数值所有权归[难度曲线与Boss](难度曲线与Boss.md)曲线调参批——本批骨架先行,全部数值 provisional。 -**共享池账本(v0.13 P1 共享池单点;v0.14 令牌库换代;迭代 20 案D 四级 104 张——池机制事实源=[奇物](奇物.md)「池结构与抽取」节)**:商店货架与奖励节点三选一是**同一个池**——货架候选 = 池∖{GP 袋, 刷新件}∪{凭证} = {攻击, 生命上限, 护甲, 行动点, 回复, 凭证} 六种(GP 袋计价物不自售切边、刷新件不上货架、秘宝件已随同调批出池;凭证与回复随迭代15② 入架——shop.tres pool_shelf 六行);**库存 = 剩余令牌数**(TP0——「池消耗即上限」,种类次数上限退役,与奖励兑付摘牌同一令牌库承载,全冒险一次性跨关卡不补给):商店买一件,奖励面就少一枚;「无限购买」收敛为**钱尽或池空为止**(池空=硬闸、A 链爬价=软闸),空货架合法态。货架 = **令牌级抽签**(同 kind 去重每 kind 至多一卡,价格公式 tier-blind 维持批②裁定,购买消费在架令牌本体 kind+tier)。两渠道不得各自私记库存——消费走同一入口写同一令牌库(实现=AdventureRunner._bonus_deck 单点,冒险结构 owner;kind 维度派生计数 _bonus_taken 承载断点附随件与读数)。**货架独立刷新(v0.15 MC-1 2026-10-04——P-C2+Q2 裁)**:进店免费刷新次数(基础 0,天赋/营地侧增益位预留)用尽后 GP 付费刷新(ceil(20×1.8^已付费刷) provisional——调参表旋钮 shop_refresh_*);重抽=同 pool_draw 共享池抽签(shop_draw 恰一新 scope),池空=不可刷新合法态;进店/离开双向清零付费刷计数。**三选一同款付费档(v0.16 2026-10-06 用户令——刷新对齐商店)**:三选一免费双源(刷新件 X/冒险池 Y,机制现行事实源=[秘宝](../跨局循环/秘宝.md)三选一刷新双源节)用尽后 GP 付费刷新——读同 shop_refresh_* 两旋钮(单点调参)、扣同一 GP 冒险账本(LevelRunner.spend_gp 单口)、重抽同 reward_pick 共享池抽签;付费刷计数每停点清零(与进店清零同构);钮常驻选择态、免费与付费两源皆穷=禁用。 +**共享池账本(v0.13 P1 共享池单点;v0.14 令牌库换代;迭代 20 案D 四级 104 张——池机制事实源=[奇物](奇物.md)「池结构与抽取」节)**:商店货架与奖励节点三选一是**同一个池**——货架候选 = 池∖{GP 袋, 刷新件}∪{凭证} = {攻击, 生命上限, 护甲, 行动点, 回复, 凭证} 六种(GP 袋计价物不自售切边、刷新件不上货架、秘宝件已随同调批出池;凭证与回复随迭代15② 入架——shop.tres pool_shelf 六行);**库存 = 剩余令牌数**(TP0——「池消耗即上限」,种类次数上限退役,与奖励兑付摘牌同一令牌库承载,全冒险一次性跨关卡不补给):商店买一件,奖励面就少一枚;「无限购买」收敛为**钱尽或池空为止**(池空=硬闸、A 链爬价=软闸),空货架合法态。货架 = **令牌级抽签**(同 kind 去重每 kind 至多一卡,价格公式 tier-blind 维持批②裁定,购买消费在架令牌本体 kind+tier)。禁止两渠道各自私记库存——消费走同一入口写同一令牌库(实现=AdventureRunner._bonus_deck 单点,冒险结构 owner;kind 维度派生计数 _bonus_taken 承载断点附随件与读数)。**货架独立刷新(v0.15 MC-1 2026-10-04——P-C2+Q2 裁)**:进店免费刷新次数(基础 0,天赋/营地侧增益位预留)用尽后 GP 付费刷新(ceil(20×1.8^已付费刷) provisional——调参表旋钮 shop_refresh_*);重抽=同 pool_draw 共享池抽签(shop_draw 恰一新 scope),池空=不可刷新合法态;进店/离开双向清零付费刷计数。**三选一同款付费档(v0.16 2026-10-06 用户令——刷新对齐商店)**:三选一免费双源(刷新件 X/冒险池 Y,机制现行事实源=[秘宝](../跨局循环/秘宝.md)三选一刷新双源节)用尽后 GP 付费刷新——读同 shop_refresh_* 两旋钮(单点调参)、扣同一 GP 冒险账本(LevelRunner.spend_gp 单口)、重抽同 reward_pick 共享池抽签;付费刷计数每停点清零(与进店清零同构);钮常驻选择态、免费与付费两源皆穷=禁用。 ### 关卡大奖励:通关回血 + 专长三选一(钥石退役出大奖励) @@ -170,7 +170,7 @@ GP(显示名「金币」)是冒险内的一次性属性提升货币:战斗 **奖励节点三选一池(结构层——池机制事实源=[奇物](奇物.md)「池结构与抽取」节,2026-10-11 迭代 20 案D 换代)**:池 = 四级令牌库 70/25/9/0=104 张(案D——普通打底/优秀·稀有做翼/传说惊喜位空集;曝光槽 = 三选一 2 格全池 + 1 格优秀档以上子池,令牌 = 出现次数上限、概率与已拿上限解耦;构成数字与抽取细节全读[奇物](奇物.md)与 `adventure.tres`,provisional 归[难度曲线与Boss](难度曲线与Boss.md)曲线调参批,本节零复制)。**池为冒险级单例**(迭代 10 追加批):关卡内奖励节点的三选一与商店货架共享同一令牌库(同库同摘牌),库存 = 剩余令牌数;消费 reward_pick 封闭随机流(主种子派生、[数据配置](../表现与支撑/数据配置.md)口径),同种子同操作序列同三选项可复放;**MC 策略 316-f**:autoplay 1 级优先度=最稀有(rarest>rare>common)、2 级=最左。断点附随件承载池余库逐枚还原;兑付语义归[关卡节点地图](关卡节点地图.md)。 -**秘宝件受同调位约束**(2026-10-09 注:道具件已随迭代 11 第①批 T7 出池——三选一/奖励节点/战斗内渠道现行零道具件投放,下述渠道约束与替换交互无现役触发面,保留作渠道恢复时的契约口径;同调位读数现行事实源=attunement_growth.tres 谓词表实时求值):道具持有上限 = 同调位数。读数源 = 同调位里程碑谓词表 attunement_growth.tres 实时求值(0 起步、硬上限 3、增长 = 通关次数 + Boss 击杀数——同调实施批 2026-10-03 落地,过渡读数源 transitional_sync_slots 已随批退役;原提案八拍板 git 57da58c 已退役)。获取渠道约束形态(迭代 10 过渡承载):三选一道具件超位触发**替换交互**(现有件与新件 N+1 选 N——丢任一原有件腾位收新,或放弃新件不获取;终态恒 ≤ 同调位);奖励节点与战斗内渠道超位**不授予**(候选拒绝 + 掉落沉没,逐行归因留痕)——停点渠道全覆盖的替换交互随同调实施批统一收口(原 06 条目已随收口移除)。 +**秘宝件受同调位约束**(2026-10-09 注:道具件已随迭代 11 第①批 T7 出池——三选一/奖励节点/战斗内渠道现行零道具件投放,下述渠道约束与替换交互无现役触发面,保留作渠道恢复时的契约口径;同调位读数现行事实源=attunement_growth.tres 谓词表实时求值):道具持有上限 = 同调位数。读数源 = 同调位里程碑谓词表 attunement_growth.tres 实时求值(0 起步、硬上限 3、增长 = 通关次数 + Boss 击杀数——同调实施批 2026-10-03 落地,过渡读数源 transitional_sync_slots 已随批退役;原提案八拍板 git 57da58c 已退役)。获取渠道约束形态(迭代 10 过渡承载):三选一道具件超位触发**替换交互**(现有件与新件 N+1 选 N——丢任一原有件腾位收新,或放弃新件不获取;终态恒 ≤ 同调位);奖励节点与战斗内渠道超位**不授予**(候选拒绝 + 掉落沉没,逐行归因留痕)——停点渠道全覆盖的替换交互随同调实施批统一完成(原 06 条目已随收口移除)。 最后一关通关不发三选一与部分回血:没有下一战可受益——只做冒险完成结算,末关 Boss 钥石照常入账。设计意图:清库之后才兑付、末关不兑付,都是从「奖励只朝下一战生效」这一条推出来的。 @@ -182,9 +182,9 @@ GP(显示名「金币」)是冒险内的一次性属性提升货币:战斗 重开 = 全新一轮冒险:注入新主种子、从第一关、满血、空手——不是"重打刚才那一关"。上一局清零的是生命账本、库存与种子;唯一保留面是冒险摘要,它给每次死亡一个可对照的坐标("这局到第二层"),重开因此是新局面而不是复读。 -主动放弃按与失败同型结算:已兑付的三选一件与回血不追回、已到手的保留,摘要标记未打穿。放弃请求只在非战斗期受理,战斗进行中一律拒绝(战斗域单事务在飞)。放弃的界面入口挂在[关卡节点地图](关卡节点地图.md)的选路覆盖层上——选路停点天然是非战斗期,按钮只在冒险模式开放(选路覆盖层只在冒险模式出现);战斗进行中没有选路停点,入口因此天然不可达,拒绝分支仅作防御兜底。 +主动放弃按与失败同型结算:已兑付的三选一件与回血不追回、已到手的保留,摘要标记未打穿。放弃请求只在非战斗期受理,战斗进行中一律拒绝(战斗域单事务执行期间)。放弃的界面入口挂在[关卡节点地图](关卡节点地图.md)的选路覆盖层上——选路停点天然是非战斗期,按钮只在冒险模式开放(选路覆盖层只在冒险模式出现);战斗进行中没有选路停点,入口因此天然不可达,拒绝分支仅作防御兜底。 -主种子(本文含义:冒险开始时注入的一个随机种子,本局全部随机性都派生自它)在冒险开始时注入恰一次。冒险内的雷图生成、奖励抽取、遭遇掷骰与 GP 掉落掷定(消费 gp_drop 封闭流)全部派生自它,冒险内不重置、不逐关播种——早期切片"每关开局各自播种"是没有冒险层时的历史简化,已改写为全冒险单一种子。冒险的可复现域 = 主种子 + 全局取数计数器(统一随机流口径——2026-09-27 七流并一,语义权威归[数据配置](../表现与支撑/数据配置.md)),供复盘与快照(见[存档序列化](../表现与支撑/存档序列化.md))。重开抽到的种子与上一局相同是允许的(随机源范围小,撞种子不算错误),但生成新种子不得复用玩法里的随机数。 +主种子(本文含义:冒险开始时注入的一个随机种子,本局全部随机性都派生自它)在冒险开始时注入恰一次。冒险内的雷图生成、奖励抽取、遭遇掷骰与 GP 掉落掷定(消费 gp_drop 封闭流)全部派生自它,冒险内不重置、不逐关播种——早期切片"每关开局各自播种"是没有冒险层时的历史简化,已改写为全冒险单一种子。冒险的可复现域 = 主种子 + 全局取数计数器(统一随机流口径——ADR-0007 裁丙 2026-09-27 七流并一,语义权威归[数据配置](../表现与支撑/数据配置.md)),供复盘与快照(见[存档序列化](../表现与支撑/存档序列化.md))。重开抽到的种子与上一局相同是允许的(随机源范围小,撞种子不算错误),但生成新种子禁止复用玩法里的随机数。 ### 冒险断点:中断可续玩的停点快照(迭代 8 卡①③) @@ -294,7 +294,7 @@ GP(显示名「金币」)是冒险内的一次性属性提升货币:战斗 - 生效前提未兑现(第二关行缺行):以单关冒险运行(合法态),越界关断言显式跳过而非失败。 - 放弃:战斗中的放弃请求被拒绝;非战斗期放弃按失败同型结算,已获大奖励不追回;放弃入口仅在选路停点呈现且只在冒险模式开放。 - 种子域:冒险内零随机流自开,一切随机派生自主种子(含 GP 掉落掷定的 gp_drop 封闭流);同种子同操作序列两局逐位可复现。 -- GP 账本封闭:钱包只有三个收口——战斗完成入账恰一次(掉落掷定 + 关级加值 + 战斗内缓冲合计)、商店购买出账、冒险收束清零;战斗内缓冲与钱包隔离,战斗进行中钱包零变动。 +- GP 账本封闭:钱包只有三个收支口——战斗完成入账恰一次(掉落掷定 + 关级加值 + 战斗内缓冲合计)、商店购买出账、冒险收束清零;战斗内缓冲与钱包隔离,战斗进行中钱包零变动。 - GP 不留痕:GP 不入 meta 永久进度域、不入冒险摘要;重开后钱包从零开始(唯一豁免 = 断点域瞬态快照,见「冒险断点」节)。 - 加算区同账:商店购买与三选一属性件读同一本统一冒险加算区(四轴);pool 模式购买生命上限只加上限不回当前生命(与三选一件同语义;legacy 对照模式当前生命与上限同步 +Δ);入战参数 = 基础表值 + 加算区累加(覆盖值通道)。 @@ -327,3 +327,4 @@ GP(显示名「金币」)是冒险内的一次性属性提升货币:战斗 | 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 条目已随收口移除」系更名/条目处置记载(对照性文本)按豁免保留 | diff --git a/design/gdd/systems/冒险循环/奇物.md b/design/gdd/systems/冒险循环/奇物.md index ca4adcdf..37680dc7 100644 --- a/design/gdd/systems/冒险循环/奇物.md +++ b/design/gdd/systems/冒险循环/奇物.md @@ -24,7 +24,7 @@ 1. **触发器句式**:每件专长的效果声明为「当 X 时 Y」(on / when / do 三字段,词表=效果引擎封闭集)。件的性格来自它挂在哪个事件上;combo 靠事件共享自然涌现——不设流派标签、不设档位机制。 2. **事件族组织**(设计侧分组工具,不上卡面):开格系 / 插旗系 / 踩雷系 / 节奏系 / 战斗系五族。族名禁上玩家可见面(命名铁律)。 3. **准入校验**:代价与收益须同账可核算——「纯代价件」禁止出生;契约件的代价必须一句话讲得清(契约不可怕,糊涂账才可怕)。 -4. **信息红线**:任何效果不得让数字说谎(信息规则不豁免);揭示类效果只揭真格。 +4. **信息红线**:禁止任何效果让数字说谎(信息规则不豁免);揭示类效果只揭真格。 5. **防兑换环**:互相转换的通道必须有损耗或每轮上限;单向通道优先。 > **落行注记(迭代 20 反哺落文,2026-10-12 追认⑤)**:「每第 N 次 / 积满触发」的数据行条件写 **N−1**——效果引擎 dispatch 时 when 先于 do 读计数器现值(预评估),故「满 N 触发」落行写 N−1(例:地质学家「满 4 种」写 eq 3、封印匠「每第 3 次」写 mod_eq ref 2、双管镐「每第 2 次」写 mod_eq ref 1)。行为仍为每第 N 次准点触发,单元测试钉住;新件落行照此口径。 @@ -168,7 +168,7 @@ ## 在核心循环中的位置 ``` -一次冒险 = 若干关卡串联,每关 = 一条节点链 + 一个关底 Boss +一次冒险 = 三关串联,每关 = 一条节点链 + 一个关底 Boss 关内普通战斗节点 ──▶ 打完不给奇物,继续往下走 │ @@ -224,7 +224,7 @@ **资源为什么单独成一类**:它的成员不满足"抬高战斗属性"(那归属性值提升),也不满足"改写规则"(那归专长),但玩家拿到时的感受是一致的——"我能做的事变多了"。把它们跟属性提升混在一起,会让"加了多少攻击"这种可度量的提升和"多一次重抽"这种不可度量的余地摆在同一张候选卡上,玩家没法比。即时兑付的金币与回复同留本类、不独立成第四类(2026-10-05 用户定)——判据与资源完全同源,拆出去只会让读者多查一张表。 -**判据句("资源"这个词太泛,这句是唯一的收口凭据)**:资源成员是**转换源**——不是资源本身,而是「到手即结算成独立资源或系统数值的**凭证**」,凭证加完消尽;被写入的账(GP 钱包/刷新存量/储备池/充能/时沙挂账/资格)各有自己的寿命档位。拿不准一项该归哪类时问三句:它进不进角色自己的属性数值(进→属性值提升);它改不改规则(改→专长);都不是、而是某本系统账上多出来的一笔一次性加仓的,归资源。 +**判据句("资源"这个词太泛,这句是唯一的界定凭据)**:资源成员是**转换源**——不是资源本身,而是「到手即结算成独立资源或系统数值的**凭证**」,凭证加完消尽;被写入的账(GP 钱包/刷新存量/储备池/充能/时沙挂账/资格)各有自己的寿命档位。拿不准一项该归哪类时问三句:它进不进角色自己的属性数值(进→属性值提升);它改不改规则(改→专长);都不是、而是某本系统账上多出来的一笔一次性加仓的,归资源。 **资源类内部的异质性(统一表述)**:凭证全部即时消尽——不存在「持有凭证」这种状态;异质性不在凭证上,而在**被写入的账的寿命**上:GP 钱包 / 生命账 / 刷新存量 / 秘宝充能 = 冒险级,储备池 / 完美资格 = 节点级,时沙挂账 = 至下一战首轮兑付(账清单对齐「凭证件表(新 5+留任 2)」节;「AP 上限」已归属性值提升轴,见 1.2)。登记此节防止把凭证当成会持续生效的东西去结算。 @@ -255,7 +255,7 @@ **为什么两层都要有**:分类名在卡面上不出现,不等于玩家对它没有概念——帮助手册、百科条目、成就名称三处一定会用到它(「首次集齐 4 件专长」「三件属性值提升」),效果描述里出现指代时也需要名字(如「本项属专长」类归类指代)。所以它必须是一个**玩家读得懂、读一遍就懂**的正式名词,不能是内部描述或自造词。 -**代码侧词族对应**(本批只做命名对齐,代码改动见需求卡片):顶层 `curio_*`(奇物总称)/ 专长 `feat_*` / 属性值提升 `asi_*` / 资源 `res_*`。`reward_*` 已被既有标识符占用(`reward_pick` / `reward_node` / `reward_preview`),**不得使用**。 +**代码侧词族对应**(本批只做命名对齐,代码改动见需求卡片):顶层 `curio_*`(奇物总称)/ 专长 `feat_*` / 属性值提升 `asi_*` / 资源 `res_*`。`reward_*` 已被既有标识符占用(`reward_pick` / `reward_node` / `reward_preview`),**禁止使用**。 ### 2. 渠道轴:与分类的交叉 @@ -284,7 +284,7 @@ **终局那关的 Boss 击败后不给**:兑付只发生在**还有下一关可去**的那些关底 Boss 身上——打赢最终 Boss 时冒险已经结束,没有后续关卡可消费,给了也无处生效。三关结构下,一局的确定性专长兑付次数由此确定(每个终局前 Boss 一次)。 -**不新增节点类型**:专长挂在 Boss 节点的兑付面上(击败后追加一次专长三选一),[关卡节点地图](关卡节点地图.md) 的节点类型仍是封闭枚举五种(战斗 / Boss / 奖励 / 恢复 / 商店),词表零扩类。此前"要不要为专长新设一类节点"的悬案由此收口。 +**不新增节点类型**:专长挂在 Boss 节点的兑付面上(击败后追加一次专长三选一),[关卡节点地图](关卡节点地图.md) 的节点类型仍是封闭枚举五种(战斗 / Boss / 奖励 / 恢复 / 商店),词表零扩类。此前"要不要为专长新设一类节点"的悬案由此完成裁决。 #### 2.2 专长凭证:非 Boss 渠道怎么给专长 @@ -386,7 +386,7 @@ | 阶段 | 说明 | |---|---| | 候选池构建 | 冒险开局时一次建成。三个分类的候选**现同处一个令牌池**:属性值提升与资源按配额铺开,专长按定义表的有效行铺开。 | -| 出现 | 玩家在渠道上看到若干候选(三选一的形式),看不到整个池。 | +| 出现 | 玩家在渠道上看到 3 个候选(三选一的形式),看不到整个池。 | | 选定 | 玩家选定一项后消耗该成员的一张令牌(拿了才计、只刷出〔含刷新重展〕不计);该成员令牌耗尽后不再出现于任何渠道。选到「专长获取」时,立刻再开一次专长 N 选一——这次选择走专长的渠道语义,不占用原本的渠道。 | | 持有与兑付 | 专长与属性值提升进入持有集后立即生效,跨关携带。凭证即时结算入各自的账,不入持有集。 | | 清零 | 冒险以任一结局收束时整集清空;下次开局重建。 | @@ -441,7 +441,7 @@ 3. 一个成员被拿走后消耗其一张令牌;令牌数=该成员出现次数上限,拿了才计、只刷出(含刷新重展)不计;令牌耗尽后该成员不再出现。 4. 专长件的收益必须挂在声明的条件上——把 when 去掉后收益仍然成立的无条件数值件不是专长,归属性值提升。 5. 玩家可见的文案不出现分类名与内部分组标签——只写效果,归类让玩家自己推断。 -6. 文档与代码里提到它时只有"奇物"这一个名字;需要区分时用"专长/属性值提升/资源"描述,不得另造称呼。 +6. 文档与代码里提到它时只有"奇物"这一个名字;需要区分时用"专长/属性值提升/资源"描述,禁止另造称呼。 7. 刷新凭证不进角色加算区、不进持有集——刷新券到手即结算进刷新存量账,只改三选一界面的可用重抽次数。 8. 即时兑付凭证(小金币袋/应急口粮)不进持有集——到手即结算消尽。 9. 金币不出现在商店货架上——这是「计价物不自售」可计算条件自动判定的结果,不是给金币单独立的一个分类;它确实是在分类白名单之外加的一道过滤,只是这道过滤可自动计算而非靠枚举。 @@ -490,3 +490,4 @@ | **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 悬案句→「完成裁决」)。机制与数值零改动 | diff --git a/design/gdd/systems/战斗循环/地图战斗资源.md b/design/gdd/systems/战斗循环/地图战斗资源.md index 9a1d4b95..169f1b71 100644 --- a/design/gdd/systems/战斗循环/地图战斗资源.md +++ b/design/gdd/systems/战斗循环/地图战斗资源.md @@ -104,7 +104,7 @@ - **补签纪律**:执行序 = 装板摇号(含偏运硬币/board_skew 投影)→ 按上限定本期保底型集合 → 校验补签 → 板上全程只读。补签只改类型身份:危险格与安全格不动(补签格可为雷可为安全格,危险格与安全格同池不破)、不消费权重(补签不是一次取号)、清图判定不动、不泄露元信息(补签格与摇号格不可区分)。粒度 = 板,换板重新校验。 - **GP 数值锚**:以战斗结束 GP 奖励为锚——小金币袋 ≈ 其 1/10、大宝箱 ≈ 其 1 倍(具体数值归调参批)。 - 大宝箱为枚举新增(九型→十型走本文修订流程,不随手加行);微光归通用增益组(五色相不变,组内不细分正好容下)。 -- **对外稀有度映射**(现行事实源=[核心循环](../../01-核心循环.md)「档位与获取规则」节):T1=普通 / T2=优秀 / T3=稀有 / T4=传说;任何概率提升不得改变本档保底承诺(保底=承诺非概率)。 +- **对外稀有度映射**(现行事实源=[核心循环](../../01-核心循环.md)「档位与获取规则」节):T1=普通 / T2=优秀 / T3=稀有 / T4=传说;任何概率提升禁止改变本档保底承诺(保底=承诺非概率)。 ### 极性矩阵:动作与格型决定符号 @@ -243,7 +243,7 @@ - 四档保底:装板完成后,保底上限 >0 的档其登记型按登记数补齐(现行 = heal 每板 ≥1);补签格与摇号格在数据与呈现上不可区分;保底上限 0 的档格数可为 0。 - 类型封闭与字典完整:表里出现九型之外的类型、或任一型缺正向/负向行,加载拒绝。 - 未生效可见:满层增益、满血正向治疗、无存活敌的群伤,各自在结算明细记"奖励未生效"行,零折算、零补偿。 -- 加载护栏:池空、清图池无正当量、增益引用悬空——任一命中即加载报错中止;默认内容加载通过。 +- 加载护栏:池空、清图池无正当量、增益引用悬空——任一命中即加载时返回错误并中止;默认内容加载通过。 - 表实一致:数据表字段与 registry 的 reward_table 条目逐字段一致。 ## 待办 @@ -277,3 +277,4 @@ | 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 b48de1c8..2bb56271 100644 --- a/design/gdd/systems/战斗循环/增益状态.md +++ b/design/gdd/systems/战斗循环/增益状态.md @@ -197,7 +197,7 @@ empower 与 fortify 是敌方技能池增益技在容器侧的数据落点(技 | P1 | 清图奖励含增益的授予路径 | 来源类别已预留;内容与档位归[地图战斗资源](地图战斗资源.md)定稿 | | P1 | 单体寻址扩展位 | 现行对敌效果一律全体共享;首个"只作用于其中一个敌人"的效果上线时给实例加目标字段 | | P2 | 驱散 / 延时 / 转移接口 | 状态一旦生效,玩家没有任何手段摘掉、延后或挪给别人——省掉一整类界面复杂度是明确的设计决定;要加属于新增接口的修订,不是调参 | -| P2 | 并存行高频授予(持续伤害类)的容量语义 | 并存实例数上界 = 受理授予数,有界确定、无满层语义;MVP 无并存内容行,首个并存内容行上线时随批复核容量读法 | +| P2 | 并存行高频授予(持续伤害类)的容量语义 | 并存实例数上界 = 受理授予数,有界确定、无满层语义;MVP 无并存内容行,首个并存内容行上线时顺带复核容量读法 | | P2 | 敌人词条引用状态(免疫 / 抗性) | 预留位;随[敌人系统](敌人系统.md)的内容批裁决 | | P2 | 随关卡成长的效果行 | 状态表是定义表、不是进度成长表;需要时走加表列的修订 | @@ -232,7 +232,7 @@ empower 与 fortify 是敌方技能池增益技在容器侧的数据落点(技 - 叠层不减钟:叠加策略行叠加只加层数,剩余次数保持首次授予定下的轨迹不变(刷新策略行则相反——层数不变、只重置剩余次数;两策略逐行读表)。 - 满层拒绝原子且留痕:叠满后再授予返回失败、容器逐字不变;结算明细多一行"奖励未生效"(含来源)。 - 先兑付后衰减:每轮结算恰做一次衰减,归零实例当轮移除;停手轮、弃图刷新轮照常衰减。 -- 合成不收口:容器输出的有效值恒等于层数 × 行值,越出百分比域不封顶不保底;地板在战斗结算侧。 +- 合成不设上下限:容器输出的有效值恒等于层数 × 行值,越出百分比域不封顶不保底;地板在战斗结算侧。 - 快照抗重载:已授予实例的数值在战斗中不受配置表重载影响,只影响后续授予。 - 确定性回放:同一授予序列驱动两个独立容器实例,生效清单(含排列顺序)与衰减轨迹逐项相同。 - 表实一致:配置表字段与 registry 的 status_effect 条目逐字段一致。 @@ -260,3 +260,4 @@ empower 与 fortify 是敌方技能池增益技在容器侧的数据落点(技 | 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 79b26827..9d0601c8 100644 --- a/design/gdd/systems/战斗循环/战斗结算.md +++ b/design/gdd/systems/战斗循环/战斗结算.md @@ -86,7 +86,7 @@ 每行还携带公共字段:来源类别、来源格、轮次、显示名、数值,以及可空的高光标记(用于强调标中旗、清图奖励这类值得高亮的结果)。没生效也要留痕:两类"未生效"行如实记录合法例外,呈现时聚合计数,不逐行刷屏。 -任何一行找不到来源即断言失败——宁可报错,也不让"合并到看不出来源"的呈现混过数据层。但有些行天然没有棋盘来源,断言为此留了两层豁免,豁免集合是封闭清单,改动同样走本文修订。 +任何一行找不到来源即断言失败——宁可返回错误,也不让"合并到看不出来源"的呈现混过数据层。但有些行天然没有棋盘来源,断言为此留了两层豁免,豁免集合是封闭清单,改动同样走本文修订。 第一层按行型豁免两类:衰减行(到期移除本就是段级动作,不属于任何一格)、判定行(它是胜负出口的结论,不是棋盘事实)。这两类连来源类别都不必填。 @@ -174,7 +174,7 @@ percent 类(每结算、每层): E = |层数 × 行值| ÷ 100 × | 群伤 | 爆裂粉尘 / 清障炸药 | 无类型恒定表值,全体存活敌逐个交付 | | 主角直伤 | 陷阱反噬 / 治疗负向 / 地形变异 | 无类型必中,下限保底 | -职责分界一句话:**流程决定何时开单、给谁开单;控制器决定一张单经过哪几步。** 战斗结算保留全部开单守卫(主角存活且场上有敌才开先手单、主角倒下停开敌方单),掷点、折扣、暴击、克制点数、池乘区、伤害下限、交付与执行上报的算术和次序全部收口控制器单点——未来新增伤害来源 = 填一张单,新增管线环节 = 控制器一处改动,不再逐调用点各写各的管线。 +职责分界一句话:**流程决定何时开单、给谁开单;控制器决定一张单经过哪几步。** 战斗结算保留全部开单守卫(主角存活且场上有敌才开先手单、主角倒下停开敌方单),掷点、折扣、暴击、克制点数、池乘区、伤害下限、交付与执行上报的算术和次序全部统一到控制器单点——未来新增伤害来源 = 填一张单,新增管线环节 = 控制器一处改动,不再逐调用点各写各的管线。 **目标在结账时刻解析**:单据只带目标规则(最前存活敌 / 主角 / 全体存活敌),兑现那一刻照规则看现场——前面兑付打死的敌人不会接住后面的单,开单时也不把目标写死在单上。 @@ -212,7 +212,7 @@ percent 类(每结算、每层): E = |层数 × 行值| ÷ 100 × 主角攻击 = 单一基础分量(2026-09-19 充能退役批):量 = 攻击力基线(表值),类型 = 主角表 `attack_type`(营地永久强化换型 = 改字段;未来冒险前参数面承接"按关配型"的策略位)。原"普通 + 穿刺/魔法充能三分量"模型整体退役——挖掘期与战斗期之间不再有弹药供给线,克制应对从局内攒桶改为冒险前配型 + 棋盘火力(穿刺弹/魔法矢等直伤奖励道具,消费面不变)。 -**护甲等级掷点:必中、非归零,只吃基础攻击分量**(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` 封闭流(逐次掷逐次取号,可逐位回放)。 +**护甲等级掷点:必中、非归零,只吃基础攻击分量**(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)已登记的加难杠杆扫描合并处理;其生存链区间模型按掷点带宽口径复核(带宽含暴击档与折扣档),"零红档"验收保留。 @@ -232,7 +232,7 @@ EV 参考数不入正文(派生读数,需要时按判定式与现行表值 | 边界 | 规则 | |---|---| -| 修正池封顶 | 同侧百分比修正加算后每池独立收口 ±100 百分点;乘数可为 0——输出压制触池底时落地伤害由全局下限保底 damage_floor(读表)(叠满免伤归零的结构面已随护甲等级换装消失) | +| 修正池封顶 | 同侧百分比修正加算后每池独立封顶 ±100 百分点;乘数可为 0——输出压制触池底时落地伤害由全局下限保底 damage_floor(读表)(叠满免伤归零的结构面已随护甲等级换装消失) | | 伤害下限 | 任何来源的伤害落地至少 damage_floor(读表,全局 max(damage_floor, ·)——2026-09-20 扩全来源:攻击双方/棋盘直伤/地形变异/负向反噬,取值域 [1, +∞) 不设上限);"被减伤归零 v=0"零值伤害行语义退役,重档折扣行文本记"被压制"——免伤与零输出仍逐行可见 | | 护甲等级掷点 | 必中非归零:掷单骰(骰面读表)对防守方护甲等级 + 攻击加成(恒 0),低掷按缺口查减伤档位表(读表)三档折扣、档位不设零档;天然最大面暴击 ×暴击倍率(读表)恒全额;只吃基础攻击分量(主角基础分量、敌方技能基础伤害分量),棋盘来源伤害与增益施放不掷不折 | | 溢杀 | 一刀超出目标剩余生命的部分丢弃:不转移给下一个敌人、不存续、无负生命中间态 | @@ -324,7 +324,7 @@ EV 参考数不入正文(派生读数,需要时按判定式与现行表值 | 减伤档位表 | 边界升序 + 档位值降序 percent [1,99],档数 = 边界数 + 1 | 边界与档值读 `settlement.tres`(roll_tier_bounds / discount 档位,2026-09-16 拍板定稿) | 低掷缺口按边界查档(读表);档位不设零档(非归零);微调旋钮 = 本表,不动护甲等级值 | | 伤害下限 `damage_floor` | int [1, 999] | 读 `settlement.tres` damage_floor(2026-09-16 拍板定稿;2026-09-20 扩全来源) | 任何来源的伤害落地全局 max(damage_floor, ·);零值伤害行语义随批退役 | | 攻击加成 `attack_bonus` | int [0, 999] | 0(结构位) | 掷点阈值 = 防守方护甲等级 + 攻击加成;切片恒 0,未来归元进度 / 武器附魔投值 | -| 护甲等级 `armor_class`(防守方字段) | int [0, 999] | 主角与敌方现行值读 hero / enemy 表 armor_class 列(暂定) | 字段本体在敌人表与主角表(归[敌人系统](敌人系统.md)),行值投值归[难度曲线与Boss](../冒险循环/难度曲线与Boss.md);敌方正式行值归怪物设定批(见待办清单);与护甲类型(克制属性轴)两概念不得混用 | +| 护甲等级 `armor_class`(防守方字段) | int [0, 999] | 主角与敌方现行值读 hero / enemy 表 armor_class 列(暂定) | 字段本体在敌人表与主角表(归[敌人系统](敌人系统.md)),行值投值归[难度曲线与Boss](../冒险循环/难度曲线与Boss.md);敌方正式行值归怪物设定批(见待办清单);与护甲类型(克制属性轴)两概念禁止混用 | | 段序常量 | 固定五段 | 结构冻结 | 加载期恒等校验,违例拒绝启动 | | 池封顶 | ±100 百分点 | 结构冻结 | 乘数域随之 [0, 2] | | 取整方向 | 向下取整 | 结构冻结 | 单一规则,非调参项 | @@ -350,7 +350,7 @@ EV 参考数不入正文(派生读数,需要时按判定式与现行表值 - 关卡收束:关卡结束清空秘宝背包(关卡域库存——现行恒空的机械惰性承载,见「轮次生命周期」节注)恰一次并返回清空前计数;战斗结束不清背包。 - 可回放(封闭随机流口径):同种子同输入两遍步骤流逐位复现;随机消费仅限七处封闭随机流——开战掷骰(初始化随机)、技能摇号 `behavior_roll`(回合内、开轮时点、步骤流之外)、护甲等级掷点 `armor_roll`(回合内、步骤流之内)、奖励格摇号 `reward_roll`(初始化、装板期)、变异布置 `variant_place`(初始化、装板与资源预分配之后)、换板棋盘生成 `board_gen`(初始化、清图轮换板时点)、战斗结束掉落掷定 `gp_drop`(出口随机、战斗结束分支),无未登记随机源、零界面等待;单敌出招轨迹可独立复放、互不穿插。 - 无来源即炸:每行明细都能指回一个来源事实(棋盘格、单位、清图或段级结论);找不到来源即断言失败,行型与来源类别两层豁免清单见明细流水一节,豁免行仍受其它契约约束。 -- 行型封闭:流水只出现本文登记的 9 类行型;新增或下线行型必须走本文修订并同步呈现层行格式化,未登记行型不得落行。 +- 行型封闭:流水只出现本文登记的 9 类行型;新增或下线行型必须走本文修订并同步呈现层行格式化,未登记行型禁止落行。 - 伤害单据管线(2026-09-24):全部伤害(主角先手、敌方伤害技、棋盘克制直伤、群伤、反噬、地形变异)经伤害控制器单据管线兑现,兑付配方封闭五种;目标在结账时刻照规则解析;死亡事件由单位自行宣布——怪死其未结单据作废(零行、不进冷却不进保底计数)、主角死兑付终止;段界结账为现行口径、开单即结为回切结构位,两模式各自同种子同输入逐位复现。 - 条款3 对账(2026-10-05 判式换代批 T3——与行动经济 F1 条款3 重立同步):①聚合健康式 (1−ρ̂)·E_dig(u) − ρ̂·V_mine(u) ≥ 0 与 β 比值带 [1.2, 2.5] 判读逐 u 检算(常设重跑入口 `tools/clear_dominance_audit.py`,读数快照归 registry clause3 重立条);②旗溢价兑付正确:标中旗正向兑付 = 同型正向 ×(1+δ)(δ 读 `settlement.tres` flag_hit_premium,100=无溢价直通零扰动),三类形态全覆盖(flat power / percent 幅度 / gp 缓冲)、标空与挖格兑付不乘溢价、危险格与安全格同池结构零触碰。 @@ -392,3 +392,4 @@ EV 参考数不入正文(派生读数,需要时按判定式与现行表值 | 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 百分点」改「每池独立封顶」(与池乘区公式行同词);调参表护甲等级行「两概念不得混用」改「禁止混用」;行型封闭条「未登记行型不得落行」改「禁止落行」。机制与数值零改动 | diff --git a/design/gdd/systems/战斗循环/战斗表现.md b/design/gdd/systems/战斗循环/战斗表现.md index 011b9c28..48d1fb8c 100644 --- a/design/gdd/systems/战斗循环/战斗表现.md +++ b/design/gdd/systems/战斗循环/战斗表现.md @@ -60,7 +60,7 @@ | 输入 | 登记处 | 将来要做的 | |---|---|---| -| 受击反馈 / 死亡表现 / 顺位标记 | [敌人系统](敌人系统.md)的资产需求下限三类(终稿归样张批,呈现语义已归 battle.md) | 终稿资产与动画兑现;死亡不得瞬消 | +| 受击反馈 / 死亡表现 / 顺位标记 | [敌人系统](敌人系统.md)的资产需求下限三类(终稿归样张批,呈现语义已归 battle.md) | 终稿资产与动画兑现;死亡禁止瞬消 | | 特殊技技能动画定稿 | [敌人系统](敌人系统.md)三档可见性规格(2026-09-16 敌人技能池批改型:行为环姿态预告〔一态与三态〕退役——现行数据面 = 普通攻击零表示、特殊技三族动画〔攻击系/增益系/妨害系——2026-09-19 妨害系新增〕,暴击为掷点层无前置表示;battle.md 意图线索映射目录已同步改型注记) | 把摇定动画映射(两型)做成终稿资产 | | 奖励未生效行的呈现 | [增益状态](增益状态.md)定稿时登记(数据源是[战斗结算](战斗结算.md)的明细协议) | 让这类行在演出中可读、不被吞掉 | | 效果来源格的可读化 | 同上(候选形态:缩略图或格子高亮,坐标不直接呈现) | 把"效果来自哪一格"翻译成玩家可读的演出 | @@ -74,33 +74,33 @@ 附着在同一次样张上的还有一项已登记的裁决(登记出处 = 敌人系统的呈现契约):敌人层绘制优先级的插入位置——白话就是敌人的姿态精灵画在绘制顺序的哪一层,会不会、以及如何与棋盘上的数字、旗、小人发生遮挡。它随美术测试一并裁决,不在本文提前定。 -两项相邻裁定已有结论,设计时直接继承:**敌人呈现形态已裁决(2026-09-20 用户看对照样张拍板)——全站桩式(无框立绘+底座),主角同样站桩、状态小图标挂血条正下方,卡片式整体退役**(06 待办「敌人卡形态」解决移除,台账 99;battle.md 起草条款已随裁决改写,对照样张存档 `production/mockups/`);art-bible 的图标键契约已冻结,动画设计不必等图标终稿。 +两项相邻裁定已有结论,设计时直接继承:**敌人呈现形态已裁决(2026-09-20 用户看对照样张拍板)——全站桩式(无框立绘+底座),主角同样站桩、状态小图标挂血条正下方,卡片式整体退役**(06 待办「敌人卡形态」解决移除,状态记录 99;battle.md 起草条款已随裁决改写,对照样张存档 `production/mockups/`);art-bible 的图标键契约已冻结,动画设计不必等图标终稿。 ### 一屏样张的验收标准 样张是前置美术测试的判定物;本节把"怎么算过"在测试组织前写成文,避免临场现定标准。成文做法参照 [art-bible](../../../art/art-bible.md) §1.4 格子样张测试(内容清单、按序验收项、判定与回退),判据全部落到已冻结的现行口径上——本节不定任何新的视觉参数。 -样张内容清单(一组齐备,缺项即无效):按 [battle.md 布局决策 1](../../ux/battle.md) 的常驻双舞台四区布局整屏出样;角色剪影按棋盘格、结算明细带、战斗舞台三个语境同图摆放;~~敌人卡两候选形态对照(卡片式与站桩式各一版,其余内容不变)~~——**本项已由 2026-09-20 形态裁决提前收口(全站桩定稿、卡片式退役),正式样张按站桩形态单版出样即可**(owner 修订,对照义务解除;见 06 待办「敌人卡形态」销项,台账 99);受击、退场、高光兑现三组动画关键帧条(每组至少起、中、末三帧);敌人姿态精灵与数字、旗、小人同格叠放的遮挡对照组至少一组。 +样张内容清单(一组齐备,缺项即无效):按 [battle.md 布局决策 1](../../ux/battle.md) 的常驻双舞台四区布局整屏出样;角色剪影按棋盘格、结算明细带、战斗舞台三个语境同图摆放;~~敌人卡两候选形态对照(卡片式与站桩式各一版,其余内容不变)~~——**本项已由 2026-09-20 形态裁决提前完成(全站桩定稿、卡片式退役),正式样张按站桩形态单版出样即可**(owner 修订,对照义务解除;见 06 待办「敌人卡形态」销项,状态记录 99);受击、退场、高光兑现三组动画关键帧条(每组至少起、中、末三帧);敌人姿态精灵与数字、旗、小人同格叠放的遮挡对照组至少一组。 验收项按序判定,第一项不过 = 整张否决(继承格子样张"数字可读性定风格"的次序): 1. **第一验收项|棋盘区零打扰(硬指标,继承已冻结口径)**:样张中一切战斗与演出元素不侵入数字字形占位区;棋盘区数字对比仍满足 art-bible §4.1 对比硬指标;挖掘期画面不因战斗元素新增抢焦运动。 2. **剪影跨舞台通用(灰度通道)**:同一角色剪影转灰度后在三个语境下仍可辨认为同一角色——识别只靠轮廓通道、不借格底色(art-bible §5.1 已锁事实的样张检验)。 -3. **动画方案可读**:三组关键帧条按序翻看能读懂"发生了什么":受击反馈先于死亡、退场有过程不得瞬消、高光行强调可辨;每组动画能指认其减动效简化形态(时长减半或直达终态)。 +3. **动画方案可读**:三组关键帧条按序翻看能读懂"发生了什么":受击反馈先于死亡、退场有过程禁止瞬消、高光行强调可辨;每组动画能指认其减动效简化形态(时长减半或直达终态)。 4. **战斗空间成立**:双舞台同屏下挖掘期视线锚在棋盘区、结算期锚在明细带与战斗画面区(B 区),两舞台边界清晰、无焦点争夺。 -5. **敌层插入位置可裁**:遮挡对照组足以裁决敌人姿态精灵画进绘制顺序的哪一层——任何层叠组合下数字、旗、小人不得被遮挡到不可辨。 +5. **敌层插入位置可裁**:遮挡对照组足以裁决敌人姿态精灵画进绘制顺序的哪一层——任何层叠组合下数字、旗、小人禁止被遮挡到不可辨。 -判定与回退:第 1 项不过即演出元素回炉,禁止以牺牲可读性换氛围(改演出、不动数字口径);第 2–4 项不过对应资产或方案回炉重交,已过项结果保留。第 5 项(敌层插入位置)不产生过/不过,产出一条裁决记录:插入位置结论由[敌人系统](敌人系统.md)的呈现契约登记(~~敌人卡形态对照~~半边已于 2026-09-20 提前裁决收口——全站桩定稿,结论已回写 battle.md 起草条款)。样张通过 = 角色剪影、动画方案、战斗空间、敌层插入位置四件锁定物冻结;通过前不启动任何终稿资产与动画设计。 +判定与回退:第 1 项不过即演出元素回炉,禁止以牺牲可读性换氛围(改演出、不动数字口径);第 2–4 项不过对应资产或方案回炉重交,已过项结果保留。第 5 项(敌层插入位置)不产生过/不过,产出一条裁决记录:插入位置结论由[敌人系统](敌人系统.md)的呈现契约登记(~~敌人卡形态对照~~半边已于 2026-09-20 提前裁决完成——全站桩定稿,结论已回写 battle.md 起草条款)。样张通过 = 角色剪影、动画方案、战斗空间、敌层插入位置四件锁定物冻结;通过前不启动任何终稿资产与动画设计。 ### 演出服从信息与可读性 -两条现行硬约束,将来任何动画方案都不得越过。其一,数字可读性高于氛围:挖掘期画面无杂音,动画不得遮挡数字、不得在挖掘期抢焦;结算期的色彩与能量走向以 art-bible 第 2 节为权威。其二,结算逐行兑现是信息载体:battle.md 已承诺不可整体跳过、只提供减动效选项(时长减半或直达终态,逐行兑现可加速不可省略),本文将来兑现其动画侧。 +两条现行硬约束,将来任何动画方案都禁止越过。其一,数字可读性高于氛围:挖掘期画面无杂音,动画禁止遮挡数字、禁止在挖掘期抢焦;结算期的色彩与能量走向以 art-bible 第 2 节为权威。其二,结算逐行兑现是信息载体:battle.md 已承诺不可整体跳过、只提供减动效选项(时长减半或直达终态,逐行兑现可加速不可省略),本文将来兑现其动画侧。 ### 结算演出与轮间节奏(已实装,2026-09-30 拍板点 3 裁决落位) **定义**:轮末结算的呈现节奏规则——结算行按演出层排播队列分组依次呈现、轮切换以「第 N 轮」横幅驻留,把核心层一帧同步跑完的结算翻译成玩家可跟读的逐行过程;与结算演出覆盖层(光带横扫/跨区弹道,迭代 6)共同构成结算期的演出面。 -**作用对象与范围**:只作用于演出层——排播常量在 `main.gd`(`PACE_SEGMENT_GAP` / `PACE_ROW_GAP`)与 `settlement_fx_view.gd`(`BANNER_DWELL`),横幅与节奏经 settlement_fx_view 呈现。核心层零触碰:`battle_orchestrator` 的「零 await」契约与 MC 对拍口径不受扰(T1 态 400/400 逐位实证在案)。 +**作用对象与范围**:只作用于演出层——排播常量在 `main.gd`(`PACE_SEGMENT_GAP` / `PACE_ROW_GAP`)与 `settlement_fx_view.gd`(`BANNER_DWELL`),横幅与节奏经 settlement_fx_view 呈现。核心层零触碰:`battle_orchestrator` 的「零 await」契约与「MC 与基线数据逐项比对」口径不受扰(T1 态 400/400 逐位实证在案)。 **生命周期**:进结算期起播——结算行按五段分组依序进明细带(段间 0.3s、段内 0.22s;段内值 0.06→0.22 系迭代 8 三轮修改批用户裁决「逐条演出可感知」);轮切换横幅驻留 0.6s 后消隐进下一轮;战斗结束排播收尾。**减动效双态**:开关开启 = 延迟归零同帧直落 + 横幅静态化(与设置面减动效联动——「可加速不可整体跳过」承诺的节奏侧兑现)。 @@ -142,7 +142,7 @@ MVP 不要求本文的闭环:不做清单把战斗动画演出列为 MVP 打 待设计。方向性判据(供未来定稿参考): -- 样张先于生产:一屏样张未过审,任何终稿资产与动画方案不得进入生产。 +- 样张先于生产:一屏样张未过审,任何终稿资产与动画方案禁止进入生产。 - 挖掘期零打扰:结算演出只发生在结算期;挖掘期不因动画新增运动元素,数字可读性不受影响。 - 因果可读:玩家看完一段兑现演出,能说出这一行结算来自他刚才的哪一步操作。 - 死亡可辨:敌人死亡瞬间可辨识,不存在"敌人凭空消失"的观感。 @@ -170,3 +170,4 @@ MVP 不要求本文的闭环:不做清单把战斗动画演出列为 MVP 打 | 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 d2ea95f4..d97c3bd8 100644 --- a/design/gdd/systems/战斗循环/敌人系统.md +++ b/design/gdd/systems/战斗循环/敌人系统.md @@ -49,7 +49,7 @@ ### 主角与敌人共用同一套受伤与死亡规则 -战斗场上恰有两类单位:主角一个,敌人若干。它们共用同一套"身体语义"——每个单位有当前血量与血量上限,挨打血量往下减,减到 0 即死亡。本系统只如实记账并提供查询;"这一下最终算多少伤害、何时算死"的裁决归[战斗结算](战斗结算.md)。主角血量归零是失败判定素材,敌人全部归零是胜利判定素材,判定本身同样归战斗结算。 +战斗场上恰有两类单位:主角一个,敌人一至四个(数量随遭遇行集骰定,见「开战生成」节)。它们共用同一套"身体语义"——每个单位有当前血量与血量上限,挨打血量往下减,减到 0 即死亡。本系统只如实记账并提供查询;"这一下最终算多少伤害、何时算死"的裁决归[战斗结算](战斗结算.md)。主角血量归零是失败判定素材,敌人全部归零是胜利判定素材,判定本身同样归战斗结算。 单位的一生只有四态: @@ -71,7 +71,7 @@ | 规则 | 含义 | |---|---| | 敌方效果对全体生效 | 范围效果作用于所有存活敌人——混编放开后(2026-10-07 行集多行批)场上可多种敌种共存,结算语义按存活单位逐一生效、不依赖"场上全同种"前提;"只打某一个"的单体寻址暂不开放(见 P1) | -| 行集构成纪律 | 敌人表按(关卡序号 × 节点深度)存放,同一坐标行集允许多行、允许不同敌种混编。纪律三条,违规加载期报错止动:①行集内 enemy_id 唯一(同一敌种在同行集仍只许一行);②同坐标多行必须表文件内相邻,行序 = 声明序 = 生成序(行序即契约);③行集实例总数(各行骰后数量求和)≤ 4,单行数量域 [1,3] 不变(UNIT_COUNT_MAX 语义 = 单种数)。行数不设上限;同关随深度换敌种合法 | +| 行集构成纪律 | 敌人表按(关卡序号 × 节点深度)存放,同一坐标行集允许多行、允许不同敌种混编。纪律三条,违规加载期返回错误并止动:①行集内 enemy_id 唯一(同一敌种在同行集仍只许一行);②同坐标多行必须表文件内相邻,行序 = 声明序 = 生成序(行序即契约);③行集实例总数(各行骰后数量求和)≤ 4,单行数量域 [1,3] 不变(UNIT_COUNT_MAX 语义 = 单种数)。行数不设上限;同关随深度换敌种合法 | | 主角数据行 | 主角战斗数值单独放一张全局单行表:生命上限、基础攻击力、护甲等级三字段(见调参表) | | 基础攻击恒存在 | 基础攻击不许配 0(配置为 0 加载期拒绝)——零基线乘任何百分比增益恒为零,"胜利路径恒有"的保障从数据层杜绝死锁 | | 先手攻击不是敌方技能拍 | 每次结算战斗段主角先手攻击顺位最前的存活敌人,这是固定动作;奖励侧的道具与增益是基础攻击之外的规划面伤害,归[地图战斗资源](地图战斗资源.md) | @@ -91,7 +91,7 @@ | 钩爪恐魔 | 普通攻击 + 撕咬 + 蓄力 | 行值读表 | 行值读表 | L2/L3 群行位(蜘蛛同构池) | | 灰矮人石君王 | 普通攻击 + 重击 + 大地脉动 + **岩崩**(半血解锁) | 行值读表 | 行值读表 | L3 关底 Boss;大地脉动独占 | -护甲类型(轻甲 / 魔法护甲 / 重甲)与攻击类型的克制结算矩阵归[战斗结算](战斗结算.md),本系统只提供每个敌种的护甲类型数据——**护甲列自 2026-10-05 技能池执行批起改读表口径**(本表轮廓列不再记具体甲型:现行 L1 全轻甲 / L2 仅 Boss 魔法甲 / L3 heavy 登台的错峰投放以 `enemy.tres` 行值为准;历史「本表写魔甲/重甲」与表失同步的欠账随批清偿)。护甲等级是另一条数值轴(防守方字段,基础攻击掷点的折扣判定读数):敌人表与主角表各增 `armor_class` 一列(域 [0, 999]),掷点与折扣的结算归[战斗结算](战斗结算.md),行值投值归[难度曲线与Boss](../冒险循环/难度曲线与Boss.md)——三敌种首关与主角的护甲等级行值读配置表(第一关怪物 AC 相对较低,正式行值待怪物设定投值,登记[待办清单](../../06-待办清单.md)),两条轴的概念与字段不得混用。举证:生成与护甲为数据面规则,无计算。 +护甲类型(轻甲 / 魔法护甲 / 重甲)与攻击类型的克制结算矩阵归[战斗结算](战斗结算.md),本系统只提供每个敌种的护甲类型数据——**护甲列自 2026-10-05 技能池执行批起改读表口径**(本表轮廓列不再记具体甲型:现行 L1 全轻甲 / L2 仅 Boss 魔法甲 / L3 heavy 登台的错峰投放以 `enemy.tres` 行值为准;历史「本表写魔甲/重甲」与表失同步的欠账随批清偿)。护甲等级是另一条数值轴(防守方字段,基础攻击掷点的折扣判定读数):敌人表与主角表各增 `armor_class` 一列(域 [0, 999]),掷点与折扣的结算归[战斗结算](战斗结算.md),行值投值归[难度曲线与Boss](../冒险循环/难度曲线与Boss.md)——三敌种首关与主角的护甲等级行值读配置表(第一关怪物 AC 相对较低,正式行值待怪物设定投值,登记[待办清单](../../06-待办清单.md)),两条轴的概念与字段禁止混用。举证:生成与护甲为数据面规则,无计算。 ### 技能池:每敌种一张带权技能池,每拍开轮摇号出招 @@ -168,7 +168,7 @@ Boss 专属身份 = 专属池承载:独占技能 + 权重轮廓(**技能错 即:普攻完全不可预测;特殊技有一次类型级预告,不可撤销,但给"继续挖还是停手"的决策依据。 -**半血解锁弹出规格(2026-10-05 技能池执行批,D8 用户裁;内容数据驱动扩展批 T1 补登记——解锁判定点=通用事件「血量阈值 `enemy_hp_threshold`」的发射点,对所有带 `unlock_hp_pct` 字段的敌人逐个发射、非 Boss 专属——Boss 语义留给订阅条件判定)**:Boss 血量降至 `unlock_hp_pct` 阈值(池条目字段,域 [1,99],缺省无字段=无门槛)时,下一个开轮摇号前出一次归因明细行「XX 解锁了 YY」(高光键 `skill_unlock`,行型复用 highlight 零新增);呈现层对该行弹**一次性技能名 toast**(轻量提示,非演出——零动画资产、不改演出规格),只报技能名不报数值,池与权重不公开纪律不变。解锁=单向闩(治疗抬血不解锁);锁定条目双面过滤(不进可摇集合与保底特殊技集合——保底不得逼出未解锁技);解锁后冷却初值 0 即可摇。投放纪律=字段通用、仅 Boss 行投放(enemy 表无 boss 编码位,硬闸须跨表查节点类型——不做硬闸,本句即文档纪律登记)。旧环"下一拍全程亮出(意图徽标 + 环点)"的预告粒度随行为环退役。技能动画的攻/防系映射归[战斗表现](战斗表现.md),敌人侧摇定动画位归[HUD 框架](../表现与支撑/HUD框架.md)(呈现载体 = 站桩立绘,2026-09-20 全站桩拍板),本系统只锁上面这张三档规格。 +**半血解锁弹出规格(2026-10-05 技能池执行批,D8 用户裁;内容数据驱动扩展批 T1 补登记——解锁判定点=通用事件「血量阈值 `enemy_hp_threshold`」的发射点,对所有带 `unlock_hp_pct` 字段的敌人逐个发射、非 Boss 专属——Boss 语义留给订阅条件判定)**:Boss 血量降至 `unlock_hp_pct` 阈值(池条目字段,域 [1,99],缺省无字段=无门槛)时,下一个开轮摇号前出一次归因明细行「XX 解锁了 YY」(高光键 `skill_unlock`,行型复用 highlight 零新增);呈现层对该行弹**一次性技能名 toast**(轻量提示,非演出——零动画资产、不改演出规格),只报技能名不报数值,池与权重不公开纪律不变。解锁=单向闩(治疗抬血不解锁);锁定条目双面过滤(不进可摇集合与保底特殊技集合——保底禁止逼出未解锁技);解锁后冷却初值 0 即可摇。投放纪律=字段通用、仅 Boss 行投放(enemy 表无 boss 编码位,硬闸须跨表查节点类型——不做硬闸,本句即文档纪律登记)。旧环"下一拍全程亮出(意图徽标 + 环点)"的预告粒度随行为环退役。技能动画的攻/防系映射归[战斗表现](战斗表现.md),敌人侧摇定动画位归[HUD 框架](../表现与支撑/HUD框架.md)(呈现载体 = 站桩立绘,2026-09-20 全站桩拍板),本系统只锁上面这张三档规格。 | 规格 | 含义 | |---|---| @@ -216,11 +216,11 @@ Boss 专属身份 = 专属池承载:独占技能 + 权重轮廓(**技能错 | P1 | 情境条件触发器(低血触发防御、玩家停手时偷袭技等) | 载体 = 技能行触发条件字段加列;登记[待办清单](../../06-待办清单.md) | | P1 | 个体化变体池(A 型好斗 / B 型守势、精英专属池) | 共识点 A 的 A2 案;登记[待办清单](../../06-待办清单.md) | | P1 | 全局特殊间隔旋钮 | 特殊技背靠背实测仍嫌时的备用闸;登记[待办清单](../../06-待办清单.md) | -| P1 | 新效应词汇批(妨害技 + 必中附加分量已实装 2026-09-19——设计权威 proposal-status-vocabulary.md〔提案已吸收退役 git a6833b6a——现行事实源=敌人系统.md 词汇表/增益状态.md〕 v1.0,实装面 = L2 Boss 卓尔;多段命中经用户拍板退役) | 妨害类型 + rider_mult 字段已落地;登记[待办清单](../../06-待办清单.md)(已解决移除,去向见台账) | +| P1 | 新效应词汇批(妨害技 + 必中附加分量已实装 2026-09-19——设计权威 proposal-status-vocabulary.md〔提案已吸收退役 git a6833b6a——现行事实源=敌人系统.md 词汇表/增益状态.md〕 v1.0,实装面 = L2 Boss 卓尔;多段命中经用户拍板退役) | 妨害类型 + rider_mult 字段已落地;登记[待办清单](../../06-待办清单.md)(已解决移除,去向见状态记录) | | P1 | 敌种名录扩容与投放节奏(含第二关池与投放) | 投放节奏是关卡命脉,归[难度曲线与Boss](../冒险循环/难度曲线与Boss.md) | -| P1 | 单体寻址("只打某一个敌人"的目标指定) | 首个单体效果上线时随批裁决归集语义与呈现 | +| P1 | 单体寻址("只打某一个敌人"的目标指定) | 首个单体效果上线时顺带裁决归集语义与呈现 | | P2 | 敌方技能图鉴 / 学习呈现(玩家侧技能知识系统) | 池不公开口径下的进阶信息面;登记[待办清单](../../06-待办清单.md) | -| P2 | ~~精英 / Boss 遭遇编码位~~(已收口——不设编码位:同层多遭遇由节点编号消解,关卡节点地图 v1.0⑥ 用户裁决) | — | +| P2 | ~~精英 / Boss 遭遇编码位~~(已完成——不设编码位:同层多遭遇由节点编号消解,关卡节点地图 v1.0⑥ 用户裁决) | — | ## 调参表 @@ -235,7 +235,7 @@ Boss 专属身份 = 专属池承载:独占技能 + 权重轮廓(**技能错 | atk_min / atk_max | [0, 999] 可选配对 | 攻击基线区间:开战掷定一次、整战持久;缺省 = 定值行 | | armor_type | {轻甲, 魔法护甲, 重甲},缺省轻甲 | 克制结算归[战斗结算](战斗结算.md) | | attack_type | {普通, 穿刺, 魔法},缺省普通 | 敌方攻击类型轴(**2026-10-13 迭代 24 N3 开列实装**:20 行全填 normal,ATTACK_TYPES 闭集枚举+缺省回退向后兼容,与 armor_type 同位同款);消费面 = 战斗结算敌方技兑付路径的护甲克制矩阵查表(敌方开单第 9 参传值+克制消费点,见战斗结算);行值投值归[难度曲线与Boss](../冒险循环/难度曲线与Boss.md) | -| armor_class(护甲等级) | int [0, 999],缺省 0 | 防守方护甲等级——基础攻击掷点的折扣判定读数,掷点结算归[战斗结算](战斗结算.md);与 armor_type(克制属性轴)两概念不得混用;行值投值归[难度曲线与Boss](../冒险循环/难度曲线与Boss.md) | +| armor_class(护甲等级) | int [0, 999],缺省 0 | 防守方护甲等级——基础攻击掷点的折扣判定读数,掷点结算归[战斗结算](战斗结算.md);与 armor_type(克制属性轴)两概念禁止混用;行值投值归[难度曲线与Boss](../冒险循环/难度曲线与Boss.md) | | hp | [1, 999] | 单位生命基线(难度修饰前) | | atk | [0, 999] | 攻击基线 | | pool(池模板) | {skill_id, weight} 数组,weight ∈ (0, 9999] | 技能行引用在技能表;池构成纪律与悬空引用加载期拒绝(校验在数据配置跨表通道) | @@ -275,7 +275,7 @@ Boss 专属身份 = 专属池承载:独占技能 + 权重轮廓(**技能错 - 警觉授予:踩 N 颗雷叠 N 层、逐层直授无上限;敌方全体共享同一状态值(side-wide)。 - 目标顺位:多敌时单体目标恒为生成序最前存活者,杀最前后顺延;杀至空返回空;单敌时顺位与范围效果重合。 - 快照抗改表:实例化后修改敌人表,已生成单位的数值投影与实例池逐字不变;新实例才用新表值。 -- 表校验:越域值、池权重 ≤ 0、空池、普攻配倍率/冷却、池增益 > 1、skill_id 悬空、行集构成违例(行集内同敌种第二行 / 同坐标多行不相邻)均在加载期报错止动;域内合法极端(攻击基线 0)不拒;主角表恰一行、攻击配 0 拒绝。 +- 表校验:越域值、池权重 ≤ 0、空池、普攻配倍率/冷却、池增益 > 1、skill_id 悬空、行集构成违例(行集内同敌种第二行 / 同坐标多行不相邻)均在加载期返回错误并止动;域内合法极端(攻击基线 0)不拒;主角表恰一行、攻击配 0 拒绝。 - 零随机回放:同一动作与受击序列驱动两个独立实例,存活投影、逐实例摇定轨迹、顺位返回序列逐项相同。 - 表实一致:三张配置表字段与 registry 的 enemy / hero / skill 条目逐字段一致。 @@ -306,3 +306,4 @@ Boss 专属身份 = 专属池承载:独占技能 + 权重轮廓(**技能错 | 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 01592997..a5eb13d1 100644 --- a/design/gdd/systems/排雷循环/地形变异.md +++ b/design/gdd/systems/排雷循环/地形变异.md @@ -69,7 +69,7 @@ - 直伤量为加法核小整数(effect_value ∈ [1,9],行值 provisional 归难度曲线与Boss);每格携带单类型单 id。 - 变异格未开时无预告呈现(遭遇式;视觉标识归表现层升级批)。 -候选池门控(框架级现行机制):一种变异要进入本关的布置候选,须同时满足三个条件——它的解锁关号不大于当前关卡序号(直接整数比较)、它声明的地形(board_types)与本地形有交集(声明为空集等于通配)、且节点身份匹配(scope=global 行仅 Boss/精英节点入池,普通战斗节点静默跳过——2026-10-04 全局作用域变异批增第三维;elite 系前向词位,首发零表行)。候选池为空是合法状态:静默布置一张无变异的普通图,不报错、不警告。门控谓词与取值域登记于 [registry 的 variant_pool_gate 条目](../../../registry/entities.yaml)。 +候选池门控(框架级现行机制):一种变异要进入本关的布置候选,须同时满足三个条件——它的解锁关号不大于当前关卡序号(直接整数比较)、它声明的地形(board_types)与本地形有交集(声明为空集等于通配)、且节点身份匹配(scope=global 行仅 Boss/精英节点入池,普通战斗节点静默跳过——2026-10-04 全局作用域变异批增第三维;elite 系前向词位,首发零表行)。候选池为空是合法状态:静默布置一张无变异的普通图,不返回错误、不警告。门控谓词与取值域登记于 [registry 的 variant_pool_gate 条目](../../../registry/entities.yaml)。 ### 全局作用域型(scope=global——Boss 图整图变异) @@ -83,7 +83,7 @@ region 型变异是「格子级」的:布置段往候选格域写格子快照 ### 零特判原则(承重约束) -变异不得改写扫雷规则本体:挖格、插旗、连锁展开的判定与执行不增加任何变异分支,代码里不允许出现"这格带某变异所以就……"。这是框架的承重约束——它保证每加一类变异都不需要回头修改规则本体,玩家面对的也始终是同一套扫雷规则,而不是一套到处开洞的例外。 +变异禁止改写扫雷规则本体:挖格、插旗、连锁展开的判定与执行不增加任何变异分支,代码里不允许出现"这格带某变异所以就……"。这是框架的承重约束——它保证每加一类变异都不需要回头修改规则本体,玩家面对的也始终是同一套扫雷规则,而不是一套到处开洞的例外。 交互全部走数据侧:规则本体只读取格子数据并按数据行动,变异的全部影响经由数据与读取方之间的约定产生(伤害型由战斗结算兑付、信息型由呈现层遮蔽)。若未来某类变异的机制确实需要规则本体做出区分,那是一次同时修订排雷玩法与本文的正式变更,不是框架默认允许的能力。 @@ -154,7 +154,7 @@ region 型变异是「格子级」的:布置段往候选格域写格子快照 - 数据生命周期:格子携带的变异是只读数据——战斗初始化末段布置、随图消亡,布置后零运行时写入,无跨图存续;生成器产物恒零变异格。 - 布置域:变异格全在初始展开区外(伤害型 closed_only 由设置顺序结构保障)且不吃危险格;每图至多一种类型;连通片 ≤ pack_max。 - 配套义务闭环(**已作废,2026-10-03 终裁**):原「定稿批须含反制兑现条目否则验收不通过」随反制道具配套义务一并作废;counter_items 恒空为合法态。 -- 全局作用域型(2026-10-04 首发批):替换制生效——Boss 图恰一行整图变异+零格子级变异标记;普通图 region 路径逐位不变(同种子布置/摇号快照对拍批前基线);off 态零扰动(effect_value=0 资源摇号与无偏斜逐位相同,白名单三行任何状态逐位不动);L1 Boss 零全局变异;Boss 图全局池空回落 region;全局取用零取号(确定性,不消费布置随机流);资源面偏斜正向池合计恒 77。 +- 全局作用域型(2026-10-04 首发批):替换制生效——Boss 图恰一行整图变异+零格子级变异标记;普通图 region 路径逐位不变(同种子布置/摇号快照与批前基线逐项比对);off 态零扰动(effect_value=0 资源摇号与无偏斜逐位相同,白名单三行任何状态逐位不动);L1 Boss 零全局变异;Boss 图全局池空回落 region;全局取用零取号(确定性,不消费布置随机流);资源面偏斜正向池合计恒 77。 ## 版本历史 @@ -169,3 +169,4 @@ region 型变异是「格子级」的:布置段往候选格域写格子快照 | 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 343a667a..baf4fb01 100644 --- a/design/gdd/systems/排雷循环/排雷玩法.md +++ b/design/gdd/systems/排雷循环/排雷玩法.md @@ -104,7 +104,7 @@ |---|---| | 免费 | 不扣行动点,账本零写入 | | 计入清图进度 | 剩余安全格从这片开完后起算——呈现上即"剩余未探索安全区域"计数 | -| 无格面资源(封锁格) | 这些格恒无资源、不再有任何加成,下游不得对它们做任何兑付 | +| 无格面资源(封锁格) | 这些格恒无资源、不再有任何加成,禁止下游对它们做任何兑付 | | 只在装板时发生一次 | 跨轮不重放,防止"每轮白送一遍" | 装板时本系统还当场校验生成产物的结构前提:出生区内无雷、数字恒真、初始展开没有大到直接吞掉全图。任一不过就拒绝装板并报出诊断,绝不停带病运行;这些前提的正常保证由[棋盘生成](棋盘生成.md)负责,本校验只是消费侧的最后一道闸。 @@ -251,3 +251,4 @@ | 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 处——初始展开铁律表「无格面资源」行「下游不得对它们做任何兑付」改「禁止下游对它们做任何兑付」。机制与数值零改动 | diff --git a/design/gdd/systems/排雷循环/棋盘生成.md b/design/gdd/systems/排雷循环/棋盘生成.md index 4ac07848..b9d7b2c7 100644 --- a/design/gdd/systems/排雷循环/棋盘生成.md +++ b/design/gdd/systems/排雷循环/棋盘生成.md @@ -5,7 +5,7 @@ ## 设计目的 -棋盘生成是全项目扫雷图的唯一生产者:战斗结算每要一张新图,它就按关卡序号与节点深度对应的参数行,确定性造出一张可推理、可通关的雷图。它在生成时刻就作出质量承诺——玩家只会输给自己选的赌(比如终局不得不猜的一格),不会拿到大面积无解的局;这是核心循环里"推理的确定性"卖点的生成端保障。同种子同参数必产同图,回放、测试、复盘都能精确复现——确定性既是卖点,也是调试工具。 +棋盘生成是全项目扫雷图的唯一生产者:战斗结算每要一张新图,它就按关卡序号与节点深度对应的参数行,确定性造出一张可推理、可通关的雷图。它在生成时刻就作出质量承诺——玩家只会输给自己选的赌(比如终局只能猜的一格),不会拿到大面积无解的局;这是核心循环里"推理的确定性"卖点的生成端保障。同种子同参数必产同图,回放、测试、复盘都能精确复现——确定性既是卖点,也是调试工具。 ## 系统范围 @@ -96,7 +96,7 @@ |---|---| | 先布后删 | 先把 N 颗雷在"全格 − 出生 3×3"上布完,再把剃雷域内的雷移除——只减不增、不重投、无迭代,必然终止且可复现;实际雷数与 N 的差额随指标观测。**剃雷域已收窄(2026-10-05 初始展开收窄批)**:从「开局免费展开(flood)域∪外扩一圈」缩到「出生 3×3 ∪ 外扩 r 环」(切比雪夫距离 ≤1+r,r=shave_ring_radius 现行 1 → 5×5=25 格)——全域剃雷=开局免费展开巨大(10×10 板 R₀ 均值 68.6=板面 68.6%)的根因;收窄后开局免费展开=出生邻域剃雷诱发的自然连锁,均值降至板面约四成(10×10 实测 39.7) | | 出生区安全 | 出生 3×3 与开局免费展开域内恒无雷;变异不落两域由布置段顺序保障(非本管线义务) | -| 开局白给板拒绝 | 开局免费展开域不得覆盖全部安全格——等于即退化板,尝试弃用重试;运行期另有同义兜底不变式,归[排雷玩法](排雷玩法.md) | +| 开局白给板拒绝 | 开局免费展开域禁止覆盖全部安全格——等于即退化板,尝试弃用重试;运行期另有同义兜底不变式,归[排雷玩法](排雷玩法.md) | | 清图可达性 | 每个安全格都必须能从出生区沿安全格八向连通走到;带孤岛安全格的板判非法,不进降级候选 | | R₀≤cap 重掷闸(2026-10-05 初始展开收窄批) | 每次尝试出板后实测自然 R₀(开局免费展开格数),超过该行 r0_max_cap 即整板作废同流重试——合法性先于质量评分(同白给板先例);全部尝试超阈 → 既有三分出口接受最不坏+非法产物标记诚实降级,玩家永不卡死;闸触发次数随指标集 r0_cap_rejected 观测(占比过高=剃雷半径与闸配比失衡信号) | @@ -142,7 +142,7 @@ 最后一条出口是诚实降级:玩家永不卡死——哪怕找不到合法板也照常出图;但绝不静默——非法产物标记随指标集上抛,由[战斗结算](../战斗循环/战斗结算.md)编排、经 [HUD 框架](../表现与支撑/HUD框架.md)诚实告知玩家(提示、补偿还是回退,呈现细节归下游)。运行期安全网兜住体验,质量红线靠调参期批量断言守住:非法产物严格零容忍、低于及格线的板数严格为零——两层不许互相折算。 -每次尝试先过合法性关——清图可达、安全格数达标、结构不变式全过——再谈质量分;非法尝试弃用重试。合法性闸在质量评分之前,质量分不得掩盖功能残废。 +每次尝试先过合法性关——清图可达、安全格数达标、结构不变式全过——再谈质量分;非法尝试弃用重试。合法性闸在质量评分之前,质量分禁止掩盖功能残废。 ### 图类型标签与第三轴预留:主题恒定、Boss 板有座位 @@ -195,7 +195,7 @@ | P1 | 与排雷玩法的展开域回验集成 | 回验两臂登记在对方文档,集成随对方排期 | | P2 | 推理域扩展(solver_rules 启用其他规则集或新增信息源) | 改可推理率定义 = 文档修订,MVP 冻结 | | P2 | 生成异步化与成本闸正式值定稿 | 实现期决策,随性能预算批 | -| P2 | ~~变异布置内容接入~~(已收口——2026-09-20 首批类型定稿批:布置执行位改排战斗初始化第 4 步,管线零布置义务化) | — | +| P2 | ~~变异布置内容接入~~(已完成——2026-09-20 首批类型定稿批:布置执行位改排战斗初始化第 4 步,管线零布置义务化) | — | ## 调参表 @@ -242,3 +242,4 @@ | 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 fa88abd9..b08f1641 100644 --- a/design/gdd/systems/排雷循环/行动经济.md +++ b/design/gdd/systems/排雷循环/行动经济.md @@ -159,8 +159,8 @@ (a) 兑付溢价——标中兑付按同型正向 ×(1+δ)(改战斗结算兑付公式一处,机制载体 settlement.tres flag_hit_premium = 125,percent 域);(b) 专属池重摇不启 (危险格与安全格同池结构冻结不动,留给异池后备案一并裁)。 - 登记态(落文时点):δ 落地前现行值已知破(E[标中] = E_dig < 1.25·E_dig 恒假)—— - 按「登记已知破·限期闭合」纪律落文,本批 T4 机制小批闭合;δ=1.25 时条件二以 + 登记态(写入文档时点):δ 落地前现行值已知破(E[标中] = E_dig < 1.25·E_dig 恒假)—— + 按「登记已知破·限期闭合」纪律写入文档,本批 T4 机制小批闭合;δ=1.25 时条件二以 等号压线成立(严格大于须 δ>0.25,×1.5 档留后手)。 β 比值带(数值层看护,2026-10-04 用户裁 P4): @@ -240,7 +240,7 @@ 字段名注记:2026-09-18 措辞收口批已全链对齐正式名——表字段与本文行名统一为 `refresh_cap_per_round`,账本入口统一为 `request_refresh`(registry naming_unification 兑现,切片临时名零残留)。 -跨字段校验:任一动作成本不得超过每轮预算,违反即加载期致命(fail-fast)。各域上界(8 / 64)是 MVP 量级护栏而非推导界,随调参需要修订。 +跨字段校验:任一动作成本禁止超过每轮预算,违反即加载期致命(fail-fast)。各域上界(8 / 64)是 MVP 量级护栏而非推导界,随调参需要修订。 ## 验收标准 @@ -276,3 +276,4 @@ | 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 处——推导节条件二「登记态(落文时点)」改「登记态(写入文档时点)」、「按…纪律落文」改「按…纪律写入文档」;调参表注「任一动作成本不得超过每轮预算」改「禁止超过」。机制与数值零改动 | diff --git a/design/gdd/systems/表现与支撑/HUD框架.md b/design/gdd/systems/表现与支撑/HUD框架.md index b957ce32..f0f6f9a6 100644 --- a/design/gdd/systems/表现与支撑/HUD框架.md +++ b/design/gdd/systems/表现与支撑/HUD框架.md @@ -47,7 +47,7 @@ HUD框架站在玩家与全部玩法系统之间:挖掘期它是输入的翻 ## 核心规则 -本章七节:前三节定画面的骨架与进出规则(屏、弹层、刷新),后三节定数据与资产怎么进来(载荷、占位、底线),第六节收口棋盘的类型微光信息通道。 +本章七节:前三节定画面的骨架与进出规则(屏、弹层、刷新),后三节定数据与资产怎么进来(载荷、占位、底线),第六节完成棋盘的类型微光信息通道。 ### 战斗屏三区双舞台:挖掘与结算同屏不切场景 @@ -63,7 +63,7 @@ HUD框架站在玩家与全部玩法系统之间:挖掘期它是输入的翻 分区尺寸与组件落位的像素级裁决归 [battle.md](../../ux/battle.md);三区结构与双舞台常驻是结构冻结项,修订走文档修订而非调参。节点链进度不在战斗屏呈现——它由关卡画面(选路覆盖层常驻形态)的节点态承载,见[关卡节点地图](../冒险循环/关卡节点地图.md)。 -**结论**:棋盘格边长取两档定值——12×12 的板用 36px、10×10 的板用 45px([battle.md](../../ux/battle.md) 拍板值);下式不推导这两档,只在装板时校验"定值塞得进扫雷图区",违例立即报错中止。**分辨率档位(2026-09-30 迭代 9 三裁决案甲修订)**:两档=1280×800 基准档(本表全部定值的口径)+1920×1080 档=**全局等比**(stretch canvas_items+aspect keep——16:10 设计在 16:9 窗口为等比 1.35×+左右黑边各 ~96px);本节与各屏定值一律按 1280 基准档书写,1920 档由引擎等比承载、零重排。 +**结论**:棋盘格边长取两档定值——12×12 的板用 36px、10×10 的板用 45px([battle.md](../../ux/battle.md) 拍板值);下式不推导这两档,只在装板时校验"定值塞得进扫雷图区",违例立即显示错误并中止。**分辨率档位(2026-09-30 迭代 9 三裁决案甲修订)**:两档=1280×800 基准档(本表全部定值的口径)+1920×1080 档=**全局等比**(stretch canvas_items+aspect keep——16:10 设计在 16:9 窗口为等比 1.35×+左右黑边各 ~96px);本节与各屏定值一律按 1280 基准档书写,1920 档由引擎等比承载、零重排。 ``` 可行性校验(装板期断言): @@ -166,11 +166,11 @@ HUD框架站在玩家与全部玩法系统之间:挖掘期它是输入的翻 配套拍板(同日):魔法提灯=灯甲形态(光照圈外扩 +2 格,flat 整数档)随迷雾立项;**类型微光不随视野扩大**(类型先读仍只贴身 8 格,微光锚=可挖域);提灯载体归 aux_items 新行(登记原文——2026-10-07 用户令改道为独立卡,2026-10-08 裁案A=秘宝·同调位新行落位,见下方实施状态注记;**2026-10-09 用户裁退役**——新目录 15 件未收提灯,fog_lantern 数据行与卡④接线拆除归退役删行批〔实装批〕,功能由新目录普通档「阔视野带」承接,06 登记条在册),呈现面挂「资产升档重产批」(挂账不动)。 -**实施状态(2026-10-03 迭代 11 第④批已入库)**:迷雾遮蔽+菱形灯光区跟随+暗淡记忆态上线,探针断言随批扩(ui_input_probe case⑮)。四裁决逐条对账——①案甲视野迷雾立项(纯呈现层):迷雾开关分层验证可用(呈现态布尔,off 态=无迷雾基线),同板同动作序列与 MC 对拍逐位一致;②暗淡记忆态:区外已开格灰显+数字可读,明度按 [art-bible](../../../art/art-bible.md) §6.5 落文值(记忆板 #3A3A3A/记忆墨 #C4C4C4,provisional);③灯光半径=微光环 8 格同圈:LIGHT_RADIUS=8 参数化(曼哈顿菱形,常量);④提灯 +2、微光不扩:FOG_LANTERN_BONUS=+2(落码常量实名——本条旧记 LIGHT_RADIUS_LANTERN_BONUS 系文档侧拟名,随卡④入库对齐),类型微光仍贴身 8 邻格零改动。**〔2026-10-05 迭代14⑤接线注记〕公共接线面已就位**——`board_view.set_fog_lantern(enabled)`(true=半径 8+2、false=复原 0;写入即 refresh 重算雾态),半径算式消费 `_fog_lantern` 迷雾批已在位;ui_input_probe case⑮ 增接线断言(开=dist 9 格转可见+lantern=2/关=复原)。**〔2026-10-08 迭代 19 卡④入库注记〕载体到位+接线闭环=功能可达**——载体=秘宝·同调位新行 `fog_lantern`「魔法提灯」(treasure_items.tres 表尾追加,desc「灯光区半径+2」,slot_cost 1、营地秘宝匣同调装配获渠,行字段=用户「按推荐」全收);生产路径=runner set_attunement→enc.attunement→begin_battle 注入 orchestrator 装配集→公共只读出口 `attune_has`→组合根呈现桥 `main._sync_fog_lantern` 每战首轮装配链**显式重算含否**(🔴 复原语义=禁战斗结束隐式复原——卸装/未装配写 0,断点续玩/跨关天然正确);未装配=false 写 0=缺省零扰动基线逐位不变。测试随批:case⑮ 载体级段(装配→lantern=2+dist R+1 转可见+卸装复原)+smoke 行字段/同调目录投影(九件→十件)/装配贯通断言+存档回归 Part 6+单测 fog_lantern_wiring(run_all 17→18 套)。原「提灯载体归 aux_items 新行随 Alpha 信息件重定批」登记去向就此销账(改道留痕=需求卡片-提灯载体道具批-2026-10-07 §一)。验收线(本篇「验收标准」视野迷雾行)逐条转正式验收:区内完整渲染/区外已开格灰显可读/区外未开格不可见/灯光区随移动跟随/两态结算逐位一致;实机目检人闸(迷雾观感/记忆态可读性/移动跟随流畅度)随出口闸。黑暗区域渲染规格承载 = art-bible §6.5(v3.5)。 +**实施状态(2026-10-03 迭代 11 第④批已入库)**:迷雾遮蔽+菱形灯光区跟随+暗淡记忆态上线,探针断言顺带扩(ui_input_probe case⑮)。四裁决逐条对账——①案甲视野迷雾立项(纯呈现层):迷雾开关分层验证可用(呈现态布尔,off 态=无迷雾基线),同板同动作序列与 MC 对拍逐位一致;②暗淡记忆态:区外已开格灰显+数字可读,明度按 [art-bible](../../../art/art-bible.md) §6.5 落文值(记忆板 #3A3A3A/记忆墨 #C4C4C4,provisional);③灯光半径=微光环 8 格同圈:LIGHT_RADIUS=8 参数化(曼哈顿菱形,常量);④提灯 +2、微光不扩:FOG_LANTERN_BONUS=+2(落码常量实名——本条旧记 LIGHT_RADIUS_LANTERN_BONUS 系文档侧拟名,随卡④入库对齐),类型微光仍贴身 8 邻格零改动。**〔2026-10-05 迭代14⑤接线注记〕公共接线面已就位**——`board_view.set_fog_lantern(enabled)`(true=半径 8+2、false=复原 0;写入即 refresh 重算雾态),半径算式消费 `_fog_lantern` 迷雾批已在位;ui_input_probe case⑮ 增接线断言(开=dist 9 格转可见+lantern=2/关=复原)。**〔2026-10-08 迭代 19 卡④入库注记〕载体到位+接线闭环=功能可达**——载体=秘宝·同调位新行 `fog_lantern`「魔法提灯」(treasure_items.tres 表尾追加,desc「灯光区半径+2」,slot_cost 1、营地秘宝匣同调装配获渠,行字段=用户「按推荐」全收);生产路径=runner set_attunement→enc.attunement→begin_battle 注入 orchestrator 装配集→公共只读出口 `attune_has`→组合根呈现桥 `main._sync_fog_lantern` 每战首轮装配链**显式重算含否**(🔴 复原语义=禁战斗结束隐式复原——卸装/未装配写 0,断点续玩/跨关天然正确);未装配=false 写 0=缺省零扰动基线逐位不变。顺带测试:case⑮ 载体级段(装配→lantern=2+dist R+1 转可见+卸装复原)+smoke 行字段/同调目录投影(九件→十件)/装配贯通断言+存档回归 Part 6+单测 fog_lantern_wiring(run_all 17→18 套)。原「提灯载体归 aux_items 新行随 Alpha 信息件重定批」登记去向就此销账(改道留痕=需求卡片-提灯载体道具批-2026-10-07 §一)。验收线(本篇「验收标准」视野迷雾行)逐条转正式验收:区内完整渲染/区外已开格灰显可读/区外未开格不可见/灯光区随移动跟随/两态结算逐位一致;实机目检人闸(迷雾观感/记忆态可读性/移动跟随流畅度)随出口闸。黑暗区域渲染规格承载 = art-bible §6.5(v3.5)。 ### 营地覆盖层:四柜台并排(程序占位——视觉终稿归营地视觉批) -营地覆盖层自 2026-10-12(迭代 21 落地)为**四柜台并排**布局:①树淬炼(树脊柱界面形态,营地主界面)②锻造工坊(钥匙门+点亮展开工作间)③秘宝匣(钥匙门+目录与同调装配)④奖励格图鉴(常开无门槛)——宽度不足横向滚动兜底;全部程序占位视觉(占位纪律延续,2026-10-11 用户令),**视觉与布局终稿归 HUD 营地视觉批**(未立项)。结构现行事实源 = [天赋树](../跨局循环/天赋树.md)「营地=树:统一模型」节(2026-10-13 迭代 21 反哺⑤落文登记——本篇原无营地柜台登记面,随批补缺)。 +营地覆盖层自 2026-10-12(迭代 21 落地)为**四柜台并排**布局:①树淬炼(树脊柱界面形态,营地主界面)②锻造工坊(钥匙门+点亮展开工作间)③秘宝匣(钥匙门+目录与同调装配)④奖励格图鉴(常开无门槛)——宽度不足横向滚动兜底;全部程序占位视觉(占位纪律延续,2026-10-11 用户令),**视觉与布局终稿归 HUD 营地视觉批**(未立项)。结构现行事实源 = [天赋树](../跨局循环/天赋树.md)「营地=树:统一模型」节(2026-10-13 迭代 21 反哺⑤落文登记——本篇原无营地柜台登记面,顺带补缺)。 ### 可访问性基线:看得清、不闪、纯鼠标玩得通 @@ -309,3 +309,4 @@ HUD框架站在玩家与全部玩法系统之间:挖掘期它是输入的翻 | 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 处(探针断言扩、测试引导语);营地覆盖层注记「随批补缺」→「顺带补缺」。机制、数值、结构零改动 | diff --git a/design/gdd/systems/表现与支撑/存档序列化.md b/design/gdd/systems/表现与支撑/存档序列化.md index e8d2a879..ea9433d7 100644 --- a/design/gdd/systems/表现与支撑/存档序列化.md +++ b/design/gdd/systems/表现与支撑/存档序列化.md @@ -56,7 +56,7 @@ SaveManager 不依赖任何玩法系统就能工作:它是被动的承载方 第二条边界是反面清单:局内资源不入存档。行动点、储备行动点、道具库存、生命账本、GP(金币)全部单局清零——各归各的系统管,没有局内数值需要持久化。若未来某局内资源要开放跨局携带(如储备行动点跨战斗携带),须修订其池规则并向本系统登记持久化归属,禁止静默超域。 -**唯一豁免 = `breakpoint` 断点域**(2026-09-29 迭代 8 卡①随批修订):断点是冒险进行中的瞬态快照,不是跨局携带——里面的生命/GP/道具库存只在「续玩上局」时还原进局内,冒险收束(通关/失败/放弃)即整域清除,永远不会渗进永久进度。反面清单的管辖对象因此收窄为 `meta` 永久进度域(冒烟域界扫描随批收窄到 meta 域);断点域自身的字段口径归[冒险结构](../冒险循环/冒险结构.md)登记。 +**唯一豁免 = `breakpoint` 断点域**(2026-09-29 迭代 8 卡①顺带修订):断点是冒险进行中的瞬态快照,不是跨局携带——里面的生命/GP/道具库存只在「续玩上局」时还原进局内,冒险收束(通关/失败/放弃)即整域清除,永远不会渗进永久进度。反面清单的管辖对象因此收窄为 `meta` 永久进度域(冒烟域界扫描顺带收窄到 meta 域);断点域自身的字段口径归[冒险结构](../冒险循环/冒险结构.md)登记。 存档是单文件 JSON(`user://save.json`),字典键一律字符串。数据模型(现行 = v6;示例值全为零值默认态): @@ -101,7 +101,7 @@ SaveManager 不依赖任何玩法系统就能工作:它是被动的承载方 | `adventure_total` | 冒险总局数终身计数(开局即计、含放弃与失败,v6) | [生涯](../跨局循环/生涯.md) | | `adventure_cleared` | 通关局数终身计数(三关全通才计 1,v6;秘宝条件解锁计数键) | [生涯](../跨局循环/生涯.md) | | `vision_used` | 真视类工具累计使用次数终身计数(迭代 22 新增——信标网络解锁行为条件;**v6 域后扩列补零、不升版本**;写入唯一经 `add_vision_used`,冒险收束聚合入账;断点随件键=`vision_counter_used`,续玩回填缺省 0) | [秘宝](../跨局循环/秘宝.md) | -| ~~`forge_levels`~~ | ~~属性锻造三档等级~~ | **已退役**(迭代 21 T5:行族/访问器/域随攻防所有权切分删除——`save_manager.gd:12-14/:399-401` 白名单收口;继任 = 锻造工坊路线等级域,见下行计划登记) | +| ~~`forge_levels`~~ | ~~属性锻造三档等级~~ | **已退役**(迭代 21 T5:行族/访问器/域随攻防所有权切分删除——`save_manager.gd:12-14/:399-401` 白名单收窄;继任 = 锻造工坊路线等级域,见下行计划登记) | | `forge_routes`(**已落地 v7——锻造工坊实装批 T5,迭代 23**) | {levels: 六路线等级(sword/spear/staff/light/heavy/ward), unlocked: 直购解锁路线 id 清单, weapon: 当前武器路线 id, armor: 当前甲路线 id};无特效域;旧档缺键补齐 = 初始持有态 | [锻造工坊](../跨局循环/锻造工坊.md) | | `breakpoint` | 冒险断点快照(停点粒度续玩域;空字典 = 无断点合法态——「继续上局」隐藏) | [冒险结构](../冒险循环/冒险结构.md) | @@ -137,7 +137,7 @@ v4/v5/v6 各域缺键由读取方按默认值补齐(空集合/0),旧档零 | 版本更高(未来版本的档) | **拒读且禁写**:不加载、后续写盘一律拒绝、内存以默认新档运行——保护未来版本的档不被当前版本覆写 | | 版本更低(旧档) | 读档时逐级迁移:从旧版本起逐个调用注册的迁移函数升到当前版本;任一步失败按损坏兜底处理 | -迁移函数经 `register_migration(旧版本号, 函数)` 注册:函数把数据从「旧版本」改写成「旧版本 + 1」。生产迁移链现行六件(v2 起自注册):v1→v2 = 断点域补空;v2→v3 = 断点附随件与摘要 keystone_drops 补键(读取方 .get 兜底);v3→v4 = 同调三域补键;v4→v5 = 树域两键补齐(原挂接的「三体系迁移」体已随迭代 21 T5 攻防所有权切分删除——`save_manager.gd:96-98`、`meta_progression.gd:294-295` 实证;forge_levels 旧域同批清退,加载时按默认模型键集白名单收口,`save_manager.gd:399-401`);v5→v6 = 生涯两终身计数域补零;**v6→v7 = 锻造工坊域 forge_routes 缺键补齐(迭代 23 T5——无结构迁移体,版本号推进仅为 schema_version 对齐;解锁态派生不落档:初始持有〔表 initial_owned〕∨ 直购〔unlocked 清单〕∨ 练满前一档〔levels[prereq]≥cap〕)**。任一步失败按损坏兜底处理。 +迁移函数经 `register_migration(旧版本号, 函数)` 注册:函数把数据从「旧版本」改写成「旧版本 + 1」。生产迁移链现行六件(v2 起自注册):v1→v2 = 断点域补空;v2→v3 = 断点附随件与摘要 keystone_drops 补键(读取方 .get 兜底);v3→v4 = 同调三域补键;v4→v5 = 树域两键补齐(原挂接的「三体系迁移」体已随迭代 21 T5 攻防所有权切分删除——`save_manager.gd:96-98`、`meta_progression.gd:294-295` 实证;forge_levels 旧域同批清退,加载时按默认模型键集白名单收窄,`save_manager.gd:399-401`);v5→v6 = 生涯两终身计数域补零;**v6→v7 = 锻造工坊域 forge_routes 缺键补齐(迭代 23 T5——无结构迁移体,版本号推进仅为 schema_version 对齐;解锁态派生不落档:初始持有〔表 initial_owned〕∨ 直购〔unlocked 清单〕∨ 练满前一档〔levels[prereq]≥cap〕)**。任一步失败按损坏兜底处理。 ### 损坏兜底 @@ -171,7 +171,7 @@ MVP 不要求本系统的闭环([不做清单](../../05-不做清单.md)把单 ## 验收标准 - 往返一致:全部域写入非默认值 → 写盘 → 新实例读回,逐域逐值相等(冒烟承载)。 -- 钥石不丢:写入、读回与迁移不得破坏[元进度](../跨局循环/元进度.md)的钥石只增不减判据;余额不足的消费被拒绝且无副作用(冒烟承载)。 +- 钥石不丢:写入、读回与迁移禁止破坏[元进度](../跨局循环/元进度.md)的钥石只增不减判据;余额不足的消费被拒绝且无副作用(冒烟承载)。 - 高版本拒读禁写:高版本档加载被拒、原文件字节不动、后续写盘被拒且文件仍字节不动(冒烟承载)。 - 改版不弃档:旧版本档经迁移链读回;低版本档缺新域按默认补齐,既有值保留(冒烟承载)。 - 断点域契约(迭代 8 卡①):七字段拍板面写读往返逐位一致;旧档无断点域迁移为合法空态;三结局清除(冒烟+单测承载)。 @@ -192,7 +192,8 @@ MVP 不要求本系统的闭环([不做清单](../../05-不做清单.md)把单 | 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.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 述——「收口」系白名单收紧义,按本篇既有词「收窄」就近改写);钥石判据「不得破坏」→「禁止破坏」。域、版本、迁移语义零改动 | diff --git a/design/gdd/systems/表现与支撑/数据配置.md b/design/gdd/systems/表现与支撑/数据配置.md index 530dca5f..6fd38597 100644 --- a/design/gdd/systems/表现与支撑/数据配置.md +++ b/design/gdd/systems/表现与支撑/数据配置.md @@ -69,7 +69,7 @@ | 难度表 `DifficultyTable` | 难度修饰乘数(占位空表) | [难度曲线与Boss](../冒险循环/难度曲线与Boss.md) | | 关卡表 `LevelTable` | 逐关节点图与层名 | [冒险结构](../冒险循环/冒险结构.md) | | 冒险表 `AdventureTable` | 关卡大奖励与钥石入账(单行全局) | [冒险结构](../冒险循环/冒险结构.md) | -| 元进度表 `MetaTable` | 元进度字段(已建表 2026-09-21——现行五行族:属性锻造 / Boss 钥石 / 工坊阈值 / 换算率 / 同调刷新升级行族,随批扩列) | [元进度](../跨局循环/元进度.md) | +| 元进度表 `MetaTable` | 元进度字段(已建表 2026-09-21——现行五行族:属性锻造 / Boss 钥石 / 工坊阈值 / 换算率 / 同调刷新升级行族,顺带扩列) | [元进度](../跨局循环/元进度.md) | 举证:本节为数据纪律约定,无计算。违规检测 = 静态扫描加人工复核,随各表回填定稿与里程碑检查执行。 @@ -96,11 +96,11 @@ ### fail-fast 校验:宁可启动失败,不带病运行 -数据出错的处置只有一条铁律:致命中止,无软回退——错误数值上线比崩溃更伤信任底线。fail-fast(本文含义:校验不通过宁可立即中止,也不带着错误数据继续运行)按两个时机分开承载:加载期错误先收集后统一报错,一次看全所有错再中止;运行期错误当场致命,两者处置分开。 +数据出错的处置只有一条铁律:致命中止,无软回退——错误数值上线比崩溃更伤信任底线。fail-fast(本文含义:校验不通过宁可立即中止,也不带着错误数据继续运行)按两个时机分开承载:加载期错误先收集后统一显示错误,一次看全所有错再中止;运行期错误当场致命,两者处置分开。 | 错误类别 | 什么情况 | 处置 | |---|---|---| -| 加载期校验错误 | 字段越界、类型不符、表为空、缺入口锚行、重复键、权重和为零、悬空引用、段序违例 | 收集后统一报错,致命中止并输出错误清单 | +| 加载期校验错误 | 字段越界、类型不符、表为空、缺入口锚行、重复键、权重和为零、悬空引用、段序违例 | 收集后统一显示错误,致命中止并输出错误清单 | | 运行期致命 | 进度坐标越域请求、未设主种子就取随机数 | 不分构建走致命错误路径;无窗口模式进程非 0 退出 | ``` @@ -163,7 +163,7 @@ 1. 结构先行:交付全部表结构类与占位表(含键结构),先有格子。 2. 各回填责任方按系统定稿顺序回填数值。 -3. 进程启动:逐表加载、逐表校验,错误收集后统一报错;全绿进入就绪态。 +3. 进程启动:逐表加载、逐表校验,错误收集后统一显示错误;全绿进入就绪态。 4. 全部系统经全局读取口读数,无第二取数路径。 5. 冒险开始注入主种子并开事件日志会话,统一流按事件取号。 6. 调试构建热重载即改即验:战斗中被闸门拒绝,结束后手动再触发。 @@ -200,7 +200,7 @@ - 黄金向量:随机派生纯函数对登记向量逐个复算相等;同输入恒同输出;同序号重复调用恒等。 - 计数器纪律:连续取号跨模拟关卡切换,计数器单调不重置;热重载成败都不改变主种子与计数器。 - 向上取整解析:请求无精确行时返回**不低于**请求坐标的最近行并留一条警告;请求超出最大已有行时封顶取最大行并留警告;同类警告去重;精确命中零警告。 -- 越域与未播种:坐标低于合法域(关卡序号 <1、节点深度 <0)在进入解析前致命中止(Fatal 级诊断 + 进程退出码 1,致命类单测 `tests/unit/data_config/config_db_fatal_oob_test.gd` 验证——迭代 19 卡① T4 探针退役随批改指,原切片探针断言面与 run_all 致命类单测重复故退役);高于最大已有行走封顶取最大行(警告留痕,不致命);未设主种子就取随机数致命中止,无默认种子兜底。 +- 越域与未播种:坐标低于合法域(关卡序号 <1、节点深度 <0)在进入解析前致命中止(Fatal 级诊断 + 进程退出码 1,致命类单测 `tests/unit/data_config/config_db_fatal_oob_test.gd` 验证——迭代 19 卡① T4 探针退役顺带改指,原切片探针断言面与 run_all 致命类单测重复故退役);高于最大已有行走封顶取最大行(警告留痕,不致命);未设主种子就取随机数致命中止,无默认种子兜底。 - 热重载门:战斗中重载被拒绝且读数不变、不发通知;门未置位时新值可读且通知恰一次;校验失败保留旧表停留就绪态。 - 版本常量在位:表结构版本常量存在且全部表结构携带版本字段(高版本拒读判定归存档序列化)。 - 零字面量、零第二路径:静态扫描加人工复核确认玩法代码无数值字面量、无读取口之外的表加载、无全局随机函数调用。 @@ -218,6 +218,7 @@ | 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 通道 + 独立进程致命类单测 + 冒烟 ceil 断言) | +| 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 88ffdd51..5d6fcf8b 100644 --- a/design/gdd/systems/表现与支撑/音频.md +++ b/design/gdd/systems/表现与支撑/音频.md @@ -94,7 +94,7 @@ 明确不覆盖(切片期不出声):坍塌显形连锁音效——与连锁动画同批对位设计,批次未定(见「待办」);道具使用音频反馈——[秘宝](../跨局循环/秘宝.md)登记的表现打磨项,排 Alpha。 -切片期验收口径:必覆盖五个挂点逐点有声,缺一即不过;换掉临时音频文件不需要改动任何逻辑代码(临时与正式走同一批挂点);挖掘、踩雷、结算、终局四类反馈听感互相可区分,负反馈不逐行轰炸;声音永远跟着已经发生的事走,不得先于事件。 +切片期验收口径:必覆盖五个挂点逐点有声,缺一即不过;换掉临时音频文件不需要改动任何逻辑代码(临时与正式走同一批挂点);挖掘、踩雷、结算、终局四类反馈听感互相可区分,负反馈不逐行轰炸;声音永远跟着已经发生的事走,禁止先于事件。 ### 坍塌显形:与连锁动画配对的音效半边 @@ -159,3 +159,4 @@ | 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 8d1edc4a..6a0d5af7 100644 --- a/design/gdd/systems/跨局循环/元进度.md +++ b/design/gdd/systems/跨局循环/元进度.md @@ -1,7 +1,7 @@ # 元进度 > 一句话:跨局成长——钥石在营地换成永久强化,存档随冒险变厚 -> 状态:已定稿(2026-09-18 元进度定稿批,用户拍板收口) +> 状态:已定稿(2026-09-18 元进度定稿批,用户拍板) ## 设计目的 @@ -152,7 +152,7 @@ MVP 不要求本系统的闭环([不做清单](../../05-不做清单.md)整体 - 单局零依赖:禁用元进度后,单局循环的全部现行验收照常通过。 - 解锁可见:换强化后,下一局能遇到或用到强化内容,玩家能说出这局与上局的具体差别。 - 首杀可归因:Boss 首杀与重复杀的入账在冒险摘要中可区分,重复杀小额恒定、不随刷取次数递减。 -- 换算可审计:每级永久强化对应的带平移量在换算率表有行可查;验收读数以平移后带判读,护甲行不得用基线读数外推。 +- 换算可审计:每级永久强化对应的带平移量在换算率表有行可查;验收读数以平移后带判读,护甲行禁止用基线读数外推。 ## 待办 @@ -187,3 +187,4 @@ MVP 不要求本系统的闭环([不做清单](../../05-不做清单.md)整体 | 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 更名漏改,显示文字与行内其余文字同步换代为现行名,其余不动)。机制与数值零改动 | diff --git a/design/gdd/systems/跨局循环/天赋树.md b/design/gdd/systems/跨局循环/天赋树.md index 1ed26f50..889a0644 100644 --- a/design/gdd/systems/跨局循环/天赋树.md +++ b/design/gdd/systems/跨局循环/天赋树.md @@ -211,3 +211,4 @@ A/B 态只放规则面:节点行持 a/b 双效果键(封闭规则键词表 R | 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 处、机制零改动 | diff --git a/design/gdd/systems/跨局循环/秘宝.md b/design/gdd/systems/跨局循环/秘宝.md index 621281ef..26e76555 100644 --- a/design/gdd/systems/跨局循环/秘宝.md +++ b/design/gdd/systems/跨局循环/秘宝.md @@ -139,7 +139,7 @@ ### 直接代答必须窄域:真视的范围护栏 -凡是"直接告诉你危险格在哪"的效果(下文称真视),一次最多照亮 3×3 的窗口,任何道具都不允许全图看雷。全图级范围只留给恢复推理原料类的效果——显影、预读这类把已有事实交还玩家的信息,允许大范围(原则上被允许,见不做清单的边界锚)。这条限制写进数据校验:任何真视类道具的目标域字段超过 3×3,加载数据时直接报错拒绝——护栏由加载期强制,不靠运行时拦截。 +凡是"直接告诉你危险格在哪"的效果(下文称真视),一次最多照亮 3×3 的窗口,任何道具都不允许全图看雷。全图级范围只留给恢复推理原料类的效果——显影、预读这类把已有事实交还玩家的信息,允许大范围(原则上被允许,见不做清单的边界锚)。这条限制写进数据校验:任何真视类道具的目标域字段超过 3×3,加载数据时直接返回错误并拒绝——护栏由加载期强制,不靠运行时拦截。 **道具的收益在"少赌",不在"单赌更安全"**:信息类道具不改变棋盘,只减少玩家必须盲赌的次数。真视把 k 格移出盲挖候选域——这 k 格从"要赌"变成"必避或必旗"的确定决策;情报类道具抬高棋盘可推理率,收缩"只能赌"的格子池。单次盲赌的命中率会随格子池收缩而上升,这是正常读数——收益按"赌的次数变少、期望踩雷下降"计,不按单次命中率计。 @@ -215,7 +215,7 @@ 2. 冒险开始:被动件整局生效,主动件充能注入(每冒险重置)。 3. 挖掘期玩家选中主动件与目标发起使用,战斗结算按上文四步编排受理。 4. 呈现层重查刷新:玩家看到情报或行动点入账,继续挖格决策。 -5. 换图、弃图刷新或战斗结束时叠加层随图清空;冒险结束时装配与充能账随冒险收口。 +5. 换图、弃图刷新或战斗结束时叠加层随图清空;冒险结束时装配与充能账随冒险收束。 ## P1 / P2 后置 @@ -243,7 +243,7 @@ playtest 预警(预注册,归难度曲线与Boss): ## 验收标准 -- 护栏强制:任何标出危险格的道具定义,目标域字段超过 3×3 时数据加载直接报错拒绝;现行 12 件逐件过护栏校验(迭代 22 已交付,2026-10-12)。 +- 护栏强制:任何标出危险格的道具定义,目标域字段超过 3×3 时数据加载直接返回错误并拒绝;现行 12 件逐件过护栏校验(迭代 22 已交付,2026-10-12)。 - 覆盖检查:效果三方向(信息/行动资源/操作能力)各有新目录承载,检查按「设计骨架」节口径执行;逐件的效果格归属见「目录(重设计 v1)」三表。 - 两域正交:秘宝件经同调位装配生效,不入局内道具背包,与奇物背包互不混装。 - 使用窗口:非挖掘期的使用请求被拒绝且不消耗;挖掘期任意时点可发起。 @@ -264,7 +264,7 @@ playtest 预警(预注册,归难度曲线与Boss): | 版本 | 日期 | 改动 | |---|---|---| | v3.0 | 2026-10-12 | **迭代 22 反哺落文批(实现报告 §三①②③,用户逐点裁「落文」)**:①目录三表补实态三列(item_id/解锁〔价格或条件,阈值 provisional〕/效果实现 kind)+试炼镐行换代自动兑付语义+全部「实装批落地前」现状句换代(定位形态节/目录引言/负责表/受理框架节/调参表/验收护栏覆盖两行)+旧目录退役指针补代码旧行已删;②代价轴转化获取行换代=试炼镐每开 8 安全格自动兑当轮 AP+1(2026-10-12 用户裁:无玩家发起入口、战斗级重置、兑付时序=揭示先于扣费故 AP 归零恰逢满点轮不结束)——设计留白〔积点账重置周期〕随裁补记;③解锁混合制节条件表实录(钥石 8 件 10/25+条件 4 件三计数键阈值)+承载换代=行内 unlock_requires 字段 | -| v0.1 | 2026-09-15 | 自归档 GDD 压缩改写 | +| 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 漏改)——行名与表结构列保留 | diff --git a/design/gdd/systems/跨局循环/锻造工坊.md b/design/gdd/systems/跨局循环/锻造工坊.md index 9491190d..8eb783ec 100644 --- a/design/gdd/systems/跨局循环/锻造工坊.md +++ b/design/gdd/systems/跨局循环/锻造工坊.md @@ -1,7 +1,7 @@ # 锻造工坊 > 一句话:营地的武器与护甲成长——武器锻造区三条路线、护甲锻造区三条路线各练各的,钥石消费,一次冒险各选一件,满级特效留位本期不做 -> 状态:**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 数值批〔未排期〕;实装待办在册 [06-待办清单](../../06-待办清单.md)「锻造工坊实装批」条——**开工门 = 17 裁点清零 + 用户发令,裁点门已满足** +> 状态:**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 数值批〔未排期〕;实装待办在册 [06-待办清单](../../06-待办清单.md)「锻造工坊实装批」条——**开工门 = 17 裁点清零 + 用户发令,裁点门已满足** > 成文底稿:`design/research/提案-武器锻造系统-2026-10-07.md`(提案过程稿——全部备选案与淘汰依据、用户原案逐条对照见彼;本文只收录定案口径;**未启用的满级特效候选池亦留彼 §八**,不进正文) ## 设计目的 @@ -150,7 +150,7 @@ 17 裁点全部拍板,本表即终态(含本会话呈报的两条子问 4a-1 / 4b-1,共 19 行)。「推翻推荐」四行已同步改正文对应节。实装批以本表 + 下节「工作间内容清单」为需求卡片输入。 -| # | 裁点 | 裁决结果 | 落文处 | 备注 | +| # | 裁点 | 裁决结果 | 写入处 | 备注 | |---|---|---|---|---| | 1 | 武器实体化程度 | **丙**:当前武器单选 + 每件独立等级路线(两向可逆:砍独立等级退为纯路线,加库存实体升级为装备) | 「三件武器」节 | 按推荐案 | | 1a | 携带 / 选中数 | **一次冒险 = 一个武器类型 + 一个甲型** | 「三件武器」「三型护甲」节 | 扩面(原裁点只问武器携带数) | @@ -165,7 +165,7 @@ | 4a | 成长曲线形状 | 前缓后陡(只锁方向,值归 M4) | 「成长曲线与解锁」节 | 按推荐案 | | 4a-1 | 〔子问〕曲线×定价"又贵又弱"提示 | **撤回**——该结论无依据(定价为现役沿用参数、前期弱是曲线意图),不落任何方向性判断;只留"两条旋钮同批标定"程序句 | 同上 | 呈报方撤回 | | 4b | 解锁节奏 | 锻造内自闭环(不绑关卡进度) | 同上 | 按推荐案 | -| 4b-1 | 〔子问〕解锁通道语义 | **并联双通道**:练满前一档 **OR** 一次性解锁价,两者互不影响、玩家自选 | 同上 | 原正文"或"字歧义收口 | +| 4b-1 | 〔子问〕解锁通道语义 | **并联双通道**:练满前一档 **OR** 一次性解锁价,两者互不影响、玩家自选 | 同上 | 原正文"或"字歧义完成裁决 | | 5a | 柜台承载 | **已结案(2026-10-11 A②)**:四柜台并排、攻防独立柜台、生命档移除 | 「柜台承载」节 | v0.4 结案 | | 5b | 货币 | 纯钥石(用户注:当前无其他材料,钥石 = 统一货币;后续若要区分再重构,不预先建面) | 「经济」节 | 按推荐案(且受两币分工条款锁定) | | 5c | 材料经济 | 纯钥石零材料 | 「经济」节 | 按推荐案 | @@ -238,3 +238,4 @@ | 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 反哺④残余落文行已入库而状态行未随批更替,本批补齐,事实零变更)。机制与数值零改动 | diff --git a/design/gdd/ux/battle.md b/design/gdd/ux/battle.md index e39c5954..7344c7fb 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-09(文档正确性审查批:秘宝槽/奇物列表/明细回看/TunePanel/棋盘尺寸/清库义务 在役态对齐——见文末修订记录) +> **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 @@ -48,7 +48,7 @@ 战斗屏是**上下文相关屏**(仅由战斗节点进入),非顶层常驻。关卡内节点进度常驻关卡画面(独立屏的常驻枢纽形态,节点态即进度呈现:已过暗金、当前金、候选通道亮金、Boss 紫赤描边),战斗屏零进度承载——战斗结束返回关卡画面,玩家始终知道自己身处图中第几环。 - 上游屏:关卡画面(选路枢纽,屏级 spec:[level-map.md](level-map.md)——2026-09-27 建档;分支节点图形态,切片第一关为单链特例) -- 下游屏:关卡画面(选路枢纽,spec:[level-map.md](level-map.md))——战斗胜利后返回选路;落地奖励/恢复节点时由关卡画面域开节点覆盖层(NodeOverlay,恢复点全量服务、奖励点=三选一构筑点)确认兑付——节点奖励屏 spec 已出生:[node-reward.md](node-reward.md) v1.0(2026-09-29 迭代 7 T5 随批出生,06 条目兑现;2026-09-27「不立独立 spec」拍板随之被取代) +- 下游屏:关卡画面(选路枢纽,spec:[level-map.md](level-map.md))——战斗胜利后返回选路;落地奖励/恢复节点时由关卡画面域开节点覆盖层(NodeOverlay,恢复点全量服务、奖励点=三选一构筑点)确认兑付——节点奖励屏 spec 已出生:[node-reward.md](node-reward.md) v1.0(2026-09-29 迭代 7 T5 顺带出生,06 条目兑现;2026-09-27「不立独立 spec」拍板随之被取代) - 下游屏:关卡结算([level-clear.md](level-clear.md),末节点 Boss 胜利——2026-09-27 建档) - 平行屏:图例面板 overlay(本屏内域屏);~~结算明细回看 overlay~~(2026-10-04 P-C7 退役——冒险中回看归「生涯」) @@ -86,13 +86,13 @@ 4. **规划面**(边缘注视,常读):攻击值与修正来源(C 区数据框)、敌人意图徽标与顺位(B 区站桩);HP 与状态效果由单位本体(B 区站桩)唯一承载——数据框不重复展示 5. **进度语境**:轮次/阶段指示、图例入口(关卡节点进度常驻关卡画面,战斗屏不承载——见 Navigation Position) -依据:挖掘期玩家视线锚定棋盘(art-bible §2.1"视线始终被数字牵引");结算期视线转向战斗画面区(§2.2"兑现光带逐行横扫")。规划信息必须常读但不得抢焦——这正是用户布局图三分下栏的合理性:**动作区居中,规划区两翼**。 +依据:挖掘期玩家视线锚定棋盘(art-bible §2.1"视线始终被数字牵引");结算期视线转向战斗画面区(§2.2"兑现光带逐行横扫")。规划信息必须常读但禁止抢焦——这正是用户布局图三分下栏的合理性:**动作区居中,规划区两翼**。 ### 信息归属原则与分区唯一展示面(2026-09-26 用户拍板) 每个区域准入一条信息的判据只有两条,缺一不进: -1. **循环口径原则**——战斗屏只展示**战斗小循环(单场战斗)内被消费、影响当下决策**的数据。中循环(关卡内跨战斗)与大循环(永久/营地)资源不得入侵战斗屏:它们不改变战斗内任何决策,展示只产生噪音。 +1. **循环口径原则**——战斗屏只展示**战斗小循环(单场战斗)内被消费、影响当下决策**的数据。中循环(关卡内跨战斗)与大循环(永久/营地)资源禁止入侵战斗屏:它们不改变战斗内任何决策,展示只产生噪音。 2. **单一展示面原则**——同一信息全屏只允许一个展示面。单位本体(站桩)已承载的信息(HP、立绘、状态效果),数据框不再重复展示;资源数字必须贴着它的唯一消费口(就近原则)。 按此两原则推导的分区信息归属树(每片叶子 = 该信息的唯一展示面): @@ -105,7 +105,7 @@ - 攻击值 + 修正来源角标(战斗在消费、且站桩上无展示) - 护甲 AC(2026-09-26 二轮拍板补入——我方 AC 的唯一展示面;掷点判定轴,受击侧可读性) - 秘宝槽(四槽壳在役、空槽占位——局内两步使用与关卡域库存随秘宝过渡形态退役〔迭代 11 第①批〕;现行秘宝 = 营地同调装配件,本区展示内容归装配面批次重接) - - 奇物列表(**已实装**——现行标题「特性」,迭代 9 卡⑫ 接线 + 迭代 12 呈现补齐;锻造/大奖励/关卡奖励节点获得的属性提升;与战斗内状态效果分区呈现,防「战斗结束被清」误读。**2026-10-12 奇物呈现修复批整改落地**:原逐流派聚合行退役改逐件行「件名 ×N」,零内部分类字样上屏——原 06「内部分类禁写入玩家可见面」条随批收口移除) + - 奇物列表(**已实装**——现行标题「特性」,迭代 9 卡⑫ 接线 + 迭代 12 呈现补齐;锻造/大奖励/关卡奖励节点获得的属性提升;与战斗内状态效果分区呈现,防「战斗结束被清」误读。**2026-10-12 奇物呈现修复批整改落地**:原逐流派聚合行退役改逐件行「件名 ×N」,零内部分类字样上屏——原 06「内部分类禁写入玩家可见面」条顺带完成移除) - **D 区扫雷图 · AP 条** - AP 点阵 + 停手按钮(现行) - **RAP 读数(点阵+数字)**——自 C 区迁入,置于弃图刷新按钮旁(2026-09-26 拍板:RAP 唯一消费口 = 弃图刷新,资源数字贴消费按钮) @@ -119,7 +119,7 @@ | 区 | 位置与尺寸 | 内容 | |---|---|---| -| **B 战斗画面** | 全宽 × 270px(2026-10-06 方案二拍板:演出 ≈1/3 屏,原 252) | 主角站桩立绘(左)+ 兑现演出区(中)+ 敌人站桩立绘 ×1–3(右)——**全站桩形态(2026-09-20 用户拍板,敌人卡形态待办裁决收口):主角与敌人均为无框立绘+底座,零卡片**;主角与敌人站桩 = **HP 与状态效果的唯一展示面(2026-09-26 信息归属拍板)**;底部结算明细带(24px 摘要 / 结算期 84px 实时流);顶部中央轮次·阶段指示 | +| **B 战斗画面** | 全宽 × 270px(2026-10-06 方案二拍板:演出 ≈1/3 屏,原 252) | 主角站桩立绘(左)+ 兑现演出区(中)+ 敌人站桩立绘 ×1–3(右)——**全站桩形态(2026-09-20 用户拍板,敌人卡形态待办裁决完成):主角与敌人均为无框立绘+底座,零卡片**;主角与敌人站桩 = **HP 与状态效果的唯一展示面(2026-09-26 信息归属拍板)**;底部结算明细带(24px 摘要 / 结算期 84px 实时流);顶部中央轮次·阶段指示 | | **C 角色信息** | 左下 240px × 530px(2026-10-06 方案二:548→530) | 攻击值(含修正显示)、护甲 AC;秘宝槽、奇物列表(现行标题「特性」)——HP 条/RAP 池/状态效果槽/立绘占位/钱包行退役(2026-09-26 信息归属拍板:HP 与状态唯一展示面 = B 区站桩;RAP 迁 D 区 AP 条;GP/钥石迁出战斗屏) | | **D 扫雷图** | 中下 ~1036px × 530px(2026-10-06 方案二:548→530——压缩全部由面板空档吸收,**棋盘 438×438 原尺寸不缩、格子不变**;原右下面板删除后横向加宽,吸收其宽度) | 顶部 AP 条(44px:左——AP 点阵 + 停手按钮;中——RAP 点阵+数字〔自 C 区迁入,贴弃图刷新按钮,2026-09-26 拍板〕;右——图例按钮 + 弃图刷新按钮〔雷图右上角,2026-09-12 拍板〕);棋盘主体(居中,格 36–45px 见方);toast 槽(上缘内侧) | @@ -127,7 +127,7 @@ > 呈现术语注记(2026-09-25):插旗动作的玩家可见呈现名 = **封印**(registry terminology;旗 = 封印印记,art-bible §3.2)——机制与键名不变;封印特效未实装,现行占位 = 封印黑「旗」字形(board_view 程序化占位,贴图在位=字形退役;旗朱→封印紫 2026-09-26→封印黑 2026-09-28 用户拍板)。 -> 可挖域微光画法定稿(2026-09-25 用户拍板):**接触带·空间侧 + 蓝族**——光画英雄格周界接触面(正交邻墙=整边,斜向邻墙=角点+两半边),详见 art-bible §3.2;现行墙格整框绿相呼吸为待退役占位,实现切换归表现批(探针断言随批)。 +> 可挖域微光画法定稿(2026-09-25 用户拍板):**接触带·空间侧 + 蓝族**——光画英雄格周界接触面(正交邻墙=整边,斜向邻墙=角点+两半边),详见 art-bible §3.2;现行墙格整框绿相呼吸为待退役占位,实现切换归表现批(探针断言顺带)。 **布局决策 1(本 spec 最大决策,用户拍板)**:**常驻双舞台分屏**——战斗画面与扫雷图同屏常驻,挖掘期敌人待机可见,结算期不切场景。 - 备选(已否决):Peglin 式"结算时才切入独立战斗场景"——切换打断推理心流,且资产管线成本翻倍 @@ -167,7 +167,7 @@ - **上游修订(2026-09-12 已落稿,OQ11)**:① 行动经济 `request_refresh` Active 相位受理 + 每轮上限 2 次(Waiting 代理退役)② 排雷玩法装板受理域增 Active·仅刷新路径 ③ 编排 owner = **战斗结算 `refresh_board`**(行动经济扣费 → 排雷玩法 retire → 棋盘生成 generate → 排雷玩法 install → 地图战斗资源 roll_board 恰一次;无结算段、无 round_end——战斗结算编排唯一性原则保持)④ 旧板旗随旧板**作废**(零兑付、旗 AP 不返还——排雷玩法 EC11 全量重置承载;确认微交互须显式提示)。**经济预警**:当场刷新无结算发生,原「敌方时间税」自惩失效——行动经济 OQ3 弃图率/刷新率预警阈值联动复核。 - 备选(已否决):结算期决策提示(Waiting 内联)——结算期不做刷新决策(用户拍板);挖掘期预承诺 stop+reroll 复合——决策即终轮,不符「换图继续挖」语义。 -**敌人意图线索映射目录(敌人系统×4① 成文占位,2026-09-12;2026-09-16 敌人技能池批改型注记:行为环三态〔攻击/蓄力/重击〕预告随行为环退役——现行数据面 = 敌人系统三档可见性规格〔普攻零表示 / 特殊技类型级动画〔攻击系/增益系两型〕/ 暴击掷点层无前置〕,池与权重不公开;下表 grub/ambusher 三态清单留档作废,终稿资产目录随战斗表现样张批重立;**命名双轨收口注记 2026-10-06**:grub/ambusher 两键本身已随敌人系统八型批退役——现行键集 = 八敌 registry〔goblin/bugbear/ogre_chief/giant_spider/drider/duergar/hook_horror/duergar_king〕,本表键名仅为历史留痕、不得作为现行 enemy_id 引用)**: +**敌人意图线索映射目录(敌人系统×4① 成文占位,2026-09-12;2026-09-16 敌人技能池批改型注记:行为环三态〔攻击/蓄力/重击〕预告随行为环退役——现行数据面 = 敌人系统三档可见性规格〔普攻零表示 / 特殊技类型级动画〔攻击系/增益系两型〕/ 暴击掷点层无前置〕,池与权重不公开;下表 grub/ambusher 三态清单留档作废,终稿资产目录随战斗表现样张批重立;**命名双轨完成注记 2026-10-06**:grub/ambusher 两键本身已随敌人系统八型批退役——现行键集 = 八敌 registry〔goblin/bugbear/ogre_chief/giant_spider/drider/duergar/hook_horror/duergar_king〕,本表键名仅为历史留痕、禁止作为现行 enemy_id 引用)**: | enemy_id | 视觉状态(意图线索) | 强度档位编码 | 环长编码 | |---|---|---|---| @@ -182,7 +182,7 @@ > **2026-09-26 信息归属拍板**:C 区 HP/RAP/状态槽/立绘占位/钱包行退役——HP 与状态唯一展示面 = B 区站桩,RAP 迁 D 区 AP 条贴弃图刷新按钮,GP/钥石迁出战斗屏;C 区改攻击数据框+两预留区。下方线框图已随拍板重绘;旧线框留档于 git 历史。 > **2026-09-23 停点前移批**:A 区关卡进度条退役,下方线框图为 B/C/D 三区(28px 纵向空间划归 C/D 底行 520 → 548;关卡内节点进度常驻关卡画面,战斗屏零进度承载);旧四区线框留档于 git 历史。 -> **2026-09-20 全站桩形态改版**:敌人卡形态裁决收口(卡片式退役、主角与敌人均站桩——无框立绘+底座、状态小图标挂血条下),下方线框图 B 区已随裁决重绘;旧卡片式线框留档于 git 历史。 +> **2026-09-20 全站桩形态改版**:敌人卡形态裁决完成(卡片式退役、主角与敌人均站桩——无框立绘+底座、状态小图标挂血条下),下方线框图 B 区已随裁决重绘;旧卡片式线框留档于 git 历史。 ``` 1280 × 800 ──────────────────────────────────────────────────────────────────── @@ -221,8 +221,8 @@ | **清图瞬间** | 全部安全格开完 | 金粒喷泉 + 彩纸 3–5s 即收(§2.3);清图奖励行强调呈现(H2,地图战斗资源×④——金框高亮行);随后换新图 install | | **完美排雷高光** | 战斗结算高光判定(全图标中/零误标类) | 全屏喝彩级反馈(§2.2 最高档):金光带加倍扫射 + 「完美排雷 ×2」横幅——P2 爆发兑现节点(创意风险 #2 落点) | | **标中旗高光** | flag_judged{hit=true} | 该旗化暴击弹道加重 + 明细行金框——chord 缺席的即时兑现补偿(创意风险 #3 落点) | -| **敌人死亡呈现** | 敌 hp=0(流水行击杀标记) | 该敌人立绘血条归零 → 立绘灰化 + 碎裂退场(**禁瞬消**——敌人系统资产下限「死亡瞬间须可辨识、不得直接消失」,同等 blocking);战斗段短路的重击被掐灭不产行动明细行,由行序可推断(战斗结算);动画密度归战斗表现,呈现语义在本 spec | -| **胜利终局** | verdict=win | 金蜡封落于**扫雷图区中央**(§2.4 字面锚定),全屏暖白金 overlay;判定行 + 「下一节点」;明细回看入口;状态图标行全清可见反馈(增益状态×4④——B 区主角站桩图标逐枚化光收回 + 微文案「状态随战斗结束消散」,防「我的 buff 哪去了」误读) | +| **敌人死亡呈现** | 敌 hp=0(流水行击杀标记) | 该敌人立绘血条归零 → 立绘灰化 + 碎裂退场(**禁瞬消**——敌人系统资产下限「死亡瞬间须可辨识、禁止直接消失」,同等 blocking);战斗段短路的重击被掐灭不产行动明细行,由行序可推断(战斗结算);动画密度归战斗表现,呈现语义在本 spec | +| **胜利终局** | verdict=win | 金蜡封落于**扫雷图区中央**(§2.4 字面锚定),全屏暖白金 overlay;判定行 + 「下一节点」;明细回看入口;状态图标行全清可见反馈(增益状态×4④——B 区主角站桩图标逐枚化光收回 + 微文案「状态随战斗结束消散」,防「我的增益哪去了」误读) | | **失败终局** | verdict=lose(hero hp=0,战斗段短路) | 明度不变的暮蓝 #5A6C8C 氛围 overlay(全作唯一暮蓝档);小人坐砖掸灰、插过的旗逐面化光点收回(§2.5);判定行 +「返回」(明细回看已随 P-C7 退役——回看归「生涯」);状态图标行全清可见反馈(增益状态×4④,同胜利) | | **Boss 遭遇变体** | encounter=boss(遗迹守卫) | 战斗开始一次性演出:紫赤 #8F2F6A 影子爬过棋盘(§2.6);敌人立绘体量最大+锐角剪影;阶段指示附 Boss 名 | | **空态:无状态效果** | 增益状态 EC12 | 状态小图标行隐藏(B 区主角站桩血条下图标行零图标时不占位;落底排〔2026-10-06 方案二〕后该行退化为名字行——主角无名字行则整行空置);原「C 区状态槽隐藏、HP/攻击/RAP 上移补位」裁决随 C 区槽退役(2026-09-26 信息归属拍板)作废;图例面板载空态说明(增益状态×① 成文项) | @@ -273,7 +273,7 @@ | 弃图刷新(挖掘期,非轮出口) | `ux_refresh_attempt` | {result: accepted/rejected_rap/rejected_cap, round_refresh_index: 1..2}——刷新使用(难度曲线与Boss OQ6)与行动经济 OQ3 预警阈值观测;每轮 0–2 次(布局决策 4 cap=2) | | 拒绝/voided | `ux_reject` | {source: board/resource/phase, sub_reason} | | 提示触发/关闭 | `ux_hint_shown` | {hint_id: chord/no_adjacent} | -| 呈现订阅(不改核心) | 排雷玩法三事件 / [战斗结算](../systems/战斗循环/战斗结算.md#明细流水每一行都能指回你刚才的哪一步棋)步骤流(9 类行协议,含终局判定行) / battle_over / level_clear | 载荷 schema 成文义务见 §Data Requirements——旧版台账 entry 17①(HUD框架硬性要求) | +| 呈现订阅(不改核心) | 排雷玩法三事件 / [战斗结算](../systems/战斗循环/战斗结算.md#明细流水每一行都能指回你刚才的哪一步棋)步骤流(9 类行协议,含终局判定行) / battle_over / level_clear | 载荷 schema 成文义务见 §Data Requirements——旧版状态记录 entry 17①(HUD框架硬性要求) | **持久状态写入**全部经组合根唯一路径(settle_batch / request_refresh / runner 推进)——UI 层禁直调核心写(架构七原则"依赖单向组合根")。 @@ -301,24 +301,24 @@ | Data | Source System | Read / Write | Notes | |---|---|---|---| -| 棋盘格态/数字/可挖域 | 排雷玩法 只读面(query) | Read | 呈现刷新面 = 排雷玩法 三事件信号(载荷 schema 成文——旧版台账 entry 17①) | +| 棋盘格态/数字/可挖域 | 排雷玩法 只读面(query) | Read | 呈现刷新面 = 排雷玩法 三事件信号(载荷 schema 成文——旧版状态记录 entry 17①) | | BFS 移动路径 | 排雷玩法 `compute_move_path` | Read | 布局决策 3 合法性指示消费 | | 拒绝原因 | 排雷玩法 `sub_reason` 封闭枚举 + 行动经济 资源面 | Read | 三源(board/resource/phase)映射文案——呈现层契约成文;资源面原因无上游载荷(行动经济 仅 bool + debug 诊断),客户端按动作上下文推断 | | AP / RAP / 本轮刷新计数 | 行动经济 | Read | 常显;刷新入口可用性 = RAP 读数客户端预判(RAP≥8)+ `request_refresh` 返回值(行动经济 无 `can_request_refresh` API——仅 bool 返回 + 只读观测量;行动经济 EC13 拒绝合法可见) | | 结算流水行(9 类封闭协议) | [战斗结算](../systems/战斗循环/战斗结算.md#明细流水每一行都能指回你刚才的哪一步棋) 流水协议 | Read | 逐行来源标注(P2);未生效类行(奖励未生效)聚合计数呈现 | | 判定 verdict | 战斗结算 判定段 | Read | 终局画面数据锚 | -| 敌单位 hp/顺位/摇定动作(pending_skill/type/name)/敌方增益/enemy_id/存活 | 敌人系统 只读面(经战斗结算呈现快照) | Read | 意图线索映射全局恒定(敌人系统×4②,技能池批三档口径);**despawn 前捕获**(旧版台账 entry 17③——缺陷②教训) | +| 敌单位 hp/顺位/摇定动作(pending_skill/type/name)/敌方增益/enemy_id/存活 | 敌人系统 只读面(经战斗结算呈现快照) | Read | 意图线索映射全局恒定(敌人系统×4②,技能池批三档口径);**despawn 前捕获**(旧版状态记录 entry 17③——缺陷②教训) | | 状态效果投影(含空态/极性/溢出) | 增益状态 投影口径 | Read | 极性映射数据源 = 战斗结算 SettlementTable 效果语义,非 magnitude 符号(增益状态×③) | | 已开格奖励身份(奖励徽章) | 地图战斗资源 `query_identity`(经 board_view 身份解析只读回调,组合根注入) | Read | 已开格身份常读——挖掘期 Active 相位内有效;reward_id 全局恒定、禁止重掷;徽章绘制优先级见 §Component Inventory BoardView 行 | | 节点图/当前节点/HP 携带 | 关卡节点地图 lite · LevelRunner | Read | 关卡画面(独立屏)节点态呈现(战斗屏零进度承载) | | 意图提交 | 排雷玩法 | **Write** | `settle_batch`(stop 亦经此——不直调行动经济) | | 弃图刷新 | 行动经济 | **Write** | `request_refresh`(挖掘期 Active 当场受理——布局决策 4 2026-09-12 上游已落稿;战斗结算 `refresh_board` 编排承载) | | 节点推进 | LevelRunner | **Write** | 胜利 overlay「下一节点」 | -| 终局画面数据锚 | 战斗结算 判定行(流水行协议) | Read | 「终局判定行 = 胜负画面的数据锚」(战斗结算 UI Requirements);despawn 前状态可见性纪律 = 旧版台账 entry 17③(销毁前捕获、**载荷数据自包含**、禁呈现层回读核心生命周期状态);若需独立终局快照信号,须回战斗结算 GDD 修订补登记(战斗结算 现无 `settlement_snapshot` 契约——2026-09-12 评审修正) | +| 终局画面数据锚 | 战斗结算 判定行(流水行协议) | Read | 「终局判定行 = 胜负画面的数据锚」(战斗结算 UI Requirements);despawn 前状态可见性纪律 = 旧版状态记录 entry 17③(销毁前捕获、**载荷数据自包含**、禁呈现层回读核心生命周期状态);若需独立终局快照信号,须回战斗结算 GDD 修订补登记(战斗结算 现无 `settlement_snapshot` 契约——2026-09-12 评审修正) | -**架构注记**:UI 不拥有任何游戏状态——全部读经核心只读面,全部写经组合根。呈现层信号载荷 schema 须在《HUD框架》成文(旧版台账 entry 17①,缺项即 blocking);场景级 headless 测试进 AC(entry 17②);覆盖层层级断言(缺陷⑤——任何模态覆盖层必须有"打开时遮挡物隐藏"断言)。 +**架构注记**:UI 不拥有任何游戏状态——全部读经核心只读面,全部写经组合根。呈现层信号载荷 schema 须在《HUD框架》成文(旧版状态记录 entry 17①,缺项即 blocking);场景级 headless 测试进 AC(entry 17②);覆盖层层级断言(缺陷⑤——任何模态覆盖层必须有"打开时遮挡物隐藏"断言)。 -**更新触发注记(2026-09-12 评审增补——防实现层等待不存在的信号,旧版台账 entry 17 教训同类)**:旗插/拔与移动成功反馈**零事件外发**(排雷玩法发射面封闭)——经意图调用 `ActionOutcome` 返回值命令式驱动;AP/RAP 读数:行动经济无推送信号——组合根每次调用返回后重查;状态效果:增益状态纯被动容器零信号——状态栏刷新绑战斗结算的编排完成时点;奖励徽章:地图战斗资源 身份解析经 `query_identity` 只读回调(组合根注入 board_view),已开格揭显时查询——写路径回执后重查。 +**更新触发注记(2026-09-12 评审增补——防实现层等待不存在的信号,旧版状态记录 entry 17 教训同类)**:旗插/拔与移动成功反馈**零事件外发**(排雷玩法发射面封闭)——经意图调用 `ActionOutcome` 返回值命令式驱动;AP/RAP 读数:行动经济无推送信号——组合根每次调用返回后重查;状态效果:增益状态纯被动容器零信号——状态栏刷新绑战斗结算的编排完成时点;奖励徽章:地图战斗资源 身份解析经 `query_identity` 只读回调(组合根注入 board_view),已开格揭显时查询——写路径回执后重查。 --- @@ -373,11 +373,11 @@ - [ ] 状态效果:极性呈现映射成文且非 magnitude 符号;空态渲染成文(裁决:图标行隐藏——B 区站桩血条下零图标时不占位);满层溢出经明细行可见(增益状态×①③④) - [ ] 图例面板条目恒在可随时回看、非模态提示不劫持输入 - [ ] 零合法板(棋盘生成 EC5 降级)出现时玩家侧诚实提示(toast,非静默) -- [ ] 效果行 value 为单次贡献值,不得与 pool_value(池合成值)相加呈现;零值伤害行可见不被吞;衰减行按聚合计数呈现(战斗结算 呈现细则) +- [ ] 效果行 value 为单次贡献值,禁止与 pool_value(池合成值)相加呈现;零值伤害行可见不被吞;衰减行按聚合计数呈现(战斗结算 呈现细则) - [ ] 未生效类行(奖励未生效)携带形状冗余(icon/划线),非色相独载 - [ ] 奖励徽章绘制优先级:旗之下、变异纹带之上、不进数字区;拾取瞬间 tier 档位可读(地图战斗资源 H1) -**场景级测试**(旧版台账 entry 17②③,缺项即 blocking) +**场景级测试**(旧版状态记录 entry 17②③,缺项即 blocking) - [ ] 场景级 headless 测试:真实实例化战斗屏场景 + 驱动完整对局 + 断言零脚本错误(ui_click_probe 模式扩展) - [ ] 任何模态覆盖层(图例/胜利/失败——明细回看已退役)有「打开时遮挡物隐藏/输入锁定」场景级断言(缺陷⑤对照) @@ -389,26 +389,26 @@ ## Open Questions -1. **Player journey map——已收口(2026-09-27 欠账处置拍板:不建)**:实现前补建的前提随战斗屏实装失效;情绪曲线事实源 = art-bible §2 能量档,真人体验观测与结论回流 = [07-体验验证清单](../07-体验验证清单.md) -2. **无障碍专项文档——已收口(2026-09-27 拍板:不另立 design/accessibility-requirements.md)**:基线(对比/色弱/字号/闪烁/减动效/纯鼠标/中文字体)权威 = [HUD框架](../systems/表现与支撑/HUD框架.md)「可访问性基线」节;正式分层(文本缩放/色盲模式/按键重映射)归 [设置与本地化](../systems/表现与支撑/设置与本地化.md) 待设计问题清单 #1(设置项全集裁决时定);本 spec §Accessibility 为呈现侧落地承诺 +1. **Player journey map——已完成(2026-09-27 欠账处置拍板:不建)**:实现前补建的前提随战斗屏实装失效;情绪曲线事实源 = art-bible §2 能量档,真人体验观测与结论回流 = [07-体验验证清单](../07-体验验证清单.md) +2. **无障碍专项文档——已完成(2026-09-27 拍板:不另立 design/accessibility-requirements.md)**:基线(对比/色弱/字号/闪烁/减动效/纯鼠标/中文字体)权威 = [HUD框架](../systems/表现与支撑/HUD框架.md)「可访问性基线」节;正式分层(文本缩放/色盲模式/按键重映射)归 [设置与本地化](../systems/表现与支撑/设置与本地化.md) 待设计问题清单 #1(设置项全集裁决时定);本 spec §Accessibility 为呈现侧落地承诺 3. **interaction-patterns.md——已建成**(2026-09-12 /team-ui 批当日落稿,本条「未建」系过期陈述):本 spec 引入的四 pattern(双源拒绝反馈/逐行兑现明细带/悬停预承诺光标/点阵资源显示)均已入库成文(pattern 1/3/4/5) 4. **战斗表现美术测试**(game-concept 已登记,战斗表现批次前强制):本 spec 的常驻双舞台分屏(布局决策 1)是测试的布局输入——**敌人卡形态已裁决(2026-09-20 用户看对照样张拍板):全站桩式(无框立绘+底座),主角同样站桩、状态小图标挂血条下,卡片式整体退役**;本 spec 已随裁决改写(原"按卡片式起草"条款作废),站桩式不改变分区结构。对照样张存档 `production/mockups/enemy-card-vs-standee-mockup.html` 5. **移动动画形态**(布局决策 3):≤150ms 短滑为推荐值,playtest 观测「移动太瞬/太拖」反馈后调 6. **明细带挖掘期是否常驻上轮摘要**:常驻(现方案)vs 结算后即收起——playtest 观测回看频率 7. **Gamepad 导航序**:Partial 支持(非 MVP 门禁)——焦点环顺序待 gamepad 批次定 -8. **NodeOverlay / 关卡结算屏——已收口(2026-09-27 欠账处置拍板;节点奖励屏部分被 2026-09-29 迭代 7 取代)**:关卡结算屏 spec 已建 [level-clear.md](level-clear.md)(本 spec 只锁出口锚点不变);节点奖励屏 spec 已出生 [node-reward.md](node-reward.md) v1.0(原「不立独立 spec、随秘宝内容重定批交付」拍板随之取代;NodeOverlay 现行:恢复点全量服务、奖励点=三选一构筑点) -9. **TunePanel 退役计划——已收口(迭代 15 卡①,2026-10-05)**:TunePanel 类整体吸收退役入调试浮窗 DebugOverlay(DS_DEBUG=1 门控);正式侧归元进度(天赋树)不变 +8. **NodeOverlay / 关卡结算屏——已完成(2026-09-27 欠账处置拍板;节点奖励屏部分被 2026-09-29 迭代 7 取代)**:关卡结算屏 spec 已建 [level-clear.md](level-clear.md)(本 spec 只锁出口锚点不变);节点奖励屏 spec 已出生 [node-reward.md](node-reward.md) v1.0(原「不立独立 spec、随秘宝内容重定批交付」拍板随之取代;NodeOverlay 现行:恢复点全量服务、奖励点=三选一构筑点) +9. **TunePanel 退役计划——已完成(迭代 15 卡①,2026-10-05)**:TunePanel 类整体吸收退役入调试浮窗 DebugOverlay(DS_DEBUG=1 门控);正式侧归元进度(天赋树)不变 10. **提示文案定稿**:chord 提示/空态文案归实现期文案 pass,本 spec 只锁必含要点与形态约束 11. **弃图刷新上游修订(已落稿 2026-09-12,布局决策 4)**:行动经济(Active 相位受理 + 每轮上限 2 次 + Waiting 代理退役 + 旧旗作废裁决 + 时间税失效预警)、排雷玩法(Active·仅刷新路径装板受理)、战斗结算(stopped/ap_exhausted 恒 same_board + `refresh_board` 挖掘期刷新编排;AC-29 改写/AC-30 恒 same_board)、registry `rap_rules` 同步、旧版 systems-index 修订块登记。遗留观察项:当场刷新的节奏健康由行动经济 OQ3 弃图率/刷新率预警承载,playtest 复核 12. **教学引导缺口挂靠(成文时教学引导 GDD 尚未建,留痕)**:挖到雷 = 敌方优势而非死亡(排雷玩法登记「经典扫雷玩家最大预期违背」)、旗挡链(连锁止于旗属正常)、首次蓄力姿态一次性提示(敌人系统)——本屏 toast 体系为落点候选,随教学引导批次定 -13. **敌方 AC 展示——已终裁收口(2026-09-26)**:用户终裁——敌方 AC 数值**全屏不展示**(任何区均不直接写上);护甲类型改**图标方式**展示(形状+色相双通道,终稿图标资产归美术批);敌人站桩底座下名字行退回**纯名字 + 护甲类型图标**。与旧「克制对策可读性义务」(敌人技能池批)的关系 = **义务降级承载**:类型保留(图标可读,对策判断仍可做)、数值退役(不再直接展示);敌人技能池批相关义务措辞由并行代码批同步。我方 AC 仍按 2026-09-26 二轮拍板保留于 C 区攻击数据框(唯一展示面) -14. **GP/钥石迁出战斗屏后的展示面归属——已拍板收口(2026-09-26 二轮)**:GP = 关卡画面常驻总量 + 战斗总结结算(总量+增量);钥石 = 冒险总结结算 + 营地。呈现 spec 已出生:[settlement-summary.md](settlement-summary.md) v1.0(2026-09-30——两面分节轻量 spec,本 OQ 为其命名与分工依据;「战斗结算画面」「结算画面」旧措辞随 spec 命名收口退役) +13. **敌方 AC 展示——已终裁完成(2026-09-26)**:用户终裁——敌方 AC 数值**全屏不展示**(任何区均不直接写上);护甲类型改**图标方式**展示(形状+色相双通道,终稿图标资产归美术批);敌人站桩底座下名字行退回**纯名字 + 护甲类型图标**。与旧「克制对策可读性义务」(敌人技能池批)的关系 = **义务降级承载**:类型保留(图标可读,对策判断仍可做)、数值退役(不再直接展示);敌人技能池批相关义务措辞由并行代码批同步。我方 AC 仍按 2026-09-26 二轮拍板保留于 C 区攻击数据框(唯一展示面) +14. **GP/钥石迁出战斗屏后的展示面归属——已拍板完成(2026-09-26 二轮)**:GP = 关卡画面常驻总量 + 战斗总结结算(总量+增量);钥石 = 冒险总结结算 + 营地。呈现 spec 已出生:[settlement-summary.md](settlement-summary.md) v1.0(2026-09-30——两面分节轻量 spec,本 OQ 为其命名与分工依据;「战斗结算画面」「结算画面」旧措辞随 spec 命名完成退役) --- ## §13 上游义务对照表(门禁核对用) -> 「系统名×条目号」记法(如「排雷玩法×6⑥」)= 旧版 systems-index 门禁台账中该系统的义务条目编号,条目内容均已在本表逐条承载。 +> 「系统名×条目号」记法(如「排雷玩法×6⑥」)= 旧版 systems-index 门禁状态记录中该系统的义务条目编号,条目内容均已在本表逐条承载。 | 义务源 | 条目 | 本 spec 承载落点 | |---|---|---| @@ -419,10 +419,10 @@ | 排雷玩法×6 | ⑤ 路径预览裁决 | 布局决策 3 | | 排雷玩法×6 | ⑥ 单意图帧+voided+拒绝可感知 | §Interaction Map + §States 拒绝子态 + AC | | 行动经济 | AP/RAP 常显+刷新入口+清零反馈+双源 | §Layout D 区 AP 条(RAP 自 C 区迁入——2026-09-26 信息归属拍板)+ §Transitions + AC | -| 战斗结算×3 | ①高光行强调呈现(标中旗金框行/清图 H2 金框行)②完美排雷呈现形态 ③棋盘生成 EC5 零合法板提示/补偿/回退形态(toast 提示;补偿/回退不提供——三形态选型留痕 2026-09-12) | §States 高光/清图 + §States 拒绝子态 + §AC;注:结算明细屏 = 战斗结算 UX Flag 事项(本 spec 即其 /ux-design 产物),非 战斗结算×3 台账 | +| 战斗结算×3 | ①高光行强调呈现(标中旗金框行/清图 H2 金框行)②完美排雷呈现形态 ③棋盘生成 EC5 零合法板提示/补偿/回退形态(toast 提示;补偿/回退不提供——三形态选型留痕 2026-09-12) | §States 高光/清图 + §States 拒绝子态 + §AC;注:结算明细屏 = 战斗结算 UX Flag 事项(本 spec 即其 /ux-design 产物),非 战斗结算×3 状态记录 | | 敌人系统×4 | 意图映射/恒定/顺位/敌方池 | §Component Inventory 敌人站桩立绘 + **意图线索映射目录(敌人系统×4① 成文占位,资产定稿归战斗表现)** + AC | | 增益状态×4 | 常显+空态/来源标注/溢出/去留 | §States 空态 + §AC | -| 地图战斗资源×5 | 身份恒读/明细行/清图强调(旧版台账五条中「窗口」「清空反馈」随格面资源批下线——清空反馈义务后载秘宝背包、复随秘宝过渡形态退役消解(现行 = 营地同调装配,秘宝.md)) | §Component Inventory BoardView 奖励徽章 + §States 清图/高光 + §Data Requirements query_identity + AC | +| 地图战斗资源×5 | 身份恒读/明细行/清图强调(旧版状态记录五条中「窗口」「清空反馈」随格面资源批下线——清空反馈义务后载秘宝背包、复随秘宝过渡形态退役消解(现行 = 营地同调装配,秘宝.md)) | §Component Inventory BoardView 奖励徽章 + §States 清图/高光 + §Data Requirements query_identity + AC | | 棋盘生成 | EC5 零合法板诚实呈现(数据面经 战斗结算×3③ 上抛) | §States 拒绝子态(toast)+ AC | | 敌人系统资产下限 | 受击反馈/死亡表现/顺位标记 | §Transitions 受击 + §States 敌人死亡呈现(禁瞬消)+ §Component 顺位徽标;呈现语义在本 spec(同等 blocking),动画密度归战斗表现 | @@ -447,3 +447,4 @@ | 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 6694cb05..11e52f44 100644 --- a/design/gdd/ux/camp.md +++ b/design/gdd/ux/camp.md @@ -1,6 +1,6 @@ # 营地覆盖层 UX spec(camp) -> 状态:v1.1(2026-09-30 审计拍板点 4A 用户裁决落文——乙案新建 ux spec+元进度配套更改;视觉终稿已随迭代 9 9A 段落码,本 spec 成文其呈现规则) +> 状态:v1.5(2026-10-15 简明技术中文用语规范批:文头状态行对齐版本历史——原标 v1.1 滞后,实态=v1.4 状态面板改名批补漏;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)(主菜单语境) @@ -43,3 +43,4 @@ | 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 状态面板改名批补漏〕,本行对齐。机制零改动 | diff --git a/design/gdd/ux/interaction-patterns.md b/design/gdd/ux/interaction-patterns.md index d79263cd..a3e61f41 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-09(文档正确性审查批:pattern 8 消费面在役态订正,见文末修订记录) +> **Last Updated**: 2026-10-15(简明技术中文用语规范批:词面修正 6 处,见文末修订记录) > **Template**: Interaction Pattern Library > **来源**: `design/gdd/ux/battle.md`(2026-09-12 /ux-review APPROVED)已拍板内容的成文固化——本库不引入新设计决策 @@ -56,7 +56,7 @@ MVP 未使用标准控件(不入库):toggle / dropdown / input field / tab **Description**: 玩家意图被核心拒绝时,反馈必须同时做到:(a) 每次拒绝玩家可感知(防静默拒绝读感欺骗);(b) 来源可区分——棋盘面(排雷玩法判,携 sub_reason 封闭枚举)/资源面(行动经济判,客户端推断)/相位(排雷玩法 ActionOutcome)三源各异;(c) 图标+文案双通道,非色相独载。 **Specification**: -- 触发:`ActionOutcome{accepted=false, reject_reason, sub_reason}` **返回值驱动**(拒绝无事件外发——排雷玩法发射面封闭,实现层不得等待拒绝信号) +- 触发:`ActionOutcome{accepted=false, reject_reason, sub_reason}` **返回值驱动**(拒绝无事件外发——排雷玩法发射面封闭,实现层禁止等待拒绝信号) - 反馈映射:board_face → 目标格危险红 `#A8321F` 边框闪(拒绝语义红族——旗朱→封印紫→封印黑 #000000,2026-09-28 用户拍板现行) + toast 具体原因(sub_reason→文案映射表:not_adjacent/target_revealed/target_concealed/flag_present/flag_absent/no_path/out_of_catalog);resource_face → 对应资源数字脉冲(AP/RAP)+「AP 不足 · 剩 0 点」式文案;phase → toast(结算中/非挖掘期) - 即时性:拒绝当帧呈现;toast 自动消退 2.5s - **voided 区分**:作废 ≠ 拒绝(零效果零扣费零事件)——须独立文案如「本轮已清图,停手未执行 · 剩余 AP 已作废」,至少 stop 作废可感知 @@ -129,7 +129,7 @@ MVP 未使用标准控件(不入库):toggle / dropdown / input field / tab **Specification**: - 形态:`●●●●●○○○` + 「5/8」;直角细线数据框(信息=直线直角,art-bible §3.3) -- 更新触发:组合根每次调用返回后重查(**行动经济无推送信号**——实现层不得等待资源变更事件) +- 更新触发:组合根每次调用返回后重查(**行动经济无推送信号**——实现层禁止等待资源变更事件) - 拒绝反馈:资源不足时数字脉冲(pattern 1 的 resource_face 腿) - Accessibility:点阵=形状通道、数字=文本通道;对比 ≥4.5:1 @@ -150,7 +150,7 @@ MVP 未使用标准控件(不入库):toggle / dropdown / input field / tab **Specification**: - 打开:遮挡物隐藏或禁用 + 输入锁定;单一模态栈(无叠模态) - 关闭:恢复被遮挡物;关闭按钮/再点入口切换 -- 内容:固定槽高 + clip_contents(缺陷①——悬停文案换行不得推挤布局) +- 内容:固定槽高 + clip_contents(缺陷①——悬停文案换行禁止推挤布局) - 验收:**场景级断言「打开时遮挡物隐藏/输入锁定」为每个模态 overlay 的强制 AC**(battle.md 场景级测试节) **When to Use**: 全屏打断级信息、只读回看、仪式性终局 @@ -165,7 +165,7 @@ MVP 未使用标准控件(不入库):toggle / dropdown / input field / tab **Category**: Feedback **Used In**: 弃图刷新(RAP−8 消耗 + 旧板弃置) -**Description**: 消耗性/不可逆操作的确认交互与常规确认**不同位**——位置通道是色盲安全冗余(art-bible §4.5 清单 #7:UI 红/金强调对需图标+文案冗余,且破坏性确认不得与常规确认同位)。 +**Description**: 消耗性/不可逆操作的确认交互与常规确认**不同位**——位置通道是色盲安全冗余(art-bible §4.5 清单 #7:UI 红/金强调对需图标+文案冗余,且破坏性确认禁止与常规确认同位)。 **Specification**: - 弃图刷新:确认微交互显式呈现全部代价(RAP−8 · **旧板旗随旧板作废**提示);确认交互位置与常规确认不同位 @@ -203,13 +203,13 @@ MVP 未使用标准控件(不入库):toggle / dropdown / input field / tab - **目录 #9–#20 已全部实现**(2026-09-12 战斗屏实现批,冒烟 149/149 + 三探针全绿);规格全文回写 = HUD框架正式化批义务 - 实现期新增技术件(不单独立 pattern,规格归并):去饱和+金橙状态切换 = 逐格共享 ShaderMaterial(明度不变,gl_compatibility 安全);敌人死亡残位 = 卡体灰化+碎裂禁瞬消(归入 #17 终局编排规格) - **MVP 未使用标准控件**:toggle / dropdown / input field / tab bar(无需求不设占位);TunePanel slider 为调试专用不入库 -- **实现偏差规则**:pattern 近似但不完全适配时,实现层不得静默变体——登记偏差交 ux-designer 复核后回写 +- **实现偏差规则**:pattern 近似但不完全适配时,实现层禁止静默变体——登记偏差交 ux-designer 复核后回写 --- ## Open Questions -1. 目录占位项的补全时点 = 实现期随批回写(owner:ui-programmer → ux-designer 复核) +1. 目录占位项的补全时点 = 实现期顺带回写(owner:ui-programmer → ux-designer 复核) 2. Gamepad 批次引入时,需为 pattern 4/12/15 增补手柄映射节(焦点序已在 battle.md OQ8 留位) --- @@ -222,3 +222,4 @@ MVP 未使用标准控件(不入库):toggle / dropdown / input field / tab | 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 9a97736a..1903b4a0 100644 --- a/design/gdd/ux/level-clear.md +++ b/design/gdd/ux/level-clear.md @@ -1,8 +1,8 @@ # UX Spec: 关卡结算屏(Level Clear)——提升三选一选择面 -> **Status**: v2 义务锁定版(2026-10-01 迭代 10 奖励重构批重写——三件套快照展示退役,改三选一选择交互;呈现形态随实装批定,视觉终稿以表现层样张为前置,见 P1/OQ4;**本批渲染层验证冻结——目检清单随批交付、实机目检待用户批准**) +> **Status**: v2 义务锁定版(2026-10-01 迭代 10 奖励重构批重写——三件套快照展示退役,改三选一选择交互;呈现形态随实装批定,视觉终稿以表现层样张为前置,见 P1/OQ4;**本批渲染层验证冻结——目检清单顺带交付、实机目检待用户批准**) > **Author**: user + ZCode(UX 文档欠账处置批;迭代 10 重写) -> **Last Updated**: 2026-10-01 +> **Last Updated**: 2026-10-15(简明技术中文用语规范批:词面修正 4 处;原标 2026-10-01 滞后于 2026-10-09 两条修订记录,本批一并对齐) > **Platform Target**: PC (Steam)——Keyboard/Mouse 主,全部操作纯鼠标可完成(同 battle.md) > **Template**: UX Spec > **来源**: battle.md OQ8 欠账处置(2026-09-27 用户拍板建档)+ 迭代 10 奖励重构批(2026-09-30 用户拍板案丙——三选一/部分回血/钥石挪转,计划书 m3-iter10-loop-plan-2026-09-30.md) @@ -113,10 +113,10 @@ ## Open Questions -1. **GP 增量展示面归属——已收口(2026-09-27 用户拍板)**:战斗胜利出现战斗总结结算、展示获得的资源(GP 增量+总量;迭代 10 起追加 Boss/精英钥石增量行);战斗失败出现冒险总结结算、确认后回存档首页。本屏不承载 GP 与钥石,无遗留。两面呈现 spec:[settlement-summary.md](settlement-summary.md) v1.1 +1. **GP 增量展示面归属——已完成(2026-09-27 用户拍板)**:战斗胜利出现战斗总结结算、展示获得的资源(GP 增量+总量;迭代 10 起追加 Boss/精英钥石增量行);战斗失败出现冒险总结结算、确认后回存档首页。本屏不承载 GP 与钥石,无遗留。两面呈现 spec:[settlement-summary.md](settlement-summary.md) v1.1 2. **末关分支形态**:末关通关时直通冒险结算(现行维持)——随完整屏形态实装批一并定 -3. **钥石呈现三面化——已收口(迭代 10 契约 6 推荐案)**:战斗总结结算(Boss/精英击杀增量行)+ 冒险总结结算(收束明细)+ 营地存量——「进账时刻 / 收束明细 / 存量可用」不同义不构成重复展示;本屏旧「钥石增量+累计」呈现随大奖励重构退役 -4. **视觉终稿**:以表现层样张过审为前置(06 待办登记);本 spec 的 AC 为功能性判据,不含视觉终稿判据。**本批渲染层验证冻结(用户 2026-10-01)**——实装后目检清单随批交付,实机目检待用户批准后补闸 +3. **钥石呈现三面化——已完成(迭代 10 契约 6 推荐案)**:战斗总结结算(Boss/精英击杀增量行)+ 冒险总结结算(收束明细)+ 营地存量——「进账时刻 / 收束明细 / 存量可用」不同义不构成重复展示;本屏旧「钥石增量+累计」呈现随大奖励重构退役 +4. **视觉终稿**:以表现层样张过审为前置(06 待办登记);本 spec 的 AC 为功能性判据,不含视觉终稿判据。**本批渲染层验证冻结(用户 2026-10-01)**——实装后目检清单顺带交付,实机目检待用户批准后补闸 5. **替换子交互视觉形态——已随渠道退役**:秘宝件出池后本屏无道具件候选,替换子交互不于本屏触发(原功能性判据留档) --- @@ -131,3 +131,4 @@ | 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 8197342f..0e0a355d 100644 --- a/design/gdd/ux/level-map.md +++ b/design/gdd/ux/level-map.md @@ -1,8 +1,8 @@ # UX Spec: 关卡画面(选路枢纽,Level Map) -> **Status**: 定稿版——三项设计提案已拍板收口(2026-09-27:底栏状态展示 / 图上点击选路·候选按钮退役 / 放弃二次确认);**形态已升格独立屏(2026-09-28 用户裁决:独立存在为最终形态)**;**视觉终稿已冻结(2026-09-28 关卡画面样张 v1 机检 11/11 全绿,闸形 A——冻结值见 Layout/组件清单与样张机检报告,迭代 4)** +> **Status**: 定稿版——三项设计提案已拍板完成(2026-09-27:底栏状态展示 / 图上点击选路·候选按钮退役 / 放弃二次确认);**形态已升格独立屏(2026-09-28 用户裁决:独立存在为最终形态)**;**视觉终稿已冻结(2026-09-28 关卡画面样张 v1 机检 11/11 全绿,闸形 A——冻结值见 Layout/组件清单与样张机检报告,迭代 4)** > **Author**: user + ZCode(关卡画面 UX 批) -> **Last Updated**: 2026-10-09 +> **Last Updated**: 2026-10-15(简明技术中文用语规范批:词面修正 6 处) > **Platform Target**: PC (Steam)——Keyboard/Mouse 主,全部操作纯鼠标可完成(同 [battle.md](battle.md)) > **Template**: UX Spec > **覆盖范围**: 独立屏形态(关卡停点全景)· 入口停点 · 岔路停点 · 单链停点 · 放弃冒险入口 @@ -64,7 +64,7 @@ | 区 | 位置与尺寸 | 内容 | |---|---|---| -| **顶栏语境** | 居中横排,图区上方,高约 32px | 左:关卡名(`level_row.display_name`,如「第二层 · 幽暗地域」);右:GP 常驻徽章(金币图标+数字,直角细线数据框——GP 值域超点阵适用档,走 pattern 5 的 When-NOT-to-Use 路线);HP 归底部状态栏(2026-09-27 拍板收口) | +| **顶栏语境** | 居中横排,图区上方,高约 32px | 左:关卡名(`level_row.display_name`,如「第二层 · 幽暗地域」);右:GP 常驻徽章(金币图标+数字,直角细线数据框——GP 值域超点阵适用档,走 pattern 5 的 When-NOT-to-Use 路线);HP 归底部状态栏(2026-09-27 拍板完成) | | **节点图区** | 居中 | 整幅节点图自绘:节点方块 + 通道折线 + 节点态着色 + Boss 紫赤描边。画布随图自适应(**冻结公式**:宽 = 70+层深×122+34、高 = 52+槽位×58+26+8,下限 620×240——routebug 83c11a1 根修件);通道折线**冻结 2/3/4px**(未点亮石灰 STONE/候选亮金 GOLD_LIT/悬停加粗);节点方块 52×36 内**节点图标 20px 烘焙 1:1**(♻ kenney 五键:战=弓/赏=桂冠/疗=篝火/王=王冠/商=钱袋,WARM 单色、当前金底转深墨——双色墨制)+ 编号 10px 右上角 | | **底部状态栏** | 图区下方横排,高约 48px | 左-中:状态数据框组(直角细线,pattern 5 族)——生命(当前/上限 + 迷你血条)、属性(攻击 / 护甲 AC,有效值 + 加成角标)、本关加成(攻+X · 上限+Y · AC+Z,零加成隐藏);右端:放弃冒险按钮(危险红族文字,与状态数据框保持间距——破坏性确认异位,pattern 7) | @@ -79,7 +79,7 @@ | 放弃冒险按钮 | 按钮(危险红族) | 「放弃冒险(同失败结算——已获大奖励保留)」;二次确认态已拍板(见布局决策 3) | 点击(首击转确认态、二击提交) | ✅ level_map_screen.gd(可见性归组合根,仅冒险模式开) | | 标题行 | 文本 | 停点语境提示(见布局决策 1 三停点标题) | 只读 | ✅ level_map_screen.gd `_title`(措辞已按布局决策 1 改稿) | -**布局决策 1 —— 停点标题措辞修正(清偿台账 143 遗留)**:现行入口停点标题沿用「继续前进(战斗房)」,与「尚未走出第一步」的语境矛盾。三停点标题定稿: +**布局决策 1 —— 停点标题措辞修正(清偿状态记录 143 遗留)**:现行入口停点标题沿用「继续前进(战斗房)」,与「尚未走出第一步」的语境矛盾。三停点标题定稿: | 停点 | 候选数 | 标题 | |---|---|---| @@ -200,7 +200,7 @@ **交互与流程** -- [ ] 三停点标题按布局决策 1 呈现(入口停点不再出现「继续前进(战斗房)」措辞——台账 143 遗留清偿) +- [ ] 三停点标题按布局决策 1 呈现(入口停点不再出现「继续前进(战斗房)」措辞——状态记录 143 遗留清偿) - [ ] 候选提交经组合根唯一写路径(`route_chosen` → `pick_next_node`),到达即兑付;零自动推进(无任何不选而行的路径) - [ ] 图上点击为唯一选路提交通道(候选按钮退役,2026-09-27 拍板);悬停预承诺反馈可见;ui_click_probe 选路段随实装批改造后全绿 - [ ] 底部状态栏三组读数可见且与 runner 现值一致(生命当前/上限、攻击/AC 有效值、本关加成增量——零加成隐藏);兑付确认返回后读数刷新 @@ -217,9 +217,9 @@ ## Open Questions -**已收口(2026-09-27 用户拍板,正文随拍板改写)**:① 底栏 = 状态展示(生命 + 属性 + 本关已选加成——原提案仅顶栏 HP 读数,用户扩为底栏状态栏);② 图上直接点击选路,候选按钮退役;③ 放弃冒险二次确认。 +**已完成(2026-09-27 用户拍板,正文随拍板改写)**:① 底栏 = 状态展示(生命 + 属性 + 本关已选加成——原提案仅顶栏 HP 读数,用户扩为底栏状态栏);② 图上直接点击选路,候选按钮退役;③ 放弃冒险二次确认。 -**已收口(2026-09-28 样张 v1 机检全绿,闸形 A——正文随冻结改写)**:④ **视觉终稿**——节点图标形制/通道质感/画布公式/底栏数据框样式/屏底以关卡画面样张 v1 机检 11/11 全绿冻结落码(M-2 迭代 4;冻结值登记见机检报告 git 提交 9a79927,气质终审 = M-2 出口闸真人目检) +**已完成(2026-09-28 样张 v1 机检全绿,闸形 A——正文随冻结改写)**:④ **视觉终稿**——节点图标形制/通道质感/画布公式/底栏数据框样式/屏底以关卡画面样张 v1 机检 11/11 全绿冻结落码(M-2 迭代 4;冻结值登记见机检报告 git 提交 9a79927,气质终审 = M-2 出口闸真人目检) --- @@ -247,3 +247,4 @@ | 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 7633ad19..00346040 100644 --- a/design/gdd/ux/node-reward.md +++ b/design/gdd/ux/node-reward.md @@ -1,6 +1,6 @@ # 节点奖励屏 UX spec(node-reward) -> 状态:v2.6(2026-10-09 文档正确性审查批·独立复核——令牌池七种口径对齐代码;池与交互形态同 v2.4) +> 状态:v2.7(2026-10-15 简明技术中文用语规范(用户令)批——词面修正 1 处;池与交互形态同 v2.4) > 事实源:`game/presentation/views/curio_pick_overlay.gd`(三选一覆盖层共用面)+ `main.gd`(奖励节点分支——`adventure.node_bonus_candidates/apply_node_bonus`)+ `battle_narrator.gd`(node_bonus_header) > 相邻:[level-clear](level-clear.md)(通关三选一面——同一覆盖层的另一上下文)/ [level-map](level-map.md)(关卡画面)/ [秘宝](../systems/跨局循环/秘宝.md)(道具件内容权威——本批起为局外同调件,不再入三选一牌库)/ [冒险结构](../systems/冒险循环/冒险结构.md)(共享池令牌库账本) @@ -18,7 +18,7 @@ ## 口径 -- **同库同池耗(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 级=最左(并列同档取最左)。配额结构锚与档位构成读冒险表(registry adventure_table 为准——schema validate 硬断言 70/25/3)。**v2.3 第三渠道并账维持**:商店货架=同库付费渠道(令牌级货架,买一件=奖励面少一件),库存=剩余令牌数,账本语义与切边注记归[冒险结构](../systems/冒险循环/冒险结构.md)共享池账本节。 +- **同库同池耗(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 级=最左(并列同档取最左)。配额结构锚与档位构成读冒险表(registry adventure_table 为准——schema validate 硬断言 70/25/3)。**v2.3 第三渠道并账维持**:商店货架=同库付费渠道(令牌级货架,买一件=奖励面少一件),库存=剩余令牌数,账本语义与切边注记归[冒险结构](../systems/冒险循环/冒险结构.md)共享池账本节。 - ~~道具件入本关库存~~(v2.2 退役——秘宝局内不掉落机制道具,三轴 doctrine 锁死)。 - ~~「池空直通」合法态~~(v2.4 随令牌池换代退役又回归异形:旧口径=GP 无上限保证牌库恒非空;现口径=98 张池真可耗尽,空库=零候选直通合法态——池耗即枯竭既定后果)。 @@ -36,3 +36,4 @@ | 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 52eed37c..070a196f 100644 --- a/design/gdd/ux/settlement-summary.md +++ b/design/gdd/ux/settlement-summary.md @@ -1,12 +1,12 @@ # 结算总结 UX spec(settlement-summary) -> 状态:v1.2(2026-09-30 审计拍板点 2 用户裁决落文——两面分节、纯呈现轻量 spec;无新概念,只成文已实装的显示规则) +> 状态:v1.3(2026-10-15 简明技术中文用语规范(用户令)批:词面修正 8 处——两面分节、纯呈现轻量 spec 不变;无新概念) > 事实源:`game/presentation/views/battle_end_overlay.gd`(胜利金蜡封 / 失败暮蓝双形态载体)+ `main.gd`(胜利接线 main.gd:398 调试与迭代 8 卡⑥冒险主路径 / 冒险终局接线 main.gd:339-346) > 相邻:[battle.md](battle.md)(战斗屏出口锚与信息归属两原则)/ [level-clear.md](level-clear.md)(关卡结算屏——Boss 胜利走大奖励面,非本 spec)/ [level-map.md](level-map.md)(GP 常驻徽章) ## 定位 -本 spec 承载两个**已实装**的结算总结呈现面(2026-09-27 用户拍板定名,接线登记 06 台账): +本 spec 承载两个**已实装**的结算总结呈现面(2026-09-27 用户拍板定名,接线登记 06 状态记录): - **战斗总结结算**——冒险模式普通战斗胜利时的总结覆盖层(战斗小循环的出口呈现); - **冒险总结结算**——冒险终结(倒下 / 末关通关 / 放弃)时的终局覆盖层(冒险大循环的收束呈现)。 @@ -24,14 +24,14 @@ ## 冒险总结结算(冒险终结面) - 触发:主角倒下(verdict=lose)/ 末关通关 / 玩家放弃——三结局同面(`adventure_finished` 收束)。 -- 载体:与战斗面同一个 battle_end_overlay(2026-09-29 迭代 6 T7 接线)——末关通关走 `open_victory`(金蜡封 +「本局 GP 入账 · 合计 N」行,GP 收束清零前的呈现侧影子账);倒下 / 放弃走 `open_defeat`(暮蓝)。无独立「冒险终局面板」实体,06 台账旧称随本条收口。 +- 载体:与战斗面同一个 battle_end_overlay(2026-09-29 迭代 6 T7 接线)——末关通关走 `open_victory`(金蜡封 +「本局 GP 入账 · 合计 N」行,GP 收束清零前的呈现侧影子账);倒下 / 放弃走 `open_defeat`(暮蓝)。无独立「冒险终局面板」实体,06 状态记录旧称随本条完成。 - 呈现内容:冒险摘要五件事(定义归[冒险结构](../systems/冒险循环/冒险结构.md))+ 钥石入账明细(= 本局逐杀 Boss 掉落合计;消费归[元进度](../systems/跨局循环/元进度.md) settle_adventure——迭代 10 起大奖励面不再产钥石)+ GP 合计行。 - 出口:确认 → 回存档首页。 ## 口径 -- **命名(2026-09-27 拍板文本口径)**:战斗总结结算 / 冒险总结结算。历史变体收口清单(正文一律改用正名,变体退役):①「战斗结算画面」——battle.md 旧口径(06 归属行已判登记偏差);②「结算画面」单用——两义词(level-clear 语境=冒险面、battle 旧语境=战斗面),禁用;③「战斗胜利总结结算」——level-clear 与 06 台账旧用四字变体;④「摘要结算画面」——冒险结构 旧称(冒险总结结算的摘要呈现位);⑤「冒险终局面板」——06 台账对同一 overlay 冒险面打开形态的俗称,无独立实体。06-待办清单 现状段按其「措辞不改」体例保留历史原文,以本清单为命名准绳。 -- **GP / 钥石呈现分工**(battle.md OQ14 收口口径 + 迭代 10 扩):GP = 本 spec 战斗面(增量+总量)+ 关卡画面常驻总量;钥石 = 本 spec 战斗面(Boss/精英击杀增量行,迭代 10 起)+ 冒险面(收束明细)+ 营地存量。钥石多处并存系「进账时刻 / 收束明细 / 存量可用」不同义,不构成重复展示(level-clear.md OQ3 收口维持)。 +- **命名(2026-09-27 拍板文本口径)**:战斗总结结算 / 冒险总结结算。历史变体退役清单(正文一律改用正名):①「战斗结算画面」——battle.md 旧口径(06 归属行已判登记偏差);②「结算画面」单用——两义词(level-clear 语境=冒险面、battle 旧语境=战斗面),禁用;③「战斗胜利总结结算」——level-clear 与 06 状态记录旧用四字变体;④「摘要结算画面」——冒险结构 旧称(冒险总结结算的摘要呈现位);⑤「冒险终局面板」——06 状态记录对同一 overlay 冒险面打开形态的俗称,无独立实体。06-待办清单 现状段按其「措辞不改」体例保留历史原文,以本清单为命名准绳。 +- **GP / 钥石呈现分工**(battle.md OQ14 完成口径 + 迭代 10 扩):GP = 本 spec 战斗面(增量+总量)+ 关卡画面常驻总量;钥石 = 本 spec 战斗面(Boss/精英击杀增量行,迭代 10 起)+ 冒险面(收束明细)+ 营地存量。钥石多处并存系「进账时刻 / 收束明细 / 存量可用」不同义,不构成重复展示(level-clear.md OQ3 完成维持)。 - **失败面不呈战利品**:冒险总结结算不呈现 GP 增量(倒下即终语义,失败侧恒不呈现)。 - **禁重复展示**:本面不呈状态效果、不呈结算明细正文(明细回看 overlay 已随 P-C7 退役——冒险中明细回看归「生涯」)——[battle.md](battle.md) 信息归属两原则(循环限定 + 单一展示面)对面级呈现同样适用。 @@ -42,3 +42,4 @@ | 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 完成维持);头注状态行版本号随本行对齐 | diff --git a/design/gdd/术语表.md b/design/gdd/术语表.md index e4f0ca10..2713f312 100644 --- a/design/gdd/术语表.md +++ b/design/gdd/术语表.md @@ -1,6 +1,6 @@ # 术语表 -> 全库专用术语的唯一对照表(2026-10-11 用户令建立)。规矩:新术语先登记本表、再在文档使用;退役词见文末对照表,文档正文一律使用现行词。文档中遇到看不懂的词,查本表。 +> 全库专用术语的唯一对照表(2026-10-11 用户令建立)。规矩:新术语先登记本表、再在文档使用;退役词见文末对照表,文档正文一律使用现行词。文档中遇到看不懂的词,查本表。用词纪律(禁用词、替换值、豁免范围)见「用语规范」节。 ## 格与棋盘 @@ -15,6 +15,8 @@ | 真视 | 直接告诉玩家某范围内哪些格是危险格的效果(秘宝承重契约:一次最多 3×3,见[秘宝](systems/跨局循环/秘宝.md)核心规则) | | 类型微光 | 棋盘上按格子类型显示的提示光效(视野参数控制其显示范围) | | 换图 / 弃图刷新 | 清完一图进入下一图 / 花储备放弃当前图重开一张(代价见[行动经济](systems/排雷循环/行动经济.md)) | +| 装板(装板期) | 把地图战斗资源摇定的类型身份铺设到棋盘格子上的布置动作(阶段);由战斗结算的布置段执行,随机取数标签为 `variant_place` | +| 摇号 / 摇定 | 按池配置用随机数决定结果(资源身份、遭遇抽取、货架抽签);随机服务的登记见 `design/registry/entities.yaml` 的 `rng_service` 条目 | ## 资源与经济 @@ -66,6 +68,16 @@ | 专长 | 奇物的分类之一:改写规则的机制件 | | 专长凭证 | 换取一次专长三选一资格的凭证——奖励节点与商店不直接给专长,给凭证(原「凭证」,2026-10-11 用户裁更名) | | 地图战斗资源 | 战斗域的资源层:每格在装板期摇定资源类型身份(安全格/危险格同一类型池),回合内挖格/标旗获取、按动作极性结算正负兑付的一次性收益(原「奖励道具经济」,2026-09-16 用户裁更名;见[地图战斗资源](systems/战斗循环/地图战斗资源.md)) | +| 机能件 / 机制件 | 道具的作用二分:不改变结算规则、只扩大操作包络的为机能件(秘宝);使结算产生原本不存在的新行的为机制件(专长)。判定尺见[核心循环](01-核心循环.md)「道具三层职责与分界」节 | + +## 结算目标 + +| 术语 | 定义 | +|---|---| +| 总线 | 为多源叠加设计的结算目标(伤害加法/乘法区、增益池、护甲阈值轴):多层共写是本体,不设归属规则 | +| 抽屉 | 单计数器加专属重置语义的结算账户:新成员写入前必须与它的重置语义对齐,不兼容则另立新账 | + +两类的判定与道具定义卡必答见[核心循环](01-核心循环.md)「结算目标分两类:总线与抽屉」节。 ## 开发流程 @@ -74,6 +86,39 @@ | 逐需求点验收清单 | 需求卡片验证闸的必备清单:每个需求点列明测什么(具体断言或行为)/怎么测(测试落点与注入方式)/谁验(自动闸或用户目检);查不出验收条目的需求点=卡片不成立(规矩见 req-card 技能,测试落码写法见 [code-conventions](../dev/code-conventions.md) §3.5) | | 测试方式两分法 | 能力验证与体验验证分开走(2026-10-11 用户定):能力验证=通过调试接口直接修改游戏数据(改钥石/槽位/解锁状态等,不走正常资源积累流程);体验验证=用户目检完整流程,登记 07-体验验证清单观测项 | +## 用语规范(2026-10-15 用户令立) + +词面纪律的登记处。通用禁用词与选词以**简明技术中文(STC)词表**为权威:外部技能文件 `C:\Users\DK\.zcode\skills\simplified-technical-chinese\词表.md`,约 170 条,配检查脚本 check.py。 + +本仓库的机器闸 = `tools/doc_term_audit.py`,已吸收本节项目裁项。本节只登记两类裁项:A 已裁替换、B 豁免条款。历史退役词(雷格/正主/落籍等 7 组)见下方「退役词对照」节,不与 A 表重复。 + +### A. 已裁替换(写新文本必须用「用」列) + +| 不用 | 用 | 出处 | +|---|---|---| +| 对标 | 参照 | STC 1.7,2026-10-15 用户裁 | +| 若干 | 写具体数值;无数值可写时写明数值出处 | STC 5.4,2026-10-15 用户裁 | +| 不得 | 禁止 | STC 词表(同上) | +| 报错 | 名词用「错误」;动词用「返回错误」或「显示错误」 | STC 词表(同上) | +| buff | 增益 | STC 1.1 一词一义(同上) | +| 收口 | 完成;指合并时写「合并进 master」 | doc-conventions 第 4 节流程动词禁令 | +| 在飞 | 正在执行中 | doc-conventions 第 4 节 | +| 随批 | 顺带 | doc-conventions 第 4 节 | +| 对拍 | 与基线数据逐项比对 | doc-conventions 第 4 节 | +| 销账 / 销号 | 注销 | doc-conventions 第 4 节(销号系同族延伸登记) | +| 台账 | 状态记录 | doc-conventions 第 4 节 | +| 落文 | 写入文档;已完成写作时写「已写入」 | doc-conventions 第 4 节同族形态,2026-10-15 用户裁延伸 | + +注:「注销」仅用于清单条目办结义(销号/销账的替换词);「结束登录状态」义仍按 STC 用「退出登录」。 + +### B. 豁免条款(三类文本不改写) + +1. **历史文本**:版本历史表已入库的行、git 提交说明、裁决记录中引用用户原话的句子——保留原用词,不按 A 表追改。 +2. **对照性文本**:「退役词对照」表本身、「原 ××」式更名记载、禁令引举句——旧词在这些位置是内容本身,不是残留。 +3. **玩家可见专名与机制词**:按「对外命名纪律」节与各系统文档现行用语使用(旗/标中/踩雷等机制词在文档内部照常用)。 + +存量口径:A 表生效前已入库的正文不做强制清扫;文件后续被批次触碰时,顺带按 A 表换代。 + ## 退役词对照(文档正文禁用) | 退役词 | 现行词 | @@ -90,20 +135,18 @@ | 规则 | 内容 | |---|---| -| 禁用字面 | 「雷」「插旗」及相关字面(雷格/踩雷/插旗/旗)**不得进入对外命名**——「扫雷插旗」仅系内部开发用语,对外世界观=探索地下城/挖掘地下城 | +| 禁用字面 | 「雷」「插旗」及相关字面(雷格/踩雷/插旗/旗)**禁止进入对外命名**——「扫雷插旗」仅系内部开发用语,对外世界观=探索地下城/挖掘地下城 | | 插旗的对外表达 | **封印**(件名示例:封印桩/封印回响/封印匠/封印爆裂) | | 危险格的对外风味 | **地下城陷阱 / 怪物巢穴**(巢穴仅限世界观风味层使用——产品名清巢者出处、美术纹样名;机制表述仍用危险格) | +| 连锁展开的对外表达 | **坍塌显形**:挖穿薄壳、整片松动地面塌陷露出(00 篇巢穴隐喻轴定名;机制文档内部仍用连锁展开) | | 适用范围 | 全部对外命名:道具件名、显示名、UI 文案、成就与百科措辞(首例=专长 27 件第一版命名,[奇物](systems/冒险循环/奇物.md)基础件表 v3.15);机制文档内部用语不受此限(旗/标中/踩雷等机制词照常用) | ## 版本历史 | 版本 | 日期 | 改动 | |---|---|---| -| v1.11 | 2026-10-13 | 「道具」统称登记(用户立内部用语习惯):道具=秘宝/奇物/地图战斗资源三类的内部开发统称,可单说或组合(秘宝道具/奇物道具/专长道具/战斗资源道具),仅限开发内部、玩家可见面用各类正式名称;同批补登「地图战斗资源」词条(原「奖励道具经济」2026-09-16 更名后一直未入表) | -| v1.10 | 2026-10-13 | **迭代 23 反哺落文批随迁**(实现报告 §五③「若需登记补登」经用户令落文):锻造工坊节新增「路线 id / 存档域键名」词条——六路线 id 与 forge_routes 域四键(levels/unlocked/weapon/armor),实现层词汇非玩家可见;玩家向术语零新增 | -| v1.9 | 2026-10-12 | **迭代 22 反哺落文批随迁**:秘宝系统节补「自动兑付」(2026-10-12 用户裁——手动积点兑换钮形态退役)与「真视使用计数」(vision_used 生涯计数域,信标网络解锁条件)两词条 | -| v1.1 | 2026-10-11 | **怪物巢穴类型概念退役批(用户裁「目前没有具体的怪物巢穴类型,全部改成危险格」)**:删怪物巢穴词条、危险格与旗/控制两行换代;世界观风味层的「巢穴」隐喻〔00-游戏概念巢穴隐喻轴,产品名清巢者出处〕与美术纹样名保留,机制文档零巢穴 | | 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 三件与记忆目录随批同扫 | @@ -111,3 +154,7 @@ | 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 行注) | diff --git a/tools/doc_term_audit.py b/tools/doc_term_audit.py index 3a101fb1..e271c7da 100644 --- a/tools/doc_term_audit.py +++ b/tools/doc_term_audit.py @@ -43,10 +43,54 @@ RETIRED_TERMS = [ ("道具窗口|可选类道具|已消耗未生效|使用被拒|窗口打开锚行|窗口跳过锚行", "2026-09-15", "(随可选类道具整体删除)", "格面资源批"), ("雾格", "2026-09-14", "(雾格移除)", "不做清单"), ("兄弟精", "2026-09-26", "L2 熊地精(bugbear 复用)", "变体名未经批准退役批——用户质问查证后全仓清除"), + # —— 用语规范(2026-10-15 用户令):权威=design/gdd/术语表.md「用语规范」A 表,机器闸吸收 —— + # 注意:「随批」「台账」两词本身是上方行级白名单信号(行内出现即归留档类),对其扫描会自豁免, + # 故不列入;「收口」「在飞」等照常扫描。术语表「用语规范」节已加入节级豁免(词表自身不命中)。 + ("对标", "2026-10-15", "参照", "用语规范 A 表(STC 1.7)"), + ("若干", "2026-10-15", "写具体数值或写明数值出处", "用语规范 A 表(STC 5.4)"), + ("不得", "2026-10-15", "禁止", "用语规范 A 表(STC 词表)"), + ("报错", "2026-10-15", "名词用错误;动词用返回错误/显示错误", "用语规范 A 表(STC 词表)"), + (r"\bbuff\b", "2026-10-15", "增益", "用语规范 A 表(STC 1.1)"), + ("收口", "2026-10-15", "完成/合并进 master", "用语规范 A 表(doc-conventions 第 4 节)"), + ("在飞", "2026-10-15", "正在执行中", "用语规范 A 表(doc-conventions 第 4 节)"), + ("对拍", "2026-10-15", "与基线数据逐项比对", "用语规范 A 表(doc-conventions 第 4 节)"), + ("销账|销号", "2026-10-15", "注销", "用语规范 A 表(doc-conventions 第 4 节)"), + ("落文", "2026-10-15", "写入文档/已写入", "用语规范 A 表(doc-conventions 第 4 节同族)"), ] DEFAULT_DIRS = ["design/gdd", "design/registry"] +# 用语规范 A 表补充词专项补扫:随批/台账 两词本身是上方行级白名单信号(行内出现即归 +# 留档类),主扫描对它们自豁免;本通道只做版本历史节外的专项报告,供后续触碰批清偿。 +SUPPLEMENT_TERMS = [ + ("随批", "2026-10-15", "顺带", "用语规范 A 表(doc-conventions 第 4 节)"), + ("台账", "2026-10-15", "状态记录", "用语规范 A 表(doc-conventions 第 4 节)"), +] + + +def scan_supplement(paths): + terms = [(re.compile(t), date, repl, note) for t, date, repl, note in SUPPLEMENT_TERMS] + findings = [] + for p in paths: + text = Path(p).read_text(encoding="utf-8").replace("\r\n", "\n") + in_version_section = False + for lineno, line in enumerate(text.split("\n"), 1): + if SECTION_RE.match(line): + in_version_section = True + hits = [(m.group(0), t) for t in terms for m in [t[0].search(line)] if m] + if not hits or in_version_section or COMMENT_RE.match(line): + continue + findings.append({ + "term": "、".join(sorted({h[0] for h in hits})), + "file": str(p).replace("\\", "/"), + "line": lineno, + "klass": "疑似现行", + "text": line.strip()[:160], + "retired": hits[0][1][1], + "replacement": hits[0][1][2], + }) + return findings + # 词级语境豁免:某词退役的只是特定机制语境,另一现行机制合法沿用同一词时, # 命中行含豁免语境信号即不算退役词命中(不进疑似、不进留档计数)。 # 充能:挖掘期/战斗段充能退役(2026-09-19),但秘宝主动件「每冒险充能」(同调件 @@ -54,6 +98,8 @@ DEFAULT_DIRS = ["design/gdd", "design/registry"] TERM_CONTEXT_EXEMPT = { "充能": re.compile(r"秘宝|同调|主动件|每冒险|冒险开始|充能账|充能维护|attunement" r"|incense_stick|sky_eye|reveal_tiles|战斗级充能|关卡级充能|每战一次|每关一次"), + # buff:反引号行内代码(字段/键名)原样保留(STC 6.2),只查散文用词 + r"\bbuff\b": re.compile(r"`[^`]*buff[^`]*`"), # 否定式/反照式引用:正文在说明「该类别已退役/不做/不存在」,退役词出现在句中是 # 陈述本身的一部分,替换掉反而毁掉句意(2026-10-15 用户令「统一替换」问询的判定)。 "道具窗口|可选类道具|已消耗未生效|使用被拒|窗口打开锚行|窗口跳过锚行": re.compile( @@ -77,8 +123,8 @@ WHITELIST_RE = re.compile( r"|\bv0\.\d+" r"|修订记录|版本历史|履行回执|台账" ) -# 节级白名单:版本历史/修订记录节内整段豁免 -SECTION_RE = re.compile(r"^#{1,6}\s*(版本历史|修订记录)") +# 节级白名单:版本历史/修订记录/用语规范节内整段豁免(用语规范节的不用列是内容本身) +SECTION_RE = re.compile(r"^#{1,6}\s*(版本历史|修订记录|用语规范)") COMMENT_RE = re.compile(r"^\s*[;#]") @@ -134,7 +180,7 @@ def main(): paths += sorted(Path(d).rglob("*.yaml")) paths = [p for p in paths if Path(p).exists()] - findings = scan(paths) + findings = scan(paths) + scan_supplement(paths) suspect = [f for f in findings if f["klass"] == "疑似现行"] kept = [f for f in findings if f["klass"] != "疑似现行"]