- d1 伤害控制器来源敌作废判定 `==`→`is_same`(同内容异实例不再误废;夹具双敌两断言〔wd1〕) - d11 shop 表新增 relic_base_price/spend_discount 两 knob+域检+ConfigDB 访问器+level_runner 读表; level_shop_economy_test 三表值断言+relic 现价读表与迁移前字面量逐位等价〔wd11〕 - d16a HeroTable.display_name+域检+访问器+unit_container 读表;spawn 真实链断言〔wd16〕 - d14 board_generator 目标雷数公式单点 target_mine_count(两调用点改引)+legality 去 db 参数(两调用点同批改)〔wd14〕 - d15 蓄力层上限 CHARGE_LAYER_CAP 常量(两处字面量+注释随动) - d16b unit_container/status_container 六处 Dictionary 取值显式 int() 包裹(读侧包) - d10 minesweeper 两信号按 §2.1 三要素补契约(载荷键集按发射位并集实查)+全库 28 处信号注释载体 #→## 撤销证明:回退 d1 hunk → 同容异实例断言红(A 单据被 B 死亡误废),还原复绿; 回退 d10 契约 → 契约在位扫描 undocumented=2 红,还原归零。等价类申报(d11/d14/d15/d16)见实现报告。 代拍板:#1 target_mine_count 签名(照接口块)、#2 契约措辞与载荷键并集(实查发射位)、#4 int() 读侧包写法。
112 lines
3.6 KiB
Plaintext
112 lines
3.6 KiB
Plaintext
[gd_resource type="Resource" script_class="ShopTable" load_steps=2 format=3]
|
||
|
||
[ext_resource type="Script" path="res://data/schemas/shop_table.gd" id="1"]
|
||
|
||
[resource]
|
||
script = ExtResource("1")
|
||
gp_drops = [{
|
||
"tier": "normal",
|
||
"display_name": "普通战斗",
|
||
"mean": 3,
|
||
"roll_min": 2,
|
||
"roll_max": 4
|
||
}, {
|
||
"tier": "elite",
|
||
"display_name": "精英战斗",
|
||
"mean": 5,
|
||
"roll_min": 4,
|
||
"roll_max": 6
|
||
}, {
|
||
"tier": "boss",
|
||
"display_name": "Boss 战斗",
|
||
"mean": 8,
|
||
"roll_min": 6,
|
||
"roll_max": 10
|
||
}]
|
||
level_gp_bonus = [{
|
||
"level_index": 1,
|
||
"bonus": 0
|
||
}, {
|
||
"level_index": 2,
|
||
"bonus": 1
|
||
}, {
|
||
"level_index": 3,
|
||
"bonus": 2
|
||
}]
|
||
products = [{
|
||
"product_id": "atk_up",
|
||
"display_name": "攻击祝福",
|
||
"attr": "atk",
|
||
"flat_value": 1,
|
||
"base_price": 4,
|
||
"price_increment": 2
|
||
}, {
|
||
"product_id": "hp_up",
|
||
"display_name": "生命祝福",
|
||
"attr": "max_hp",
|
||
"flat_value": 3,
|
||
"base_price": 2,
|
||
"price_increment": 2
|
||
}, {
|
||
"product_id": "armor_up",
|
||
"display_name": "护甲祝福",
|
||
"attr": "armor_class",
|
||
"flat_value": 1,
|
||
"base_price": 4,
|
||
"price_increment": 2
|
||
}]
|
||
price_level_bonus = [{
|
||
"level_index": 1,
|
||
"bonus": 0
|
||
}, {
|
||
"level_index": 2,
|
||
"bonus": 2
|
||
}, {
|
||
"level_index": 3,
|
||
"bonus": 4
|
||
}]
|
||
pool_shelf = [{
|
||
"kind_id": "attack",
|
||
"display_name": "攻击祝福",
|
||
"base_price": 4
|
||
}, {
|
||
"kind_id": "max_hp",
|
||
"display_name": "生命祝福",
|
||
"base_price": 4
|
||
}, {
|
||
"kind_id": "armor",
|
||
"display_name": "护甲祝福",
|
||
"base_price": 4
|
||
}, {
|
||
"kind_id": "ap",
|
||
"display_name": "行动点件",
|
||
"base_price": 5
|
||
}, {
|
||
"kind_id": "feat_ticket",
|
||
"display_name": "专长获取",
|
||
"base_price": 5
|
||
}, {
|
||
"kind_id": "heal",
|
||
"display_name": "应急回复",
|
||
"base_price": 5
|
||
}]
|
||
price_a = 1.8
|
||
price_b = 1.1
|
||
relic_base_price = 15.0
|
||
spend_discount = 0.8
|
||
|
||
; GP+商店房实施批(2026-09-20 用户拍板,设计权威 design/research/proposal-gp-shop-room-2026-09-20.md 裁决记录):
|
||
; 掉落=均值±方差掷定(gp_drop 封闭流)+关级加值;精英行为预留行(当前无消费方,随精英节点内容批启用);
|
||
; 价格公式 = base_price + price_level_bonus(关卡) + price_increment × 该商品已购档数(已购档数在 冒险结构——
|
||
; 冒险内累计、跨冒险清零);商品三件全陈列无刷新无摇号(2026-09-20 拍板,提案 §2.4 的三选一+刷新方案退役)。
|
||
; 期望账:L2 商店前可得 GP 期望 ≈ 35–40(L1 全程 22 ± 惊喜 + L2 商店前五战 21 ± ),三件首购总价 L2 =
|
||
; (4+2)+(2+2)+(4+2)=16、全购欲望 ≈ 26–34——取舍空间成立;量级与方差全部 provisional-pending-曲线调参批
|
||
;(用户拍板骨架先行、数值整体后置,行值归 难度曲线与Boss)。
|
||
; GP 商店房重构批(M-4 迭代 11 第②批 T1,2026-10-03——需求卡片 v1.3 全裁 P1 共享池/P4 ceil/P5 甲):
|
||
; pool_shelf 行族 = 共享池货架(kind_id 词表 attack/max_hp/armor/ap/feat_ticket/heal 六行——heal 系 T6 商店补回复〔默认原则:分类内成员都要在它该出现的渠道池里,现行缺〕、GP 袋负交易切边计价物不自售、feat_ticket 系 T5 专长凭证行〔非 Boss 渠道专长入口,价与其他商品相当=契约④口径②〕、
|
||
; 规则改写型特性三轴 doctrine 切边;库存=上限即库存,账本在 冒险结构 _bonus_taken 单点共享,行族不记库存);
|
||
; 价格公式换代(pool 模式)= ceil(base_price × b^(关序−1) × A^(本次进店已购次数)),price_a=1.8/price_b=1.1
|
||
; provisional 投值(零人工令改 provisional+后置追认,原 P5 甲研究拍板后置);products 行族 + 加法定价
|
||
; 随 legacy 模式(shop=off 对照承载)保留不退役,退役归 off 锚换代批。货架行值全部 provisional 归
|
||
; 难度曲线与Boss。
|