diff --git a/design/gdd/02-系统清单.md b/design/gdd/02-系统清单.md index e8dec1a8..96c526bf 100644 --- a/design/gdd/02-系统清单.md +++ b/design/gdd/02-系统清单.md @@ -131,3 +131,4 @@ | v1.3 | 2026-10-05 | 立《特性》:一次冒险内角色自身得到的提升——此前按内部分类被叫成三个名字(规则类称"流派件"、属性类称"数值件"、界面称"本关强化"),现收敛为一个对象的两种形态枚举;文档树冒险循环补行 + 命名对照表补 `ADVENTURE_FEATURE` 行 | | v1.4 | 2026-10-05 | 《特性》v1.1 分类重构:两类由"规则改写型 / 属性加成型"改为"属性提升(ASI)/ 专长(Feat)",属性提升内部再分纯属性组与特殊组;获取途径由两口共用池改为三条分工渠道(专长走特定节点、属性提升走奖励节点与商店)+罕见旁路"专长获取" | | v1.5 | 2026-10-05 | 《特性》改名为《奖励》并升 v2.0:顶层概念改为"一次冒险内各渠道给予玩家的增益总称",边界判据由"自身提升 vs 持有物"改为生命周期(当局清零的是奖励,跨局带走的是魔法道具);分类由两类扩为三个枚举(机制类 / 属性提升类 / 资源与机会类),并新增分类 × 渠道交叉开关表——两根轴互不决定。文档树冒险循环行改名 + 命名对照表 `ADVENTURE_FEATURE` → `ADVENTURE_REWARD` | +| v1.6 | 2026-10-05 | 《奖励》v2.1 交叉表收口:Boss 渠道只出专长(终局 Boss 不给),另两类在此不出现;新增「计价物不自售」规则处理金币不进商店——不拆第四个分类、不开特例,而是两轴交叉处的一条约束 | diff --git a/design/gdd/06-待办清单.md b/design/gdd/06-待办清单.md index af870bd1..bf116925 100644 --- a/design/gdd/06-待办清单.md +++ b/design/gdd/06-待办清单.md @@ -29,17 +29,27 @@ **现状**:BD 分层口径(用户定):基础 BD(账号级,局外天赋树+同调装配)与冒险 BD(局内一次冒险的构筑)两层;冒险 BD 的加强物 = **奖励**(2026-10-05 定名,v2.0 由「特性」改名,定义见 [奖励](systems/冒险循环/奖励.md)),下分**三个枚举分类**:**机制类**(专长——改规则、带流派标签与档位激活,构筑核心)、**属性提升类**(生命/AC/攻击三轴,写统一加算区;账本实为冒险域、关间不清零)、**资源与机会类**(行动点上限·刷新次数·金币·回复——给"可用的量",命名待定)。旧称「流派件 / 数值件 / 本关强化」一律作废;v1.0 的「规则改写型 / 属性加成型」与 v1.1 的两分类亦作废。现行三个分类**共用同一获取渠道**:三选一(奖励节点+通关)+ 商店货架 + 格面令牌同属 98 张固定配额池(普通 70/稀有 25/罕见 3),机制类只占稀有/罕见档(与属性大件混编),商店仅「货架零专长挤掉一张普通卡」保底——获取途径与条件完全相同、仅概率不同,构筑核心的获取节奏纯看脸。 -**用户定案(2026-10-05)**:分类 × 渠道交叉开关表——**机制类**(专长)主渠道=关底 Boss 击败后(专属三选一,时机确定,构筑节奏可预期),罕见旁路=奖励节点/商店里小概率冒出的「专长获取」,商店不出现;**属性提升类**=奖励节点 + 商店(口径「训练」);**资源与机会类**=奖励节点 + 商店;Boss 击败后是否也出这两类=待定。用户原话:"我在获取特性的时候,可以有些比较罕见的道具,让我立马得到一个专长,就给它一点不确定性,一点随机性"。**确定性优先**:专长不因没 roll 到就构筑不起来。用户同时明确:先定大意念再分小类,渠道与分类是两根互不决定的轴。 +**用户定案(2026-10-05,v2.1 收口)**:分类 × 渠道交叉开关表—— + +| 分类 \ 渠道 | 奖励节点 | 商店 | 终局前 Boss 击败后 | +|---|---|---|---| +| 机制类(专长) | 罕见旁路 | 不出现 | **主渠道(独占)** | +| 属性提升类 | 出 | 出(训练) | 不出现 | +| 资源与机会类 | 出 | 出(金币除外) | 不出现 | + +**Boss 渠道是专长的独占渠道**——只出机制类,另两类都不走这里;奖励节点与商店是属性提升类与资源与机会类的两个并行出口。形状是"一块独占 + 两块并行",不是三块平分。**终局 Boss 不给**(打赢时冒险已结束,无后续关卡可消费),兑付只发生在终局之前的 Boss。用户原话:"我在获取特性的时候,可以有些比较罕见的道具,让我立马得到一个专长,就给它一点不确定性,一点随机性"。**确定性优先**:专长不因没 roll 到就构筑不起来。用户同时明确:先定大意念再分小类,渠道与分类是两根互不决定的轴。 原四备选(① 专长专属三选一 ② 行为条件投放 ③ 计步保底 ④ 双池分离)已被上述定案覆盖——定案≈备选①的确定性路线,余三备选不再单独推进。**节点类型不扩类**:机制类挂在 Boss 节点兑付面上(击败后追加一次专长三选一),[关卡节点地图](systems/冒险循环/关卡节点地图.md) 的节点类型仍为封闭枚举五种——此前的"是否新增节点类型"悬案由此收口。 **gp/heal 已安置,不再走迁移**:v2.0 把它们放进资源与机会类(用户 2026-10-05 选"暂不处置"=不做结构性迁移、不动配额),并在该类内显式登记异质性——**金币与回复是即时兑付,不进持有集、不持续生效**,与行动点上限/刷新次数(进持有账本、当局持续有效)生命周期不同。这条异质性必须留在文档里,防止后续把它们当持续生效的东西去结算。 -**待拍板/待观察四项**:① **资源与机会类的命名**(候选:资源 / 补给 / 余量——取决于以哪层共性为主),以及**回复是否属该类**(也可能独立成第四类)。② **最终关 Boss 后是否也兑付专长**(现行奖励口径是最终关不给——没有后续关卡可消费)。③ **专长总量与档位阈值的匹配**:确定性渠道一局只兑付两次(若最终关不给),而档位阈值是同标签 2 件档一 / 4 件档二——档二须靠罕见旁路补齐,是否合预期归曲线调参批观察。④ **Boss 击败后是否也出属性提升类与资源与机会类**(现标待定)。 +**金币不进商店=一条规则,不是特例**:资源与机会类里只有金币不出现在商店(同类的行动点上限与刷新次数都可以)。v2.1 定为**「计价物不自售」**——凡是以某渠道的计价物为内容的奖励,不进该渠道货架;商店计价物是 GP,故 GP 不进商店。**不拆第四个分类**(按"能不能进商店"反推分类=用渠道轴去切分类轴,两根轴缠回一起),**也不开特例**(特例是孤立的、靠记忆维护的;规则对所有渠道成立,将来自动适用)。它是两轴交叉处的一条约束,实现上是货架候选构建的过滤条件,不是奖励自身的属性。 -**归属**:[奖励](systems/冒险循环/奖励.md)(定义与交叉开关表)+ [node-reward](ux/node-reward.md)(令牌池与奖励面)+ [冒险结构](systems/冒险循环/冒险结构.md)(商店货架保底)+ [关卡节点地图](systems/冒险循环/关卡节点地图.md)(节点类型词表);与上条「双层 BD 延期与备选内容总登记」二期件组相关但不同面。 +**待拍板/待观察两项**:① **资源与机会类的命名**(候选:资源 / 补给 / 余量——取决于以哪层共性为主),以及**回复的两处待确认**——它是否属该类(也可能独立成第四类)、它不进商店是否受同一条规则管(回复不是计价物,严格说不适用于「计价物不自售」)。② **专长总量与档位阈值的匹配**:终局 Boss 不给已定,一局确定性兑付次数=终局前 Boss 的个数(三关结构下为两次),而档位阈值是同标签 2 件档一 / 4 件档二——档二须靠罕见旁路补齐,是否合预期归曲线调参批观察。 -**状态**:分工已定,**实施待排批**;四项待拍板/待观察(2026-10-05 v2.0 更新) +**归属**:[奖励](systems/冒险循环/奖励.md)(定义与交叉开关表)+ [node-reward](ux/node-reward.md)(令牌池与奖励面)+ [冒险结构](systems/冒险循环/冒险结构.md)(商店货架保底与货架过滤)+ [关卡节点地图](systems/冒险循环/关卡节点地图.md)(节点类型词表);与上条「双层 BD 延期与备选内容总登记」二期件组相关但不同面。 + +**状态**:分工已定,**实施待排批**;两项待拍板/待观察(2026-10-05 v2.1 更新) #### 资源与机会类两个新种类入池——刷新次数、专长获取(2026-10-05 立) diff --git a/design/gdd/systems/冒险循环/奖励.md b/design/gdd/systems/冒险循环/奖励.md index 8759401b..2901de77 100644 --- a/design/gdd/systems/冒险循环/奖励.md +++ b/design/gdd/systems/冒险循环/奖励.md @@ -82,7 +82,7 @@ |---|---|---| | 行动点上限 | 每场战斗首轮可用的行动点更多 | 罕见档 | | 刷新次数 | 三选一界面可重抽的次数更多 | **作用对象是选择界面,不是角色**——见第 3 节的例外登记;奖励节点与商店两个渠道都可出现 | -| 金币(GP) | 局内钱包进账 | 进钱包即花掉,不进持有集、不持续生效 | +| 金币(GP) | 局内钱包进账 | 进钱包即花掉,不进持有集、不持续生效;**不进商店**(计价物不自售,见 2.4) | | 回复 | 当即回血 | **是否属本类待确认**——同样是即时兑付,不进持有集、不持续生效 | **这类为什么单独存在**:它的成员不满足"抬高战斗属性"(那归属性提升类),也不满足"改写规则"(那归机制类),但玩家拿到时的感受是一致的——"我能做的事变多了"。把它们跟属性提升混在一起,会让"加了多少攻击"这种可度量的提升和"多一次重抽"这种不可度量的余地摆在同一张候选卡上,玩家没法比。 @@ -103,16 +103,20 @@ 三个渠道各只取走分类的一部分。这张表是奖励概念的第二个维度——它和分类轴互不决定,改其中一根不必动另一根。 -| 分类 \ 渠道 | 奖励节点 | 商店 | 关底 Boss 击败后 | +| 分类 \ 渠道 | 奖励节点 | 商店 | 终局前 Boss 击败后(见 2.1) | |---|---|---|---| -| **机制类**(专长) | 罕见旁路(见 2.2) | 不出现 | **主渠道**(见 2.1) | -| **属性提升类** | 出 | 出(口径「训练」) | 待定 | -| **资源与机会类** | 出 | 出 | 待定 | +| **机制类**(专长) | 罕见旁路(见 2.2) | 不出现 | **主渠道**(唯一渠道中的确定来源) | +| **属性提升类** | 出 | 出(口径「训练」) | 不出现 | +| **资源与机会类** | 出 | 出(**金币除外**,见 2.4) | 不出现 | -#### 2.1 机制类的主渠道:关底 Boss 击败后 +**这张表的形状**:Boss 渠道是**专长的独占渠道**——只出机制类,另两类都不走这里;奖励节点与商店则是属性提升类与资源与机会类的两个并行出口。三条渠道的分工因此是"一块独占 + 两块并行",不是三块平分。这条形状本身要记住:它意味着专长的获取节奏与其他奖励的获取节奏**由完全不同的机制决定**,前者靠打赢,后者靠抽取与购买。 + +#### 2.1 机制类的主渠道:终局前 Boss 击败后 专长的专属渠道,时机确定——打赢就有,不需要看脸。构筑的节奏由此可预期:玩家能规划"第几关拿到第一个专长"。品类原型是杀戮尖塔(每层 Boss 后必给遗物)与哈迪斯(Boss 后必给恩赐)——打赢了一定拿到东西,是这类游戏的通例。 +**终局 Boss 不给**:兑付只发生在**终局之前的 Boss** 身上——打赢最终 Boss 时冒险已经结束,没有后续关卡可消费,给了也无处生效。三关结构下,一局的确定性专长兑付次数由此确定(每个终局前 Boss 一次)。 + **不新增节点类型**:专长挂在 Boss 节点的兑付面上(击败后追加一次专长三选一),[关卡节点地图](关卡节点地图.md) 的节点类型仍是封闭枚举五种(战斗 / Boss / 奖励 / 恢复 / 商店),词表零扩类。此前"要不要为专长新设一类节点"的悬案由此收口。 #### 2.2 罕见旁路:专长获取 @@ -131,7 +135,21 @@ 商店这一侧走的叙事是「**训练**」——花代价向某位师父学习、借某种卷轴修炼、或把战斗攒下的钱换成一身本领。它不是买一个东西回来,而是把钱换成自己的本领,所以落到命名空间上和奖励节点那一侧完全相同:都是往同一个持有集里加一项奖励。 -#### 2.4 在册事项 +#### 2.4 金币不进商店:一条规则,不是一个特例 + +资源与机会类里只有**金币**不出现在商店,同类的行动点上限与刷新次数都可以。这里不拆分类、也不给金币开特例,而是把它写成一条**规则**: + +> **计价物不自售**——凡是以某渠道的计价物为内容的奖励,不进该渠道的货架。 + +商店的计价物是金币(GP),所以金币不进商店。写成规则而不是特例,是因为一旦写成特例,"为什么只有它不行"就成了一个孤立的、需要靠记忆维护的例外;写成规则,它对所有渠道都成立——将来任何渠道只要用自己的计价物当奖励内容,这条规则自动适用,不需要再补第二个特例。 + +**为什么不拆成第四个分类**:分类轴回答的是"给的是什么",金币给的是余量,和行动点上限、刷新次数同类——按"能不能进商店"去反推分类,等于用渠道轴的性质去切分类轴,两根轴又缠回一起了。而且为一个只有一项的分类立枚举,读者会以为它和另三类并列是一个重量级的划分,实际它只是某一项恰好踩到了一条经济规则。 + +**这条规则落在哪**:它不属于分类轴,也不属于渠道轴,而是**两轴交叉处的一条约束**——分类白名单先筛一遍,这条规则再筛一遍。实现上它是货架候选构建时的一个过滤条件,不是奖励自身的属性。 + +**待确认**:同类的**回复**当前也不在商店货架上(现行 `shop.tres` 的货架只有攻击 / 生命上限 / 护甲 / 行动点四项)。它不进商店是同一条规则管(回复不是计价物,不适用),还是另有口径,尚未拍板,登记在 [06-待办清单](../../06-待办清单.md)。 + +#### 2.5 在册事项 现行实现里**三条渠道完全共用同一个候选池**,三个分类出现条件一样、只有出现概率不同——上表的渠道分工是**目标状态,尚未实施**。相关的实施批次登记在 [06-待办清单](../../06-待办清单.md) 的 BD 分层条目下,本文件不复制。 @@ -210,6 +228,7 @@ 6. 文档与代码里提到它时只有"奖励"这一个名字;需要区分时用"机制类/属性提升类/资源与机会类"描述,不得另造称呼。 7. 刷新次数不进角色加算区——它只改三选一界面的可用重抽次数。 8. 金币与回复不进持有集——它们是即时兑付,拿到即消费完。 +9. 金币不出现在商店货架上——这是「计价物不自售」规则的结果,不是给金币单独立的一个分类或特例。 ## 待办 @@ -218,9 +237,8 @@ 本节只点出四条由本版新立、尚未登记的判断来源: - **资源与机会类的命名待定**:候选「资源」「补给」「余量」,取决于以哪层共性为主。定了之后要回头改本文件的类名与 registry。 -- **回复是否属资源与机会类待确认**:它是即时兑付,与金币同类;也可能被视为独立的第四类。 -- **Boss 击败后是否也给属性提升类与资源与机会类**:现标"待定",未拍板。 -- **机制类总量与档位阈值的匹配**:三关结构下,若最终关 Boss 后不给(没有后续关卡可消费),确定性渠道一局只兑付两次专长——刚好够同标签 2 件档一,档二(4 件)要靠罕见旁路补齐。是否合预期归曲线调参批观察。 +- **回复的两处待确认**:① 它是否属资源与机会类(即时兑付,与金币同类,也可能独立成第四类);② 它不进商店,是受「计价物不自售」同一条规则管,还是另有口径——回复不是计价物,严格说不适用该规则。 +- **机制类总量与档位阈值的匹配**:终局 Boss 不给已定,一局的确定性专长兑付次数由"终局前 Boss 的个数"决定。三关结构下是两次,刚好够同标签 2 件档一,档二(4 件)要靠罕见旁路补齐。是否合预期归曲线调参批观察。 ## 版本历史 @@ -230,3 +248,4 @@ | v1.1 | 2026-10-05 | 分类重构:两类由「规则改写型 / 属性加成型」改为「属性提升 / 专长」。 | | v1.2 | 2026-10-05 | 专长渠道落定:关底 Boss 击败后兑付,不新增节点类型;罕见旁路明确为"普通奖励里的专长 N 选一"。 | | **v2.0** | 2026-10-05 | **顶层改名为「奖励」并重构为两根轴**。改名动因:筐里既装"角色自身的变化"也装金币这类一次性兑付物,用"自身提升 vs 持有物"已切不开,边界判据改由生命周期承担——**当局清零的是奖励,跨局带走的是魔法道具**。分类由两类改为**三个枚举**:机制类(专长)/ 属性提升类(生命·AC·攻击)/ 资源与机会类(行动点上限·刷新次数·金币·回复,命名待定)。新增第 2 节分类 × 渠道交叉开关表,明确两根轴互不决定;金币与回复不再被当作"该移出去的脏东西",而是安置在资源与机会类里,同时把它们的即时兑付性质显式登记为类内异质性。 | +| v2.1 | 2026-10-05 | **交叉表收口(用户拍板)**:Boss 渠道**只出专长**,属性提升类与资源与机会类在此均不出现——三条渠道的形状定为"一块独占 + 两块并行",专长靠打赢、其余靠抽取与购买。Boss 兑付明确为**终局前**的 Boss,终局 Boss 不给(无后续关卡可消费)。新增 2.4 节**「计价物不自售」规则**:金币不进商店既不拆分类也不开特例,而是写成两轴交叉处的一条约束——商店的计价物是金币,故金币不进商店;按"能不能进商店"反推分类等于用渠道轴去切分类轴,两根轴会缠回去。 | diff --git a/design/registry/entities.yaml b/design/registry/entities.yaml index 104043a3..fdd88ff5 100644 --- a/design/registry/entities.yaml +++ b/design/registry/entities.yaml @@ -579,14 +579,15 @@ entities: owner: design/gdd/systems/冒险循环/奖励.md attributes: definition: 一次冒险之内通过各渠道给予玩家的增益总称——奖励节点给的、商店买的、打赢关底 Boss 给的,都是奖励。装的是"这一局你捞到了什么",不管从哪个渠道来 + channel_rule: 计价物不自售——凡是以某渠道的计价物为内容的奖励,不进该渠道货架(商店计价物=GP,故 GP 不进商店)。这是两轴交叉处的一条约束,不是第四个分类也不是特例;实现上是货架候选构建的过滤条件,不是奖励自身的属性 axes: 两根互不决定的轴——**分类轴**(给的是什么)与**渠道轴**(从哪来)。一个奖励属于哪个分类不决定它从哪个渠道来;交叉关系由 [奖励](design/gdd/systems/冒险循环/奖励.md) 第 2 节开关表定死 categories: 封闭三类 {机制类, 属性提升类, 资源与机会类}(v2.0 起;v1.1 曾用两类、v1.0 曾用 {rule, stat},均已作废)。机制类(专长 Feat)——在结算管线某个挂点上给自己加一条规则,同标签持有项数达阈值时质变,事实源 relics.tres;属性提升类(ASI)——抬高生命上限 / AC / 攻击三轴基础值,进冒险加算区,事实源 adventure.tres;资源与机会类(命名待定)——给"可用的量",不抬高战斗属性也不改规则:行动点上限 / 刷新次数 / 金币 / 回复,不进加算区、多数不进持有集,事实源 adventure.tres scope: 作用对象 = 角色本人与其参与的结算(不改敌人、不改棋盘生成、不改关卡内容);**例外**——刷新次数作用在三选一界面而非角色身上,不进加算区;时间范围 = 整局冒险,机制类与属性提升类跨关携带、关间不清零,金币与回复即时兑付;归属范围 = 不进账号永久进度,不带到下一次冒险 lifecycle: 候选池构建(冒险开局一次)→ 在渠道上出现(三选一形式)→ 选定(自池中剔除不再复现;选到「专长获取」时立刻再开一次专长 N 选一)→ 持有生效或即时兑付 → 冒险以任一结局收束时整集清零;断点记录持有集与剩余候选池 - acquisition: 三条渠道的**目标分工(交叉开关)**——机制类:主渠道=关底 Boss 击败后(不新增节点类型,挂 Boss 节点兑付面),罕见旁路=奖励节点/商店的「专长获取」,商店不出现;属性提升类:奖励节点 + 商店(口径「训练」);资源与机会类:奖励节点 + 商店;Boss 击败后是否也出后两类=待定。**现行实现三渠道共用同一候选池、三类混编**,分工尚未实施,登记于 06-待办清单 BD 分层条目 + acquisition: 三条渠道的**目标分工(交叉开关,v2.1 收口)**——机制类:主渠道=**终局前** Boss 击败后(**独占渠道**,不新增节点类型、挂 Boss 节点兑付面;终局 Boss 不给——无后续关卡可消费),罕见旁路=奖励节点/商店的「专长获取」,商店不出现;属性提升类:奖励节点 + 商店(口径「训练」);资源与机会类:奖励节点 + 商店(**金币除外**);后两类均不出现在 Boss 渠道。形状=「一块独占 + 两块并行」,专长靠打赢、其余靠抽取与购买。**现行实现三渠道共用同一候选池、三类混编**,分工尚未实施,登记于 06-待办清单 BD 分层条目 boundary: 判据走生命周期——**一次冒险内获得、冒险收束即清零的是奖励;跨冒险跟着你走的是魔法道具**。奖励永不进同调位,魔法道具永不进当局随机渠道;与元进度天赋树两层互不代位 data_sources: relics.tres(机制类定义行)/ adventure.tres(属性提升类与资源与机会类的种类配额与值)/ shop.tres(货架取舍) - open_questions: ①资源与机会类的命名待定(候选 资源 / 补给 / 余量),回复是否属该类待确认;②类内异质性已登记——金币与回复是即时兑付、不进持有集不持续生效,与行动点上限/刷新次数生命周期不同;③最终关 Boss 后是否也兑付专长待确认;④确定性渠道一局两次专长 vs 档位阈值(同标签 2 件档一 / 4 件档二)是否匹配,归曲线调参批观察;⑤Boss 击败后是否也出属性提升类与资源与机会类 + open_questions: ①资源与机会类的命名待定(候选 资源 / 补给 / 余量);②类内异质性已登记——金币与回复是即时兑付、不进持有集不持续生效,与行动点上限/刷新次数生命周期不同;③回复的两处待确认——是否属资源与机会类(也可能独立成第四类)、它不进商店是否受「计价物不自售」同一条规则管(回复不是计价物,严格说不适用于该规则);④确定性渠道一局两次专长 vs 档位阈值(同标签 2 件档一 / 4 件档二)是否匹配,归曲线调参批观察 naming_note: 2026-10-05 命名统一 + 两次重构——此前按内部分类被叫成三个名字(规则类称「流派件」、属性类称「数值件」、界面称「本关强化」),v1.0 统一为「特性」,v2.0 改名为「奖励」(因筐里也装金币这类一次性兑付物,"自身提升 vs 持有物"已切不开,判据改由生命周期承担)。代码侧 `feature_*` 词族尚未随之换到 `reward_*`,属临时态,登记于 06-待办清单 referenced_by: [冒险结构, 关卡节点地图, 战斗结算, 行动经济, 地形变异, HUD框架, 魔法道具, 元进度, 数据配置]