③T1: 武器锻造系统设计提案成文(迭代18卡③)——八节框架全齐(武器实体化/攻击类型轴/护甲实体化/成长曲线/经济解锁/满级特效/数值框架/迁移面裁点汇总)+原案三条逐条对照(剑放大/长枪法杖放大且承接休眠attack_type轴/护甲收窄克制反向处+放大基础AC各异处)+F6曲线回应节;17裁点全备选案并列(甲乙丙+淘汰依据+代价),推荐=丙当前武器单选独立轨/叠加共存/魔法甲映射ward/基础AC先行/前缓后陡曲线/就地改造属性锻造柜台/纯金币/特效复用为主+三新参数位;magic_vs_magic死条件三案呈裁(推荐改值复活magic_vs_ward归实装批);配比预设挂起批边界注记5d;数值全provisional量纲锚点归宿M4;纯文档零代码零测试
This commit is contained in:
1 parent
adadf56376
commit
42e9f5d5ae
1 file changed
+311
@@ -0,0 +1,311 @@
|
|||||||
|
# 提案:武器锻造系统(2026-10-07)· 设计提案待裁决稿
|
||||||
|
|
||||||
|
> **这是什么**:把用户的武器锻造想法写成一份可以逐点拍板的设计提案。本文件只做设计,不写代码、不改数据表、不占排期——每一个设计分岔点都把全部备选方案(甲/乙/丙)并排列出,附淘汰理由与各自代价,交用户盘问裁决。裁决通过后,实装另立批次走完整流程。
|
||||||
|
> **想法来源**:用户 2026-10-06 手记(`design/research/playnote.md` 第 14-23 行),已登记 [06-待办清单](../gdd/06-待办清单.md)「武器锻造系统」专条。
|
||||||
|
> **状态**:待用户盘问裁决。文中所有数值只有量纲和参考锚点,全部标注 provisional,终值归 Alpha 收官 M4 数值批统一调整(该批未排期)。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 〇、用户原案逐条对照(提案与原案的关系显式化)
|
||||||
|
|
||||||
|
先引原案原文,再说明本提案对每一条是放大、收窄还是替代。**不静默改案**。
|
||||||
|
|
||||||
|
**原案一(playnote.md:16-17)**:「剑(普通攻击):通过锻造升级可以增加攻击力,升到最高等级时,还可以增加一些额外的效果。」
|
||||||
|
|
||||||
|
→ **提案是放大**。游戏现在已经有"攻击锻造"这个营地消费点(营地花金币,攻击力 +1,可重复买——`game/data/tables/meta.tres:14-18`)。提案把它改造成一条有等级、有成长曲线、有满级特效的"剑"升级路线。方向与原案一致,范围扩大。
|
||||||
|
|
||||||
|
**原案二(playnote.md:19-22)**:「长枪与法杖:后续可以增加长枪、法杖等武器,它们的攻击类型要分别变为"穿刺"和"魔法"。同样在最高等级时,也会有一些特殊的效果。……实现武器之间的差异化。」
|
||||||
|
|
||||||
|
→ **提案是放大,且承接现役结构**。考证发现:主角的攻击类型字段已经登记在数据表里(`hero.tres:11`,取值 normal/pierce/magic),是 2026-09-18 一个前置批次立好的、当前没有数值效果的休眠轴。提案直接唤醒这根轴来承载"武器决定攻击类型",不需要新建任何类型系统。差异化的深度(武器是标签还是实体)是本提案第三节的三个备选案。
|
||||||
|
|
||||||
|
**原案三(playnote.md:23)**:「同样的护甲,我们也可以做成不同的护甲,然后去做升级,一开始我们只有轻甲,提升只会提升我们的 AC 值;但是在最高等级的时候,我们就可以拿到不同的额外效果;解锁魔法甲或者重甲之后,我们得到的基础 AC 值可能是不一样的,也可以通过提升来提高它的 AC 值,最后还有一些不同的额外效果」
|
||||||
|
|
||||||
|
→ **提案收窄一处、放大一处**。收窄:原案读起来像"换甲型立刻改变战斗手感"。考证后必须说清——敌方的攻击现行不带类型、不查克制矩阵(`game/core/damage_controller.gd:19` 单据类型栏允许空串、`damage_controller.gd:513` 空串恒不查矩阵),所以换甲型在"克制"这个维度上暂时没有任何数值效果。甲型差异在现行边界下玩家唯一能立刻感知的就是基础 AC 不同。提案把这一点写成显式边界,而不是含糊承诺。放大:三种甲各自的基础 AC、各自独立的升级路线、各自的满级特效,都是原案的直接承接与展开。
|
||||||
|
|
||||||
|
**成长曲线反馈(playnote.md:5,同日原文)**:「一开始不能让角色的成长系数太高。比如在没经过升级之前,你的成长系数是跟不上关卡怪物难度提升的;但是后续能力解锁之后,成长系数才能匹配得上」
|
||||||
|
|
||||||
|
→ **提案第六节正面回应**:锻造的成长曲线形状与解锁节奏,就是为这条反馈服务的。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 一、现状事实基准(本提案全部论断的依据,2026-10-07 逐条复核)
|
||||||
|
|
||||||
|
以下六条是提案的对齐基准,全部经过代码级复核。引用格式 = 文件:行号。
|
||||||
|
|
||||||
|
| # | 事实 | 出处 |
|
||||||
|
|---|---|---|
|
||||||
|
| F1 | 攻击力提升现有两个来源,都是直接加数字,没有"武器"这个实体:①营地属性锻造(攻击锻造 +1 / 生命锻造 +3 / 护甲锻造 +1,单次价 20 金币、每次涨价 150%)②关卡内商店货架(六行共享池+乘法价格公式,`game/core/config_db.gd:329-334` 现役访问器)。商店里还有一组旧的三行商品定义(`shop.tres:36-57`),只在对照模式承载,属遗留(`game/data/schemas/shop_table.gd:16`、`shop.tres:107-109`) | `meta.tres:7-25`、`shop.tres:68-94` |
|
||||||
|
| F2 | 主角攻击类型轴**已存在、休眠中**:`hero.tres:11` 值为 "normal",字段枚举 {normal, pierce, magic}(`hero_table.gd:13`)。战斗段主角基础攻击按此查克制矩阵。棋盘上的穿刺/魔法直伤奖励件走同一张矩阵但必中全额不掷点(`battle_orchestrator.gd:830` 注、`:846-854`)。**克制矩阵已经是 3×3 九格满格**(`settlement.tres:31-47`:普通/穿刺/魔法 × 轻甲/魔法护甲/重甲)。专长里的三个条件值(pierce_vs_light / magic_vs_heavy / magic_vs_magic)是专长的触发条件值、不是矩阵本体——其中 magic_vs_magic 在现行甲型域下永远为假(见第四节裁点 2c)。敌方装甲类型域 {light, ward, heavy}(`enemy_table.gd:110-113`,缺省 light),实际分布:light×14 行 / heavy×4 行 / ward×1 行(`enemy.tres`;L1 全轻甲、L2 只有 Boss 蛛化卓尔精灵是魔法护甲、L3 灰矮人族四行重甲)。敌方攻击无类型、不查矩阵(`damage_controller.gd:19/:513`)。克制矩阵的定义文档 = [战斗结算](../gdd/systems/战斗循环/战斗结算.md)与[敌人系统](../gdd/systems/战斗循环/敌人系统.md) | 见左 |
|
||||||
|
| F3 | 主角护甲现状:AC(护甲等级,掷点减伤判定用)单值现役生效(`hero.tres:9` 值 10,判定消费 `battle_orchestrator.gd:172`);**甲型结构位已在册休眠**(`hero.tres:10` armor_type="light",`hero_table.gd:12`)——休眠原因是敌方攻击不查矩阵,属结构性而非数值性(《敌人系统》主角字段表注记)。甲型域三值 = {light, ward, heavy}。AC 现有提升渠道 = 营地护甲锻造 +1 / 商店货架护甲件 / 局内奇物属性件 | 见左 |
|
||||||
|
| F4 | 局内属性件:奇物三分类里的"属性值提升"分类 = 生命上限 / AC / 攻击三轴,进冒险加算区,关间不清零([奇物](../gdd/systems/冒险循环/奇物.md) §1.2,分类封闭:"只有这三项,多一项就要走文档修订")。它与 F1 的营地/商店构成"账号层永久 + 局内单冒险"两层结构,现役并存 | `design/gdd/systems/冒险循环/奇物.md` |
|
||||||
|
| F5 | 相邻系统:营地三个柜台(属性锻造 / 道具工坊 / 奖励格图鉴,[元进度](../gdd/systems/跨局循环/元进度.md));商店经济两个价格参数 provisional 在册;效果引擎已落地——效果类型闭集 24 种(`effect_engine.gd:31-35`,源码注记"23"系笔误),武器满级特效优先复用现役效果类型,需要新效果类型的部分=实装批的代码面 | `design/gdd/systems/跨局循环/元进度.md` |
|
||||||
|
| F6 | 成长曲线反馈原文见第〇节 | `playnote.md:5` |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 二、范围与不做什么(红线)
|
||||||
|
|
||||||
|
1. **纯文档**:零代码、零数据表改动、零数值投值。本提案全部表格值只有量纲与锚点。
|
||||||
|
2. **不占排期**:提案裁决通过后实装另立批次,本提案不在路线图预占实装卡。
|
||||||
|
3. **不动现役系统**:第十节"迁移面"只描述改造方案,不执行。
|
||||||
|
4. **白话**:全文按文档规范用语纪律写作,不自造机制名词;武器/甲的正式名字本身是裁点之一,随裁决定名后才登记术语表。
|
||||||
|
5. **不与奇物既有裁决冲突**:凡涉及属性值提升分类或获取渠道的地方,显式引用《奇物》现行口径并说明关系(见第五节末)。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 三、武器实体化程度(本提案最核心的裁点)
|
||||||
|
|
||||||
|
**这一节回答的问题**:"武器"在游戏里到底是什么东西?是攻击力数字旁边的一个标签,还是玩家能看见、能持有、能更换的一件装备?三个备选案按实装量从小到大排列,**每一案都回答两个通用必答题**(携带几把、什么时候能换)。
|
||||||
|
|
||||||
|
### 案甲:纯升级路线——"武器"只是攻击锻造这条路线的新名字
|
||||||
|
|
||||||
|
**做法**:营地攻击锻造改名为"武器锻造",从"花钱买 +1"改成一条等级路线(1 级到上限,每级攻击力按成长曲线上涨);玩家在营地随时选择武器类型(剑=普通 / 长枪=穿刺 / 法杖=魔法),类型写进现役的 attack_type 字段;到达满级解锁该类型的专属特效。
|
||||||
|
|
||||||
|
- 与现有系统的关系:直接吸收现役攻击锻造行(`meta.tres:14-18`);与局内奇物属性件并存(两层现役结构不变);商店货架不动。
|
||||||
|
- 携带数:单持——它本质就是一个字段,一次只有一种类型在身。
|
||||||
|
- 换械时机:营地内任意时刻可换,零成本。
|
||||||
|
|
||||||
|
**优点**:实装量三案最小(一条等级数据+一个字段切换+特效挂点);与现役"营地永久强化换攻击类型 = 改字段"的既有设计注记逐字同源(`hero.tres:25-27` 注记)。
|
||||||
|
|
||||||
|
**缺点(为什么不够)**:"武器"没有实体感——玩家看到的只是数字和伤害类型的区别。原案的核心诉求是"实现武器之间的差异化"(playnote.md:22),甲案给的是"一条路线+三个标签",差异化感知最弱。另外满级特效只能挂在类型上:换类型=特效跟着换,三件武器不可能各自满级并存。
|
||||||
|
|
||||||
|
### 案乙:武器槽实体——武器是一件装备
|
||||||
|
|
||||||
|
**做法**:新增"武器"装备位。武器是有编号、有等级、有类型、有特效的实体;玩家持有武器库、装备其中一把;每把武器的等级独立。
|
||||||
|
|
||||||
|
- 与现有系统的关系:现役攻击锻造行改造为"初始剑"的等级路线;新增一种实体类型——存档结构、营地界面、装备逻辑全部新做;还要新增一段说明:武器不属于奇物三分类的任何一类(它不是单局获得的奇物,是跨局装备)。
|
||||||
|
- 携带数:单持(一生主械);若做多持=双武器轮换,代价见通用必答。
|
||||||
|
- 换械时机:营地内换;战斗中禁换(理由见通用必答)。
|
||||||
|
|
||||||
|
**优点**:差异化感知最强;满级特效有清晰的承载主体;未来扩展面宽(武器稀有度、词条、分解重铸都有地方挂)。
|
||||||
|
|
||||||
|
**缺点(为什么不推荐现在做)**:实装量三案最大——本项目目前没有任何"装备"概念,为三把武器单开一套实体系统(库存、存档域、装备界面),投入超出"武器差异化"这个原案诉求所需的复杂度;且这个决定不易回退(实体一旦进存档,删实体=存档迁移)。若未来确需装备系统,丙案是它的可逆前站。
|
||||||
|
|
||||||
|
### 案丙(推荐):折中——"当前武器"单选 + 每件武器一条独立成长路线
|
||||||
|
|
||||||
|
**做法**:营地武器锻造柜台呈现三件武器(剑/长枪/法杖)。每件武器有自己的等级(1 到上限)、自己的攻击成长曲线、自己的满级特效。玩家指定其中一件为"当前武器"出场——类型由武器决定(选长枪=穿刺),写现役 attack_type 字段。三件武器的等级各自独立保留,换"当前武器"不丢任何进度。
|
||||||
|
|
||||||
|
- 与现有系统的关系:现役攻击锻造行 = 剑路线的前身(吸收改造,见第十节迁移面);存档面 = 三行等级数字 + 一个当前选中标记,**没有实体列表、没有库存**;生命锻造行的处置见第七节裁点 5a。
|
||||||
|
- 携带数:单持(同一时刻只有一件武器出场)。
|
||||||
|
- 换械时机:营地内随时换,切换不收费。理由:等级都是玩家花资源练出来的,切换只是决定"今天带谁出门",二次收费会惩罚尝试性构筑,与成长曲线反馈"能力解锁后才能匹配关卡难度"的诉求相逆(玩家需要低成本试错来找到当前关卡匹配的武器)。
|
||||||
|
|
||||||
|
**优点**:差异化感知接近乙案(三件武器各有名字、等级、特效,玩家分得清);实装量中等(无库存管理面);数据面是现役 meta 表锻造行族的直接扩形(加列,不是新表);"选哪把武器"天然承载类型切换,attack_type 轴的营地换型口径原样生效。
|
||||||
|
|
||||||
|
**缺点**:比甲案多两组等级数据与界面;武器库在界面上要克制呈现(三张卡,不是背包)。
|
||||||
|
|
||||||
|
**为什么推荐丙**:它在"差异化感知"与"实装复杂度"之间取中点,且**两向可逆**——砍掉独立等级就退化成甲案,加上库存实体就升级成乙案。裁决者可以先取丙,日后按玩家反馈滑向两侧,不需要推倒重来。
|
||||||
|
|
||||||
|
### 通用必答一:携带数——单持还是多持?
|
||||||
|
|
||||||
|
**呈交:单持**(三案同答)。多持(同时带两把、战斗内轮换)的淘汰依据:
|
||||||
|
1. 收益小——多武器轮换的战术价值是"面对不同甲型敌人换着打",但这个价值棋盘上的穿刺弹/魔法矢直伤件已经承载(`battle_orchestrator.gd:846-854`,必中全额、自己查矩阵行),轮换武器的增量收益有限。
|
||||||
|
2. 代价大——战斗内换武器要新开一套动作语义(算不算行动?耗不耗行动点?战斗结算的流程与伤害单据九栏都没有"中途改类型"的位置,`design/gdd/systems/战斗循环/战斗结算.md` 战斗段一节),牵动行动经济。
|
||||||
|
|
||||||
|
### 通用必答二:换械时机——营地还是战斗中?
|
||||||
|
|
||||||
|
**呈交:营地内可换,战斗中禁换**(三案同答)。依据:战斗段结算次序固定(主角先手→逐敌还手→地图账),伤害单据的类型在开单时声明、管线内不变;战斗中换械=给结算管线新开一个"类型可变"维度,收益(每场战斗微调克制)不成比例于管线改动与测试面。这个边界与"克制应对从局内攒弹药改为冒险前配型"的既有定稿方向一致(`战斗结算.md`:原"挖掘攒充能换攻击分量"的弹药系统 2026-09-19 已整体退役,克制策略归冒险前配置)。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 四、攻击类型轴关系
|
||||||
|
|
||||||
|
**这一节回答的问题**:武器带来的攻击类型,和棋盘上现存的穿刺/魔法直伤奖励件,是什么关系?
|
||||||
|
|
||||||
|
### 现状(复核结论)
|
||||||
|
|
||||||
|
游戏里现在有两处"类型":①主角基础攻击的类型(attack_type 字段,休眠中,F2)——决定主角先手攻击查克制矩阵的哪一行;②棋盘格面资源的类型(穿刺弹/魔法矢等奖励件)——必中全额、自己查矩阵行。两处消费**同一张 3×3 克制矩阵**(`settlement.tres:31-47`,九格满格,结构冻结)。
|
||||||
|
|
||||||
|
### 裁点 2a:共存方式
|
||||||
|
|
||||||
|
- **甲=叠加(推荐)**:武器类型只改主角基础攻击分量查矩阵的行;格面直伤件照旧独立。两根轴互不干涉、共用一张矩阵。零新机制。
|
||||||
|
- **乙=替代**:武器类型接管一切类型化伤害(选法杖后穿刺弹也按魔法算)。**淘汰依据**:格面资源是地图侧的独立九型字典(定义文档 [地图战斗资源](../gdd/systems/战斗循环/地图战斗资源.md)),把它的类型语义绑到武器上=两个系统强耦合;且没换法杖的玩家,魔法矢这件奖励就没有存在意义了——砍掉内容池换不来任何设计收益。
|
||||||
|
- **丙=互斥**:选了某武器,相同类型的格面件不再出现(法杖玩家抽不到魔法矢)。**淘汰依据**:没有设计依据的池子收窄。同类型叠加是构筑加深不是冗余——魔法武器+魔法矢=魔法构筑的一致性,正是差异化的价值所在。
|
||||||
|
|
||||||
|
**呈交甲,并要求把一句防混述声明写进 [战斗结算](../gdd/systems/战斗循环/战斗结算.md) 定义文档**:「武器类型(主角基础攻击的属性)与格面资源类型(棋盘直伤件的属性)是两根独立参数,只共用同一张克制矩阵。」这与战斗结算既有纪律同源(攻击类型是伤害分量的固有属性,定义里不含任何棋盘来源)。
|
||||||
|
|
||||||
|
### 裁点 2b:要不要加第四种类型或第四种甲型?
|
||||||
|
|
||||||
|
- **甲=不加(推荐)**:矩阵九格结构冻结是既有条款(`战斗结算.md` 参数表"键集 3×3 满格结构冻结")。武器三型正好映射现有三行,矩阵零改动。
|
||||||
|
- **乙=加第四甲型**(若原案的"魔法甲"不映射现有 ward):触发矩阵扩成 4×3、战斗结算结构冻结条款修订、敌方甲型数据面重配、专长条件值族扩充——为一型甲付出全链成本。**淘汰依据**见裁点 3a:现役 ward 的中文正名就是"魔法护甲",原案"魔法甲"可直接对号,第四型没有可感知的差异点。
|
||||||
|
|
||||||
|
### 裁点 2c:专长联动与死条件清理
|
||||||
|
|
||||||
|
**专长会被武器选择影响**:专长(改规则的奇物件)里有一族"克制面强化"件,条件是"当前对局出现某某对某某的克制 matchup"。武器锻造唤醒类型轴后,玩家选什么武器会改变主角攻击的 matchup 行——选长枪会激活穿刺系专长的价值。这是设计意图内的联动,不是缺陷。
|
||||||
|
|
||||||
|
**死条件现状**:`feats.tres:29-31` 有一件专长条件值为 magic_vs_magic(魔法打魔法甲)。现行甲型域是 {light, ward, heavy},没有"magic"这个甲型,所以对局中的 matchup 字符串永远不会是 magic_vs_magic——**这件专长在现行数据下永远无法触发,等于一张废卡**。三个处理方案:
|
||||||
|
|
||||||
|
- **甲=删行**(随实装批执行):先例=2026-10-06 内容数据驱动批删除旧挂点枚举(06-待办清单在册)。代价:若日后甲域真的扩第四型,要重新加回。
|
||||||
|
- **乙=保留+文档注记**:零代码。代价:一张永假废卡继续占专长池配额,玩家视角是坏体验。
|
||||||
|
- **丙=改值复活(推荐,归实装批执行)**:把条件值改成活条件——候选 magic_vs_ward(魔法打魔法护甲;现役 L2 Boss 蛛化卓尔精灵正是 ward,`enemy.tres`),一行 value 字段的改动把废卡变成"Boss 战专长"。代价:改专长行为=行为变更,必须随实装批一起做、配行为测试;且本提案阶段不改值(纯文档边界)。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 五、护甲实体化
|
||||||
|
|
||||||
|
### 现状(复核结论)
|
||||||
|
|
||||||
|
AC(护甲等级)单值现役生效(`hero.tres:9`=10;敌方攻击掷点对它的减伤判定在 `battle_orchestrator.gd:172` 合流入参)。甲型结构位已登记休眠(`hero.tres:10`,域 {light, ward, heavy})。休眠原因=敌方攻击不带类型、不查矩阵,是结构性的(《敌人系统》主角字段表注记:"轴生效待敌方技能攻击类型批"——这个批次在敌方系统侧有登记方向,未排期)。
|
||||||
|
|
||||||
|
### 裁点 3a:甲域定名映射——"魔法甲"是什么?
|
||||||
|
|
||||||
|
- **甲=魔法甲就是 ward(推荐)**:现役甲域第三型 ward 的中文正名就是"魔法护甲"(《敌人系统》敌方字段表:甲域 {轻甲, 魔法护甲, 重甲})。用户原案的"魔法甲"直接对号入座。零扩域、零扩矩阵、零数据面改动。
|
||||||
|
- **乙=新造第四甲域**:"魔法甲"作为独立于 ward 的新甲型。触发裁点 2b 乙案的全部成本(矩阵 4×3、结构冻结条款修订、敌方数据面、专长条件值族)。**淘汰依据**:"魔法护甲"和"魔法甲"在玩家语感上是同一个东西,第四型给不出可感知的差异点。
|
||||||
|
|
||||||
|
### 裁点 3b:甲型差异的可感面(对原案的显式收窄处)
|
||||||
|
|
||||||
|
**必须诚实写清的边界**:敌方攻击现行无类型、不查矩阵(`damage_controller.gd:19/:513`)。所以在现行边界下,换甲型在"克制"维度上没有任何数值效果——"魔法甲怕穿刺打"这类克制反向要等敌方攻击带类型的批次才生效。两个处理方案:
|
||||||
|
|
||||||
|
- **甲=现在就落甲型结构(推荐)**:甲型差异以"基础 AC 各异"为现行唯一可感轴(这正是原案明说的诉求),克制反向作为前瞻结构位随轴休眠。理由:①基础 AC 差异本身就有构筑价值(重甲硬、魔法甲便宜灵活之类的取舍);②甲型位是现役代码已留好的扩展缝,现在立结构、敌方攻击类型批到来时零结构改动;③不需要动矩阵就能完整兑现原案。
|
||||||
|
- **乙=等敌方攻击类型批一起落**:甲型推迟到克制反向能生效时再上。**淘汰依据**:无限期推迟原案明说的"基础 AC 各异"诉求;且把两件独立的事(甲型结构、敌方攻击类型)捆绑排期,违背"实装批另行立项"的本批边界。
|
||||||
|
|
||||||
|
**基础 AC 锚点(provisional)**:轻甲 =10(现役主角值,不动);重甲 =12(+2);魔法甲 =9(−1)。量纲依据:现役掷点折扣档为缺口 1-3 打七五折(`settlement.tres:50-51`),每 1 点 AC 的期望减伤约 3.75%量级(`settlement.tres:74` EV 复算锚:AC10 期望减免 21.25%、AC11 25%)。终值全部归 Alpha 收官 M4 数值批。
|
||||||
|
|
||||||
|
### 裁点 3c:护甲的升级路线结构
|
||||||
|
|
||||||
|
- **甲=每型甲一条独立等级路线(推荐)**:轻甲路线=现役护甲锻造行改造(每级 AC +1);解锁重甲/魔法甲后各自从 1 级练起、各自升级、各自满级特效;"当前甲"单选与"当前武器"单选同构。与原案"一开始只有轻甲(只提 AC)→解锁后基础 AC 各异→各自可续升→各带满级效果"逐句对齐。
|
||||||
|
- **乙=单一 AC 路线+甲型当门槛**:AC 一条轨,甲型只是轨上的里程碑(练到 3 级才能换重甲)。**淘汰依据**:三型基础 AC 不同,一条数字轨表达不了三型各异的基础值;原案明说"解锁之后基础 AC 值可能是不一样的"。
|
||||||
|
|
||||||
|
### 与《奇物》现行口径的显式关系(红线第 5 条)
|
||||||
|
|
||||||
|
《奇物》现行口径:属性值提升分类 = 生命上限/AC/攻击三轴**封闭**("只有这三项,多一项就要走文档修订",§1.2);获取渠道 = 局内(奖励节点/商店训练/共享池),关间不清零;渠道开关表已有用户定案。
|
||||||
|
|
||||||
|
**本提案的关系 = 分层并存,互不侵入**:武器/护甲锻造动的是**账号层基础值**(营地永久强化,冒险开始时经参数面传给战斗——《元进度》执行口径:开局按存档内永久强化状态算好覆盖参数逐字段传入);奇物属性件动的是**单次冒险加算区**(关间不清零、冒险结束清零——[冒险结构](../gdd/systems/冒险循环/冒险结构.md) 统一冒险加算区四轴)。本提案不扩奇物三轴、不动渠道开关表、不往局内池加任何东西——武器锻造不是奇物,是永久强化的内容改造。入战 AC 的三层语义清晰可加:甲型基础 AC + 营地甲路线等级加值 + 局内加算区累加。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 六、成长曲线定位(回应 F6)
|
||||||
|
|
||||||
|
用户反馈原文(playnote.md:5):前期成长系数不能太高——没升级前跟不上怪物难度提升,能力解锁后才能匹配。武器锻造恰恰是执行这条曲线诉求的最佳载体,因为它同时握着两样东西:**数字成长的速率**(每级加多少)和**能力解锁的节奏**(什么时候拿到新武器/新甲/满级特效)。
|
||||||
|
|
||||||
|
### 裁点 4a:成长曲线形状
|
||||||
|
|
||||||
|
- **甲=前缓后陡(推荐)**:低等级每级攻击增量小(+0 或 +1 量级),高等级每级 +1 或 +2 量级。前期刻意压数字——玩家靠挖掘技巧过关(这正是 F6 要求的"没升级前跟不上",是特性不是缺陷);能力解锁(新武器、满级特效)成为曲线的台阶。
|
||||||
|
- **乙=线性每级 +1**:现役锻造就是线性。**淘汰依据**:与 F6 反馈零呼应——数字匀速涨,"能力解锁"的节奏感全靠特效单腿支撑,曲线本身不参与。
|
||||||
|
- **丙=阶梯解锁制**:平时每级 +0,每两级跳 +2。**淘汰依据**:数字体感跳跃,中间等级像白升级;provisional 调参空间最小(只有跳变点可调)。
|
||||||
|
|
||||||
|
**呈交甲,但只锁形状方向不锁数值**——曲线参数全体 provisional 归 M4 数值批。
|
||||||
|
|
||||||
|
### 裁点 4b:解锁节奏从哪来
|
||||||
|
|
||||||
|
- **甲=锻造内自闭环(推荐)**:新武器/新甲型的解锁条件在锻造系统内部(练满前一档或花一次性解锁价,见第七节);满级特效是每条路线的终点奖励。这是原案的精神("最高等级时拿到额外效果""最高等级时解锁重甲/魔法甲")。
|
||||||
|
- **乙=绑关卡进度**:L1 通关解锁长枪之类。**淘汰依据**:①把永久强化做成关卡奖励,与"营地 = 消费钥石/金币的成长枢纽"的现役定位(《元进度》营地定义)冲突;②首通关卡前玩家零武器选择,第一局体验被绑死在剑上——而第一局恰恰是教学局。
|
||||||
|
|
||||||
|
### 裁点 4c:与难度曲线的匹配义务(显式登记,不在本批执行)
|
||||||
|
|
||||||
|
锻造改的是账号层成长,会直接平移全部关卡的通关率——这是数值敏感变更。**显式登记义务**:实装批必须带改前/改后同随机种子配对读数验证难度影响;统一调整归 Alpha 收官 M4 数值批(未排期)。本提案零数值投值、零模拟跑批(纯文档批零测试纪律)。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 七、经济与解锁
|
||||||
|
|
||||||
|
### 裁点 5a:柜台承载——武器锻造放哪?
|
||||||
|
|
||||||
|
现状:营地三个柜台 = 属性锻造(生命/攻击/护甲三档直购)/ 道具工坊 / 奖励格图鉴(《元进度》营地三柜台节)。
|
||||||
|
|
||||||
|
- **甲=就地改造属性锻造柜台(推荐)**:柜台改名"武器与护甲锻造"——攻击行改造为武器锻造区(三件武器路线),护甲行改造为护甲锻造区(三型甲路线),**生命行原样保留**(原案没有覆盖生命,保留是唯一不失义的处理)。三柜台结构不动,营地界面零重排。
|
||||||
|
- **乙=新开第四柜台**:武器锻造独立成柜,属性锻造柜台的攻击/护甲两行退役。**淘汰依据**:属性锻造被拆剩一行生命,柜台语义残废;营地从三柜台变四柜台=界面结构改动;"锻造"两个字同时出现在两个柜台(外加商店货架的"攻击锻升","锻"字已有三处)——词汇更乱。
|
||||||
|
- **丙=塞进道具工坊**:**淘汰依据**:工坊的消费货币是通关次数/钥石(`meta.tres:39-88`),与武器锻造的金币定价体系不同源;工坊职责已有明确归属(秘宝解锁与同调装配,《元进度》形态沿革节),塞武器=职责混装。
|
||||||
|
|
||||||
|
### 裁点 5b:等级上限与定价结构
|
||||||
|
|
||||||
|
- **等级上限**:每件武器/每型甲各自封顶(provisional 锚点 = 5 级量级)。量纲理由:满级特效要"值得等",级数太多会稀释解锁节奏(与 F6 冲突)。终值归 M4。
|
||||||
|
- **定价结构**:沿用现役几何递增——每级价格 = 基础价 × 150%^(已购级数)(现役参数:单次 20 金币、每级涨 150%,`meta.tres:11-24`;《元进度》定价曲线几何递增是已拍板条款)。甲型解锁 = 一次性解锁价(量纲 ≈ 中段几级锻造的花费,provisional)。全部终值归 M4。
|
||||||
|
- **货币裁点**:
|
||||||
|
- **甲=纯金币(推荐)**:与现役属性锻造同币——原案语义是"攻击力提升改造",即同一笔钱换个花法,不是新经济。
|
||||||
|
- **乙=金币+钥石双币**(解锁新武器/甲用钥石):钥石现役 = Boss 击杀掉落、用于直购强化(`meta.tres:26-38`)。**淘汰依据**:解锁节奏被 Boss 掉落概率绑死,与裁点 4b"解锁在锻造内自闭环"矛盾;双币定价面翻倍。
|
||||||
|
- **丙=纯钥石**:**淘汰依据**:与"攻击力提升改造"直接相逆(现役攻击锻造吃金币),等于换了一个系统而不是改造它。
|
||||||
|
|
||||||
|
### 裁点 5c:材料经济——金币之外要不要材料/掉落物?
|
||||||
|
|
||||||
|
**现状钩子**:效果引擎有效果类型 grant_material(`effect_engine.gd:32`;`feats.tres` 四件专长在用,形态=局内材料计数器,如"雷区图谱")。注意:这个钩子现役是**局内**计数器,不是账号层库存——提案若引入账号层锻造材料,是全新经济面(存档域、获取渠道、囤积规则全要新建)。
|
||||||
|
|
||||||
|
- **甲=纯金币(推荐)**:零新经济面。原案全文只字未提材料;武器差异化的价值轴是类型与特效,不是采集刷料。
|
||||||
|
- **乙=金币+材料**:敌杀掉落锻造材料,高阶解锁或满级特效需要材料(grant_material 账号层化)。**代价(不淘汰,并列呈交)**:新存档域+新掉落配置+囤积/回收规则;且"局内材料计数器"与"账号层锻造材料"同名易混,呈现层必须区分两个概念。
|
||||||
|
- **丙=纯材料**:金币买不了武器,只有材料能锻。**淘汰依据**:与"攻击力提升改造"直接相逆(把现有金币消费点脱钩);双货币双定价体系,实装量三案最大。
|
||||||
|
|
||||||
|
### 裁点 5d:配比预设挂起批的边界注记(强制条目)
|
||||||
|
|
||||||
|
冒险前资源配比预设批已于 2026-10-05 用户令挂起冻结(06-待办清单在册:"重启须用户另行发令",八项裁决与任务书全部冻结保留)。**边界声明**:该批的预算点数、容量柜台、克制注记三面都会直接受"武器类型轴"与"柜台结构"变更影响——本提案**不预设该批的重启口径、不占用其任何冻结裁决、不改其冻结文本**。若提案裁决通过且实装落地后该批重启,其任务书须显式核对两处交汇面:①预算包络是否把武器类型计入克制注;②容量柜台与武器锻造柜台(同在营地)的资源竞争关系。同理,裁点 2c 若裁"改值复活 magic_vs_ward",也只登记不预设——玩家可控类型增多会改变配比博弈面,该影响归配比批重启时统一核对。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 八、满级特效清单框架
|
||||||
|
|
||||||
|
**原则**:每件武器/每型甲满级各 1-2 条特效;逐条标注数据驱动兼容性——**复用现役效果引擎效果类型(24 种闭集,`effect_engine.gd:31-35`)= 实装批零新效果代码**;需要新效果类型或新参数位的 = 实装批代码面,显式标出。
|
||||||
|
|
||||||
|
下表是**框架示意**(每格给量纲方向),不是承诺清单——终选清单与数值归实装批任务书+M4 数值批:
|
||||||
|
|
||||||
|
### 裁点 6:特效清单的实现深度(三案并列)
|
||||||
|
|
||||||
|
- **甲=全复用现役效果类型**:只从零代码候选里选(破甲/先手连击/开局魔法矢/反震/护盾),剑与轻甲改用复用型特效或减配。代价:清单表现力受限——"暴击面扩大""折扣档放缓"这类现役表上恒定的参数做不进特效。
|
||||||
|
- **乙=复用为主+三条新参数位(推荐)**:上面框架表的完整形态——四条零代码、三条需新参数位(暴击面/折扣档/护盾量进战斗开场参数),后者是实装批的小改代码面(改表值常量读法,不加效果类型词)。代价:实装批多三处代码改动与对应测试。
|
||||||
|
- **丙=引入新效果类型**:为特效往引擎效果类型闭集加新词。**淘汰依据**:效果类型闭集是高代价变更面(加载校验、文档词表、回归测试三处连带),本框架所有候选特效都能用现有词表或参数位表达,无一真正需要新词——为表达便利付引擎级代价不成比例。
|
||||||
|
|
||||||
|
| 件 | 满级特效候选(量纲方向) | 数据驱动兼容性 |
|
||||||
|
|---|---|---|
|
||||||
|
| 剑 | 破甲:命中重甲时克制修正额外 +1 点量级 | 复用现役——modify_ticket 效果类型+matchup 条件算子均已在册(`effect_engine.gd:32/:46`),零新代码面 |
|
||||||
|
| 剑(第二条) | 暴击面扩大:暴击骰面 −1 量级 | **需新参数位**——暴击面现役是表上恒定值(`settlement.tres:52`),武器级可变=实装批小改(标红) |
|
||||||
|
| 长枪 | 先手连击:战斗开场追加一次普攻量级的攻击 | 复用现役——attack_segments 效果类型在册(`effect_engine.gd:32`),零新代码面 |
|
||||||
|
| 法杖 | 开局魔法矢:每场战斗开场自动对最前敌人放一次魔法直伤(必中全额量级) | 复用现役——spawn_spell 效果类型在册,零新代码面(次数/回合数 provisional) |
|
||||||
|
| 轻甲 | 灵巧:掷点折扣临界档再缓一档量级 | **需新参数位**——折扣档现役读表恒定(`settlement.tres:51`),标红 |
|
||||||
|
| 重甲 | 反震:被命中时对攻击者反贴 1 点量级伤害 | 复用现役——spike 效果类型在册,零新代码面 |
|
||||||
|
| 魔法甲 | 护盾:每场战斗开场自带若干层护盾(X 层量级) | 复用现役——shield 效果类型在册;护盾层数进战斗开场参数=实装批桥接面(标黄) |
|
||||||
|
|
||||||
|
**呈交立场**:特效清单走"复用为主"——上表七条中四条零新代码、三条需新参数位/桥接(标红/标黄)。需要新**效果类型**(往引擎闭集加词)的方案一件都没有:引擎闭集动词表是高代价变更(校验面+文档面+回归面),本框架刻意避开。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 九、数值框架(全部 provisional)
|
||||||
|
|
||||||
|
**总承诺**:本提案零数值投值。下表全部是量纲与锚点,终值统一归 Alpha 收官 M4 数值批(未排期)。实装批立项前不动任何数据表行值。
|
||||||
|
|
||||||
|
| 项 | 量纲/锚点 | 锚点出处 | 归宿 |
|
||||||
|
|---|---|---|---|
|
||||||
|
| 武器成长曲线 | 前缓后陡:低级每级攻击 +0/+1 量级,高级 +1/+2 量级 | 现役攻击锻造 +1/次(`meta.tres:16-17`);主角基础攻击 =2(`hero.tres:8`) | M4 |
|
||||||
|
| 甲型基础 AC | 轻 10(现役不动)/ 重 +2 / 魔法甲 −1 | 主角 AC=10(`hero.tres:9`);每 1 AC ≈ 3.75% 期望减伤(`settlement.tres:74` EV 锚) | M4 |
|
||||||
|
| 等级上限 | 每件/每型各自 5 级量级 | 满级特效节奏需要(F6) | M4 |
|
||||||
|
| 升级定价 | 基础价 20 金币 × 150%^(级数),几何递增 | 现役参数沿用(`meta.tres:11-24`、《元进度》几何递增条款) | M4 |
|
||||||
|
| 甲型解锁价 | ≈ 中段几级锻造花费的一次性价 | 同上量纲系 | M4 |
|
||||||
|
| 满级特效值 | 各 +1 点/若干层量级,逐条配 | 第八节框架表 | M4 |
|
||||||
|
| 数值验证义务 | 实装批改前/改后同种子配对读数;统一调整归 M4 | 裁点 4c | M4 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 十、迁移面与裁点汇总
|
||||||
|
|
||||||
|
### 迁移面(只描述方案,不执行——红线第 3 条)
|
||||||
|
|
||||||
|
1. **`meta.tres` forge_products(`meta.tres:7-25`)**:攻击行 → 武器路线改造(吸收,随裁点 5a 裁决改名);护甲行 → 护甲路线改造;生命行保留原样。同表 boss_keystone / workshop_items / conversion / attune_refresh_upgrade 四行族零触碰。
|
||||||
|
2. **`shop.tres` pool_shelf 现役六行(`shop.tres:68-92`)**:局内货架的"攻击锻升/护甲锻升"与营地武器锻造是两层并存(局内层进冒险加算区、账号层是永久强化——现役分工:《冒险结构》统一冒险加算区节、《元进度》执行口径节)。**提案不动行集**;唯一迁移裁点 = 现名是否去"锻"字防混淆(甲=保留现名零改动 / 乙=改"训练·攻击"式中性名——呈现面文字变更,归实装批呈现细节,随裁决)。
|
||||||
|
3. **`shop.tres` products 行族(`shop.tres:36-57`)**:**遗留代码路径**(只在对照模式承载,`shop_table.gd:16`、`shop.tres:107-109`)。本提案零触碰;它的退役是既有在册义务(归对照锚换代批),不是本提案新增。
|
||||||
|
4. **`hero.tres` 两根轴(`hero.tres:10-11`)**:唤醒语义 = 营地选中的武器/甲型写轴。这与 2026-09-18 营地扩展前置批的既有设计注记(`hero.tres:21-27`:"营地永久强化换攻击类型 = 改此字段")逐字同源——**不是新设计,是既有预留位的启用**。
|
||||||
|
5. **`feats.tres` magic_vs_magic 死行(`feats.tres:29-31`)**:三案随裁点 2c 裁决(删/注记/改值复活),执行归实装批。
|
||||||
|
6. **术语登记**:武器/甲型的正式名("魔法甲"="魔法护甲"=ward 之类的定名)随裁决定案后,实装批随批登记 `design/registry/entities.yaml` 术语条目。本提案阶段零登记(名字未定)。
|
||||||
|
|
||||||
|
### 全裁点一览表(供盘问轮逐点拍板)
|
||||||
|
|
||||||
|
| # | 裁点 | 甲 | 乙 | 丙 | 提案推荐 |
|
||||||
|
|---|---|---|---|---|---|
|
||||||
|
| 1 | 武器实体化程度 | 纯升级路线(一条轨+类型标签) | 武器槽实体(装备+库存) | 当前武器单选+每件独立路线 | **丙** |
|
||||||
|
| 1a | 携带数 | 单持 | 多持(轮换) | — | 单持 |
|
||||||
|
| 1b | 换械时机 | 营地内可换 | 战斗中可换 | — | 营地内 |
|
||||||
|
| 1c | 换械是否收费 | 免费 | 小额收费 | — | 免费 |
|
||||||
|
| 2a | 类型轴共存 | 叠加(两根独立轴共用矩阵) | 替代(武器类型接管) | 互斥(同类型件不出现) | 叠加 |
|
||||||
|
| 2b | 矩阵扩维 | 不扩(九格冻结) | 加第四甲型 | — | 不扩 |
|
||||||
|
| 2c | 死条件 magic_vs_magic | 删行 | 保留+注记 | 改值复活(magic_vs_ward) | 丙(执行归实装批) |
|
||||||
|
| 3a | 甲域定名 | 魔法甲=ward(现役域对号) | 新造第四甲域 | — | 甲 |
|
||||||
|
| 3b | 甲型可感面 | 基础 AC 差异先行,克制反向留结构位 | 等敌方攻击类型批一起落 | — | 甲 |
|
||||||
|
| 3c | 护甲升级结构 | 每型独立路线 | 单轨+甲型当门槛 | — | 甲 |
|
||||||
|
| 4a | 成长曲线形状 | 前缓后陡 | 线性 | 阶梯 | 甲(只锁方向,值归 M4) |
|
||||||
|
| 4b | 解锁节奏 | 锻造内自闭环 | 绑关卡进度 | — | 甲 |
|
||||||
|
| 5a | 柜台承载 | 就地改造属性锻造柜台 | 新开第四柜台 | 塞进道具工坊 | 甲 |
|
||||||
|
| 5b-1 | 货币 | 纯金币 | 金币+钥石双币 | 纯钥石 | 纯金币 |
|
||||||
|
| 5c | 材料经济 | 纯金币 | 金币+材料 | 纯材料 | 纯金币 |
|
||||||
|
| 6 | 满级特效 | 全复用现役效果类型 | 含新参数位(三条标红) | 引入新效果类型 | 乙(复用为主,零新效果类型) |
|
||||||
|
| 8a | 货架现名 | 保留"攻击锻升"现名 | 改"训练·攻击"式中性名 | — | 随实装批呈现细节定 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 附:本提案的裁决方式
|
||||||
|
|
||||||
|
每个裁点独立拍板,互不绑死(推荐列只是提案立场,不是打包方案)。裁决结果落 06-待办清单「武器锻造系统」专条与路线图卡③行;裁决通过后实装批另行立项,以本提案+裁决记录为任务书输入。
|
||||||
Reference in new issue
Block a user