Files
gplan-2/game/data/tables/reward.tres
T

263 lines
9.9 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="RewardTable" load_steps=2 format=3]
[ext_resource type="Script" path="res://data/schemas/reward_table.gd" id="1"]
[resource]
script = ExtResource("1")
rows = [{
"reward_id": "attack_up",
"cell_type": "attack",
"polarity": "positive",
"effect_id": "attack_up",
"display_name": "增伤",
"power": 0,
"weight": 14,
"pool_tag": "cell",
"tier": 2
}, {
"reward_id": "ac_up",
"cell_type": "defense",
"polarity": "positive",
"effect_id": "ac_up",
"display_name": "盾牌加护",
"power": 0,
"weight": 11,
"pool_tag": "cell",
"tier": 2
}, {
"reward_id": "spark_aoe",
"cell_type": "blast",
"polarity": "positive",
"effect_id": "",
"display_name": "爆裂粉尘",
"power": 1,
"weight": 16,
"pool_tag": "cell",
"tier": 1
}, {
"reward_id": "heal_minor",
"cell_type": "heal",
"polarity": "positive",
"effect_id": "",
"display_name": "急救敷料",
"power": 2,
"power_min": 2,
"power_max": 2,
"weight": 4,
"pool_tag": "cell",
"tier": 1
}, {
"reward_id": "weaken",
"cell_type": "weaken",
"polarity": "positive",
"effect_id": "weaken",
"display_name": "削弱",
"power": 0,
"weight": 8,
"pool_tag": "cell",
"tier": 1
}, {
"reward_id": "enrage",
"cell_type": "attack",
"polarity": "negative",
"effect_id": "enrage",
"display_name": "敌方暴走",
"power": 0,
"weight": 0,
"pool_tag": "cell",
"tier": 2
}, {
"reward_id": "off_guard",
"cell_type": "defense",
"polarity": "negative",
"effect_id": "off_guard",
"display_name": "我方失衡",
"power": 0,
"weight": 0,
"pool_tag": "cell",
"tier": 2
}, {
"reward_id": "heal_backlash",
"cell_type": "heal",
"polarity": "negative",
"effect_id": "",
"display_name": "反噬震荡",
"power": 6,
"weight": 0,
"pool_tag": "cell",
"tier": 1
}, {
"reward_id": "enemy_alert",
"cell_type": "blast",
"polarity": "negative",
"effect_id": "alert",
"display_name": "警觉",
"power": 0,
"weight": 0,
"pool_tag": "cell",
"tier": 1
}, {
"reward_id": "sapped",
"cell_type": "weaken",
"polarity": "negative",
"effect_id": "sapped",
"display_name": "我方乏力",
"power": 0,
"weight": 0,
"pool_tag": "cell",
"tier": 1
}, {
"reward_id": "clear_blast",
"cell_type": "blast",
"polarity": "positive",
"effect_id": "",
"display_name": "清障炸药",
"power": 32,
"power_min": 24,
"power_max": 40,
"weight": 1,
"pool_tag": "clear_default",
"tier": 2
}, {
"reward_id": "pierce_strike",
"cell_type": "pierce",
"polarity": "positive",
"effect_id": "",
"display_name": "穿刺弹",
"power": 2,
"weight": 8,
"pool_tag": "cell",
"tier": 1,
"attack_type": "pierce"
}, {
"reward_id": "magic_bolt",
"cell_type": "magic",
"polarity": "positive",
"effect_id": "",
"display_name": "魔法矢",
"power": 2,
"weight": 8,
"pool_tag": "cell",
"tier": 1,
"attack_type": "magic"
}, {
"reward_id": "pierce_snare",
"cell_type": "pierce",
"polarity": "negative",
"effect_id": "",
"display_name": "穿刺陷阱",
"power": 8,
"weight": 0,
"pool_tag": "cell",
"tier": 1
}, {
"reward_id": "magic_recoil",
"cell_type": "magic",
"polarity": "negative",
"effect_id": "",
"display_name": "魔法反噬",
"power": 8,
"weight": 0,
"pool_tag": "cell",
"tier": 1
}, {
"reward_id": "ap_up",
"cell_type": "action",
"polarity": "positive",
"effect_id": "",
"display_name": "行动点",
"power": 1,
"weight": 6,
"pool_tag": "cell",
"tier": 1
}, {
"reward_id": "ap_drain",
"cell_type": "action",
"polarity": "negative",
"effect_id": "",
"display_name": "迟滞",
"power": 1,
"weight": 0,
"pool_tag": "cell",
"tier": 1
}, {
"reward_id": "gp_coin",
"cell_type": "gp",
"polarity": "positive",
"effect_id": "gp_gain",
"display_name": "GP 袋",
"power": 3,
"weight": 2,
"pool_tag": "cell",
"tier": 1
}, {
"reward_id": "gp_lose",
"cell_type": "gp",
"polarity": "negative",
"effect_id": "gp_loss",
"display_name": "破财",
"power": 2,
"weight": 0,
"pool_tag": "cell",
"tier": 1
}]
; 格面资源批(2026-09-15 用户拍板——registry reward_table 条目为现行 schema 事实源):
; 十行格面池(五型 × 正负各一行)+ 清图槽一行。安全格与危险格同池同分布(雷安同池),
; 装板期一次摇定;摇号只消费正向行权重(类型频次 = attack 20 / defense 16 / blast 16 / heal 3 / weaken 12,合计 67;
; 头段"heal 15 / weaken 12,合计 79"为历史注记——数值压缩批后 heal 3、合计 67,见本文件尾部 2026-09-17 批注);
; 负向行 weight=0 不参与摇号,纯(类型, 极性)兑付字典——heal 负向 = 主角直伤 4(不经增益状态),
; blast 负向 = 警觉(敌方 AC +1,2026-09-20 伏击退役换装)。
; 可选类三行(knife_t1/knife_adv/heal_pack)与注入池 active_inject 随可选类道具整体删除(供给控制器/保底/窗口同步下线)。
; 格面资源八型批(2026-09-20 用户拍板):① blast 负向 ambush_double 退役 → enemy_alert(警觉,effect_id=alert
; 敌方 AC +1 percent 行);② 新增第 8 型 action 两行——ap_up(正向,下轮行动点 +1)/ ap_drain(负向,下轮
; 行动点 −1),排队兑现于下一轮开始(action_economy.queue_ap_delta);③ off_guard 数值 −2→−1 归 status_effects.tres。
; 区间行(伤害量值区间批 2026-09-14):heal_minor [2,6] · clear_blast [25,55]——中点锚 power 恒等期望当量,
; roll 时机 = 身份预分配批内追加取号(既有取号序零扰动);spark_aoe 定值行无区间字段。
; 减伤墙调参批(2026-09-13):defense_up 权重 24→16——攻击成为池内最高行(历史注记)。
; 护甲等级掷点批(2026-09-16 用户拍板):defense 型正向行换装——reward_id/effect_id defense_up → ac_up
; (显示名"盾牌加护"——2026-10-12 由"护甲强化"改名;AC +1/层 ×2 层);cell_type defense / 权重 16 / tier 2 零改动(类型频次合计 79 不变——历史注记,数值压缩批后现合计 67);
; 百分比减伤行无双轨退役——status_effects.tres defense_up 行同批删除。
;
; 数值压缩批(2026-09-17 用户拍板暂定):
; ① 整体绝对值轴 ÷3:spark_aoe 4→1 · heal_backlash 4→1 · clear_blast [25,55]→[8,18](中点 power 40→13,
; 区间中点恒等期望当量的锚口径不漂移)。
; ② 恢复奖励削弱(用户拍板两条):出现概率下调到当前的 1/4——权重 15→3(当前频率 15/79≈19.0%,目标
; 4.75%,整数权重最接近 = 3/67≈4.5%);恢复量在 ÷3 后再 ÷2(现值 ×1/6)——[2,6]→定值 1
; (0.33~1 取整,区间字段保留 min=max=1 占位,量级再调时恢复区间结构)。
; ③ 雷安同池连带(结构冻结,自动同侧):heal 权重下调同比例降低踩中 heal 型雷(反噬)的频率——
; 负向侧反噬量同步 ÷3(4→1)。
; 类型频次合计 79→67(attack 20 / defense 16 / blast 16 / heal 3 / weaken 12)。行值 provisional 归 难度曲线与Boss。
;
; 伤害道具批(2026-09-18 用户指令):① 七型字典——五型增补 pierce(穿刺)/ magic(魔法)两型,各正负一行:
; 正向 = 单目标克制直伤道具(穿刺弹/魔法矢 power 2,attack_type 字段载攻击类型轴,走克制矩阵、
; 必中全额不掷点——棋盘来源伤害既有口径);负向 = 主角直伤(穿刺陷阱/魔法反噬 power 2,复用反噬通道不经增益状态)。
; ② 权重再平衡(保 spark_aoe 16 不动、总 67 不变):attack_up 20→14 · ac_up 16→11 · heal_minor 3→2 · weaken 12→8;
; 新行各 8。等比基准 = 其余四行 51→35(×0.686),整取后 14/11/2/8,微差登记已知偏差。
; 类型频次合计仍 67:attack 14 / defense 11 / blast 16 / heal 2 / weaken 8 / pierce 8 / magic 8。
;
; 九型批(2026-09-20 用户拍板——GP 进第九型,获取来源=战斗结束掉落+雷图低概率惊喜获取〔量与战斗掉落相当〕;
; GP 袋=挖开安全格入战斗内缓冲、战斗完成统一入账;破财=危险格摇到 gp 面的字典负向行〔weight 0 不入池,
; 挖危险格兑付=缓冲 -2 钱包侧 clamp ≥0〕;正向权重合计 74→76);行值 provisional 归 难度曲线与Boss。
; gp 两行 tier=1(provisional 占位);effect_id gp_gain/gp_loss = 战斗内缓冲(escrow)通道路由键
;(战斗结算 _apply_percent_row 分流,不入增益容器——ConfigDB ① status_effects 悬空豁免归 core 面)。
;
; Package B 数值优化批·首版(2026-09-22——qa-data/实现计划书_PackageB.md §4.3):clear_blast
; 区间 [8,18]→[18,35](中点 power 13→26)——清第一图回归真正伤害尖峰,撑起 boss"必清图才打得动"
; 节奏(L1 boss 清图≥1 靶 ≥80%);其余行全部不动。provisional,以 MC 复测读数为准
;(runbook 计划书 §5;迭代记录 qa-data/iteration_log.md)。
; ⚠️ 计划书笔误代拍板:原文"power 25"违反 schema 中点锚硬校验(config_fatal)——power ≡ floor((min+max)/2),
; (18+35)/2=26 故落 26(期望当量 +1 vs 计划书 25,掷点区间 18–35 与计划一致,玩法值零偏离)。
;
; Package B 迭代·第 2 轮(2026-09-22——计划书 §6.2,用户拍板一B):heal_minor 恢复量 1→2
;(区间三值同步 power/min/max = 2/2/2 过中点锚校验)+ 出现权重 2→4(正向池合计 76→78)。
; 与 hero.tres max_hp 17→20 同轮双变量(用户拍板组合拳,归因混在一起由下轮分摊)。provisional 未提交。
;
; Package B 迭代·第 4 轮(2026-09-22——计划书 §6.4,用户拍板 A):clear_blast 26→32
;(区间 [18,35]→[24,40],(24+40)/2=32 恰为整中点锚)。boss 面三缺同解(normal 胜率 62% 贴下沿 /
; 清图率 49% vs ≥80 / 完成度 99 vs >130)——清图尖峰加大让"先清一图"成为 boss 战最优路径。
; 副作用已知:perfect L1 boss 胜率 97% 越 75% 上界加剧。provisional 未提交。
; 数值修复批(2026-10-01):直伤雷三行 4/5/5→6/8/8(迭代 8 雷当量 provisional 的再抬档)——用户口径
; 「踩雷必须痛」;配套 hero max_hp 20→24 双向对冲(见 hero.tres 批注)。新尺 MC 复测归本批。