Files
gplan-2/game/data/tables/feats.tres
T
DKChan 03c4b4c933 docs: 文档正确性审查批+去毒+命名统一+天赋树成文等十一批落籍(2026-10-09 用户令)
一、里程碑语义立规:M3=Alpha 完整实现/M4=Beta 完整实现,未明令关闭 M3 前只排 M3 需求(roadmap M-4 节头立规注+M-3 节头口径指针+迭代 21+ 行注+06 倍率差条注);迭代 20/21/22 规划冻结(roadmap 迭代 20 行注——先解决眼前问题,重启=用户直接发令)
二、文档正确性审查批三波:全 GDD 29 份过审——状态记录按代码证据订正/里程碑删前缀(M-x+迭代N→迭代N,裸 M-4→Beta 阶段(未排期))/退役词退役件当现役清零/在役旧实现节加隔离横幅;重件=秘宝.md v1.7 老正文深层清算(横幅重写消「过渡形态已退役」误读/沿革节换代/六件旧件登记摘除/验收与 charges 矛盾订正)+奇物 v3.8+冒险结构 v0.18+关卡节点地图 v1.7+图生成 v0.7+难度曲线与Boss v0.26+战斗结算 v0.27+敌人系统 v0.16+地图战斗资源 v0.21+增益状态 v0.13+战斗表现 v0.6+元进度 v1.9+生涯 v0.3+00 v1.3+02 v1.16+03 v1.1+ux 八份(battle 23 处/camp/shop/node-reward/level-clear/interaction-patterns/settlement-summary/level-map)
三、去毒批:奇物 v3.7(魔法道具→秘宝/档名三档→四级/门票与刷新「尚未入表」假话订正/验收第 3 条改令牌口径/资源成员指路凭证件表)+秘宝 v1.6(速览旧目录退役标注/退役件示例换现役)
四、道具退役素材库新建(design/research/道具退役素材库.md,案乙已追认):秘宝退役 9 件含去向+专长退役 27 件名单+待核 4 行;魔法提灯(fog_lantern)裁退役(06 条目已裁+秘宝.md 注记换代+素材库迁表一;拆线归实装批)
五、B2/B3/B4 裁决落文:元进度.md 道具工坊行删旧写新(v1.10——旧六行登记作废、指路秘宝新目录+解锁门槛谓词分级);奇物.md P1「两项合成高阶项」注销(v3.9——用户定性脏信息);§3 刷新句按最新口径换代(刷新券替代、不进持有集)
六、天赋树独立成文(B1 裁决):新建 design/gdd/systems/跨局循环/天赋树.md v0.1(33 节点机制全按 meta_tree.tres 实态+迭代 12 落籍裁决+被删底稿 git 取证——脊柱行门槛/钥石单币/Fork A/B 面/存档 v5 域/注入双通道)+元进度.md 定名节换代(v1.11)+02-系统清单跨局循环区加行(v1.17)
七、A 类卫生包:版本历史表理排四份(秘宝/奇物含 v2.7 断裂行修复/敌人系统/图生成,只调行序)+缺号注记三处(增益状态 v0.6 未考/冒险结构 v0.15/关卡节点地图 v1.6=MC-1 批)+node-reward v2.2 双号改 a/b+07 补建版本历史表+06 删「设置与本地化」空节+「文档/结构闸存量欠账」块挪文末「文档与结构」节+「L1 商店编排」两悬空指针改指 GP 换算失衡条+难度曲线两处过期指向核销注记(v0.27)+B5「现役 UI/文案两处自相冲突」登记 06 待办(battle_narrator.gd:160 旧话/hero_info_panel 两段同标「特性」——随后续迭代修)
八、命名统一(用户令「任务书」全库改「需求卡片」):167 文件约 800 处(design/ 全部文档+roadmap+CLAUDE.md+active.md+entities.yaml+game/ 注释与数据批注);两文件改名(需求卡片-M4数值批/需求卡片-冒险前资源配比预设批);残留=自造短语全量清单(黑话证据文档故意跳过)
九、CLAUDE.md:批次工作流标准清单收口段新增第 12 条「文档同步闸」(需求卡片必列关联文档同步面、合并前同步完毕方算收口,原 12/13 顺延);呈报六问铁规适用范围补立(前序批随批落籍)
十、active.md 快照节+工作日志 414-421(并行会话 416 黑话清扫条目按共享工作日志惯例一并入库);06 中并行会话「active.md 定性与裁剪」条目未提交,按零吞并纪律留在工作区未入库

零测试(文档批两入口铁规);主区前序脏件(.gitignore/.zcode/config.json/playnote/project.godot/.zcodeignore/美术审计报告 html 等)未带
2026-10-09 19:12:46 +08:00

573 lines
12 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
[gd_resource type="Resource" script_class="FeatTable" load_steps=2 format=3]
[ext_resource type="Script" path="res://data/schemas/feat_table.gd" id="1"]
[resource]
script = ExtResource("1")
rows = [{
"feat_id": "arcane_ember",
"display_name": "奥术余烬",
"rarity": "common",
"archetype": "magic",
"desc": "普攻附加必中伤害",
"triggers": [{
"on": "attack_commit",
"do": {
"kind": "add_ticket_rider",
"value": 1
}
}]
}, {
"feat_id": "mana_weaver",
"display_name": "魔网织者",
"rarity": "rare",
"archetype": "magic",
"desc": "克制面强化",
"triggers": [{
"on": "clamp_check",
"when": [{
"fact": "matchup",
"op": "eq",
"value": "magic_vs_magic"
}],
"do": {
"kind": "modify_ticket",
"delta": 1
}
}]
}, {
"feat_id": "azure_oath",
"display_name": "湛蓝誓约",
"rarity": "rare",
"archetype": "magic",
"desc": "克制面强化",
"triggers": [{
"on": "clamp_check",
"when": [{
"fact": "matchup",
"op": "eq",
"value": "magic_vs_heavy"
}],
"do": {
"kind": "modify_ticket",
"delta": 1
}
}]
}, {
"feat_id": "mana_resonance",
"display_name": "魔能共鸣",
"rarity": "rarest",
"archetype": "magic",
"desc": "首格追加奥术矢",
"triggers": [{
"on": "dig_reveal",
"when": [{
"fact": "is_first_dig_of_battle",
"op": "eq",
"value": true
}],
"do": {
"kind": "spawn_spell",
"value": 2
}
}]
}, {
"feat_id": "mine_atlas",
"display_name": "雷区图谱",
"rarity": "common",
"archetype": "flag",
"desc": "标中雷额外得资源",
"triggers": [{
"on": "flag_hit",
"do": {
"kind": "grant_material",
"value": 1,
"label": "(雷区图谱)"
}
}]
}, {
"feat_id": "nest_hunter",
"display_name": "猎巢人",
"rarity": "rare",
"archetype": "flag",
"desc": "控巢攻击光环",
"triggers": [{
"on": "attack_commit",
"do": {
"kind": "add_ticket_rider",
"value": 1,
"per": "nest_count"
}
}]
}, {
"feat_id": "perfect_defense",
"display_name": "完美布防",
"rarity": "rare",
"archetype": "flag",
"desc": "全中标旗伤加倍",
"triggers": [{
"on": "flag_settle",
"when": [{
"fact": "flags_count",
"op": "gte",
"value": 1
}],
"do": {
"kind": "modify_ticket",
"value": 2,
"mode": "flag_mult"
}
}]
}, {
"feat_id": "war_banner",
"display_name": "战旗军规",
"rarity": "rarest",
"archetype": "flag",
"desc": "标中旗必中打敌",
"triggers": [{
"on": "flag_settle",
"when": [{
"fact": "flags_count",
"op": "gte",
"value": 1
}],
"do": {
"kind": "open_ticket",
"value": 2,
"channel": "attack"
}
}]
}, {
"feat_id": "pierce_shot",
"display_name": "贯穿射击",
"rarity": "rarest",
"archetype": "pierce",
"desc": "击杀半额弹射",
"triggers": [{
"on": "kill",
"do": {
"kind": "overflow",
"value": 50
}
}]
}, {
"feat_id": "chain_arrows",
"display_name": "连珠矢",
"rarity": "rare",
"archetype": "pierce",
"desc": "开格积穿刺矢",
"triggers": [{
"on": "dig_reveal",
"do": {
"kind": "counter_add",
"counter_id": "chain_digs",
"value": 1,
"reset_at": "round_start"
}
}, {
"on": "attack_commit",
"do": {
"kind": "attack_segments",
"value": 2,
"cap": 2,
"per": "dig_streak",
"divisor": 3
}
}]
}, {
"feat_id": "weak_instinct",
"display_name": "猎弱本能",
"rarity": "rare",
"archetype": "pierce",
"desc": "打轻甲更易命中",
"triggers": [{
"on": "clamp_check",
"when": [{
"fact": "matchup",
"op": "ends_with",
"value": "vs_light"
}],
"do": {
"kind": "modify_ticket",
"value": 1,
"mode": "discount_shift"
}
}]
}, {
"feat_id": "hunter_rapier",
"display_name": "猎手刺剑",
"rarity": "common",
"archetype": "pierce",
"desc": "克制面强化",
"triggers": [{
"on": "clamp_check",
"when": [{
"fact": "matchup",
"op": "eq",
"value": "pierce_vs_light"
}],
"do": {
"kind": "modify_ticket",
"delta": 1
}
}]
}, {
"feat_id": "miner_stubborn",
"display_name": "矿工的执拗",
"rarity": "common",
"archetype": "normal",
"desc": "开格越多打得越疼",
"triggers": [{
"on": "dig_reveal",
"do": {
"kind": "counter_add",
"counter_id": "stubborn_digs",
"value": 1,
"reset_at": "round_start"
}
}, {
"on": "mine_hit",
"do": {
"kind": "counter_add",
"counter_id": "stubborn_digs",
"set": 0
}
}, {
"on": "attack_commit",
"do": {
"kind": "add_ticket_rider",
"value": 1,
"cap": 5,
"per": "dig_streak"
}
}]
}, {
"feat_id": "miner_hammer",
"display_name": "矿工重锤",
"rarity": "common",
"archetype": "normal",
"desc": "加伤换命中",
"triggers": [{
"on": "attack_commit",
"do": {
"kind": "modify_ticket",
"trade_atk": 25,
"trade_hit": 2
}
}]
}, {
"feat_id": "focus_mind",
"display_name": "专注",
"rarity": "rare",
"archetype": "normal",
"desc": "攻击恒75%折扣",
"triggers": [{
"on": "armor_roll",
"do": {
"kind": "modify_ticket",
"value": 75,
"mode": "armor_rewrite"
}
}]
}, {
"feat_id": "armor_crack",
"display_name": "碎甲震击",
"rarity": "rare",
"archetype": "normal",
"desc": "打重甲附加破防",
"triggers": [{
"on": "attack_commit",
"when": [{
"fact": "matchup",
"op": "ends_with",
"value": "vs_heavy"
}],
"do": {
"kind": "apply_status",
"status_id": "off_guard"
}
}]
}, {
"feat_id": "greedy_lantern",
"display_name": "贪婪矿灯",
"rarity": "common",
"archetype": "dig",
"desc": "开格产出放大",
"triggers": [{
"on": "dig_reveal",
"do": {
"kind": "yield_mult",
"mult": 25,
"cost_mult": 25
}
}]
}, {
"feat_id": "vein_intuition",
"display_name": "矿脉直觉",
"rarity": "rare",
"archetype": "dig",
"desc": "开格产出放大",
"triggers": [{
"on": "dig_reveal",
"do": {
"kind": "counter_add",
"counter_id": "dig_combo",
"value": 1
}
}, {
"on": "mine_hit",
"do": {
"kind": "counter_add",
"counter_id": "dig_combo",
"set": 0
}
}, {
"on": "dig_reveal",
"do": {
"kind": "yield_mult",
"mult": 10,
"cap": 5
}
}]
}, {
"feat_id": "gambler_pact",
"display_name": "赌徒的血签",
"rarity": "rarest",
"archetype": "dig",
"desc": "开格产出放大",
"triggers": [{
"on": "dig_reveal",
"do": {
"kind": "yield_mult",
"mult": 50,
"cost_mult": 100
}
}]
}, {
"feat_id": "deep_drill",
"display_name": "深挖钻头",
"rarity": "rare",
"archetype": "dig",
"desc": "开格2AP·产出双份",
"triggers": [{
"on": "dig_paid",
"do": {
"kind": "counter_spend",
"counter_id": "deep_paid_round",
"value": 1,
"reset_at": "round_start",
"fallback": 1
}
}, {
"on": "dig_reveal",
"when": [{
"fact": "counter",
"id": "deep_paid_round",
"op": "gte",
"value": 1
}, {
"fact": "counter",
"id": "deep_given_round",
"op": "lt_ref",
"ref": "deep_paid_round"
}],
"do": {
"kind": "grant_material",
"label": "(深挖)"
}
}, {
"on": "dig_reveal",
"when": [{
"fact": "counter",
"id": "deep_paid_round",
"op": "gte",
"value": 1
}, {
"fact": "counter",
"id": "deep_given_round",
"op": "lt_ref",
"ref": "deep_paid_round"
}],
"do": {
"kind": "counter_add",
"counter_id": "deep_given_round",
"value": 1
}
}]
}, {
"feat_id": "armory_prep",
"display_name": "整备军备",
"rarity": "rarest",
"archetype": "charge",
"desc": "剩AP转下轮攻击",
"triggers": [{
"on": "round_end",
"do": {
"kind": "grant_ap",
"mode": "transfer"
}
}, {
"on": "attack_commit",
"do": {
"kind": "attack_bonus",
"value": 1,
"per": "charge_layers"
}
}]
}, {
"feat_id": "iron_wall",
"display_name": "铁壁整备",
"rarity": "rare",
"archetype": "charge",
"desc": "蓄力转减伤",
"triggers": [{
"on": "damage_taken",
"do": {
"kind": "shield",
"value": 1,
"per": "charge_layers"
}
}]
}, {
"feat_id": "patient_burst",
"display_name": "厚积薄发",
"rarity": "rare",
"archetype": "charge",
"desc": "蓄满下轮爆发",
"triggers": [{
"on": "attack_commit",
"when": [{
"fact": "charge_layers",
"op": "gte",
"value": 3
}],
"do": {
"kind": "modify_ticket",
"value": 2,
"mode": "spike"
}
}]
}, {
"feat_id": "ley_harvest",
"display_name": "地脉采撷",
"rarity": "common",
"archetype": "devour",
"desc": "吃地形伤返资源",
"triggers": [{
"on": "damage_taken",
"when": [{
"fact": "terrain_kind",
"op": "has"
}],
"do": {
"kind": "grant_material",
"label": "(地脉补偿)"
}
}]
}, {
"feat_id": "thorn_weaver",
"display_name": "荆棘编织者",
"rarity": "rare",
"archetype": "devour",
"desc": "挖伤害格双产出",
"triggers": [{
"on": "damage_taken",
"when": [{
"fact": "terrain_kind",
"op": "has"
}],
"do": {
"kind": "grant_material",
"label": "(荆棘编织)"
}
}]
}, {
"feat_id": "purge_sapper",
"display_name": "净化工兵",
"rarity": "rare",
"archetype": "devour",
"desc": "标旗中和伤害格",
"triggers": [{
"on": "flag_hit",
"when": [{
"fact": "terrain_kind",
"op": "has"
}],
"do": {
"kind": "rewrite_board"
}
}]
}, {
"feat_id": "magma_body",
"display_name": "熔火之躯",
"rarity": "rarest",
"archetype": "devour",
"desc": "吃地形伤反打全体",
"triggers": [{
"on": "damage_taken",
"when": [{
"fact": "terrain_kind",
"op": "has"
}],
"do": {
"kind": "counter_add",
"counter_id": "magma_layers",
"value": 1
}
}, {
"on": "round_end",
"when": [{
"fact": "counter",
"id": "magma_layers",
"op": "gte",
"value": 1
}],
"do": {
"kind": "open_ticket",
"value": 1,
"per": "magma_layers",
"channel": "blast"
}
}, {
"on": "round_end",
"when": [{
"fact": "counter",
"id": "magma_layers",
"op": "gte",
"value": 1
}],
"do": {
"kind": "counter_add",
"counter_id": "magma_layers",
"set": 0
}
}]
}]
; 内容数据驱动扩展批(2026-10-06 T3):专长表换代——行 = triggers 事件订阅形态
; (feat_id/display_name/rarity/archetype/desc/triggers——订阅哪个事件 on / 什么条件 when / 什么效果 do)。
; 旧 hook/effects 挂点形态随本批退役(挂点枚举消亡:事件名+效果类型取代——需求卡片 R4 裁决)。
; 23 挂点逐行移植映射=需求卡片 §五(等价性对拍底单);desc=文案表值化(呈现层读行,零硬编码)。
; 效果参数值直接写 do 字典(数值单一事实源=本表;效果引擎 DO_KEYS 白名单封闭)。
; 🔴 护栏全部保留:事件/效果/fact/算子四词表封闭(EffectEngine 常量)、行键白名单、悬空引用
; 致命、零裸 flat 禁令、流派扫雷触发铁律(每流派 ≥1 行订阅扫雷侧事件——MINE_EVENTS 同义校验)。
; 映射表对拍注记(T3 落地语义修正,行为等价优先——commit 留痕):
; - terrain_dig_double(荆棘编织者):映射表标 yield_mult(×2),现行为=第二份同格产出兑付
; (grant_material),×2 乘区对 percent 行不等价——落 grant_material。
; - flag_all_hit(完美布防):映射表标 yield_mult(旗伤乘区),现行为=旗伤单值倍增(战旗单据
; 数值改写)——落 modify_ticket(mode:flag_mult)。
; - 连珠矢/矿工的执拗 streak 取数:映射表 on:dig_reveal counter_add 形态与现行为「轮内踩雷全轮
; 清零」不等价(逐格清零后重积≠全轮判定)——计数器行保留(扫雷铁律承载),等价执行读
; attack_commit 载荷 dig_streak(战斗段全轮推导,与迁移前逐位一致)。
; - 厚积薄发:映射表 on:charge_full(满层沿)→spike,现行为=满层持续状态(层数无消耗点,沿触发
; 一次≠持续增强)——落 on:attack_commit + when(charge_layers ≥3) → modify_ticket(mode:spike),
; charge_full 事件仍埋点(R6 框架先行)。
; - 完美布防:「全中」条件装不进 fact 封闭 9 项(需 hits>0 且 misses==0 双读数)——when 落
; flags_count ≥1(可命中保守判定),全中闸=flag_settle 发射点施加面承载(载荷 flags_hit_all
; 仅供观测)——禁私开 fact(停机点纪律),查询面落法=代拍板白名单。
; - 猎巢人/矿工的执拗:映射表标 modify_ticket/attack_bonus,现行为=必中附加通道(伤害控制器
; hero_rider 后置于乘区与下限)——落 add_ticket_rider(per 取数载荷),乘区外恒定兑付逐位一致。
; - 整备军备:现行为双效果(轮末 AP 转蓄力层 + 每层下轮首段攻 +1)——两行订阅:
; round_end grant_ap(mode:transfer) + attack_commit attack_bonus(per:charge_layers)。
; 数值全 provisional 归 M-4 数值批;desc 文案=旧 summaries 表迁移(措辞零变化)。