120 lines
7.7 KiB
Plaintext
120 lines
7.7 KiB
Plaintext
[gd_resource type="Resource" script_class="SettlementTable" load_steps=6 format=3]
|
||
|
||
[ext_resource type="Script" path="res://data/schemas/settlement_table.gd" id="1"]
|
||
[ext_resource type="Script" path="res://data/schemas/settlement_core_table.gd" id="2"]
|
||
[ext_resource type="Script" path="res://data/schemas/damage_roll_table.gd" id="3"]
|
||
|
||
[sub_resource type="Resource" id="SettlementCoreTable_core"]
|
||
script = ExtResource("2")
|
||
source_label_map = {
|
||
"safe_cell": "安全格",
|
||
"seal_hit": "封印命中",
|
||
"mine_hit": "危险格",
|
||
"clear_reward": "清图奖励",
|
||
"enemy_action": "敌方行动",
|
||
"hero_attack": "主角攻击",
|
||
"seal_miss": "封印未中"
|
||
}
|
||
effect_pool_map = {
|
||
"attack_up": "hero_offense",
|
||
"weaken": "enemy_output",
|
||
"enrage": "enemy_output",
|
||
"sapped": "hero_offense",
|
||
"empower": "enemy_output",
|
||
"fortify": "enemy_defense"
|
||
}
|
||
pool_clamp_lo = -100
|
||
pool_clamp_hi = 100
|
||
round_direction = "floor"
|
||
p_perfect = 200
|
||
seal_hit_premium = 125
|
||
|
||
[sub_resource type="Resource" id="DamageRollTable_roll"]
|
||
script = ExtResource("3")
|
||
equivalence_ref_damage = 4
|
||
armor_effectiveness = {
|
||
"normal": {
|
||
"light": 0,
|
||
"ward": 1,
|
||
"heavy": -1
|
||
},
|
||
"pierce": {
|
||
"light": -1,
|
||
"ward": 1,
|
||
"heavy": 0
|
||
},
|
||
"magic": {
|
||
"light": 0,
|
||
"ward": -1,
|
||
"heavy": 1
|
||
}
|
||
}
|
||
roll_faces = 20
|
||
attack_bonus = 0
|
||
roll_tier_bounds = [3, 7]
|
||
roll_tier_discounts = [75, 50, 25]
|
||
crit_roll = 20
|
||
crit_multiplier = 200
|
||
damage_floor = 1
|
||
armor_roll_stream = "armor_roll"
|
||
|
||
[resource]
|
||
script = ExtResource("1")
|
||
segment_order = PackedStringArray("grant", "buff_debuff", "combat", "decay", "verdict")
|
||
core = SubResource("SettlementCoreTable_core")
|
||
damage_roll = SubResource("DamageRollTable_roll")
|
||
|
||
; 攻击类型 × 护甲克制批(2026-09-12 用户拍板结构;2026-09-15 命名统一批 + 抽象分离批,数值 provisional 待用户/C3 调参):
|
||
; 主角攻击 = 单一基础分量(2026-09-19 充能退役批·用户拍板——原三分量模型退役,克制策略归冒险前配置:
|
||
; 类型 = hero 表 attack_type,营地换型 = 改字段;局内无挖掘攒弹药的第二供给)。
|
||
; 【抽象分离纪律保留】攻击类型 {normal, pierce, magic} = 普通 / 穿刺 / 魔法 = 伤害的属性轴,
|
||
; 只决定查矩阵哪一行,定义里不含任何棋盘来源;护甲类型 {light, ward, heavy} = 轻甲 / 魔法护甲 / 重甲是敌单位属性。
|
||
; 格面资源批(2026-09-15 用户拍板):段序七段 → 五段(item_window/item 两段随可选类道具删除下线);
|
||
; source_label_map 删 item 键;effect_pool_map 增 sapped→hero_offense(weaken 型负向——乏力)。
|
||
; enrage(敌方暴走 +25%,enemy_output 池)/ off_guard(我方失衡 +25%,hero_defense 池)/
|
||
; sapped(我方乏力 -25%,hero_offense 池)= attack/defense/weaken 三型负向字典行
|
||
; (极性路由兑付:挖危险格 / 标错安全格按该格 cell_type 取负向行;heal 负向 = 主角直伤不经状态、blast 负向 = 警觉(敌方 AC +1,2026-09-20 八型批换装))。
|
||
; 减伤墙调参批(2026-09-13):pool_clamp 域 [-100,+100] 结构冻结不动;减伤杠杆走 status_effects.tres(批注在该表)。
|
||
; 护甲等级掷点批(2026-09-16 用户拍板,数字即规范——战斗结算 GDD 护甲等级掷点节定稿同批):
|
||
; roll_faces=20 / roll_tier_bounds=[3,7] / roll_tier_discounts=[75,50,25] / crit_roll=20 / crit_multiplier=200 /
|
||
; damage_floor=1 / armor_roll_stream=armor_roll;attack_bonus=0 结构位(元进度/武器附魔未来投值)。
|
||
; 判定式:掷点 ≥ 防守方 AC + attack_bonus → 全额;缺口 1-3 → ×0.75、4-7 → ×0.5、8+ → ×0.25;无 miss 无零收益档;
|
||
; nat20 = 暴击 ×2 恒全额(双方同规);任何攻击落地伤害 ≥ damage_floor(全局 max(1,·))。
|
||
; 掷点只吃基础攻击分量(主角普通分量 / 敌方攻击拍与重击拍基线);穿刺/魔法充能与棋盘来源伤害必中全额。
|
||
; EV 参考数(按判定式复算):AC10 期望减免 21.25% / AC11 25% / AC12 28.75%;微调旋钮 = bounds/discounts,不动 AC 值。
|
||
; effect_pool_map 同批删 defense_up 键(减伤百分比行整体退役、无双轨)——ac_up 是 AC 阈值轴效果,不入任何池;
|
||
; off_guard(hero_defense 池)保留不动,池结构与乘区公式零改动。
|
||
; 敌人技能池批(2026-09-16 用户拍板):effect_pool_map 增 empower→enemy_output(蓄力技载体——敌方输出 ×2
|
||
; 经既有 enemy_output 乘区兑付)与 fortify→enemy_defense(硬化技载体——敌方防御池新词汇)。
|
||
; enemy_defense 池乘区消费面 = 主角攻击落地段(Σ三分量后 ×(100+clamp(enemy_defense))/100)——
|
||
; 四池对称乘区:敌打主角 = hero_defense×enemy_output,主角打敌 = hero_offense×enemy_defense
|
||
; (hero_offense 现行走主角普通分量 attack_up 直乘、切片未改——登记遗留)。
|
||
;
|
||
; 数值压缩批(2026-09-17 用户拍板暂定):
|
||
; equivalence_ref_damage 12→4(当量参考敞口,绝对值轴 ÷3 取整);
|
||
; roll_faces/折扣档/暴击/damage_floor/克制矩阵/pool_clamp 全部不动(相对轴)。clamp 域 [-100,+100] 共用。
|
||
;
|
||
; 战斗数值结构修复批(2026-09-18 盘问会话用户拍板):
|
||
; effect_pool_map 删 off_guard 键——off_guard(失衡)换装 AC 轴(unit percent→ac、+25→−2,provisional
|
||
; 归 状态层重设计批;消费走 _defender_ac 既有 ac 型读法零代码),退离 hero_defense 池(池清空、结构保留;
|
||
; 上方 2026-09-15 attack/defense/weaken 三型负向字典行的极性路由注记不变——defense 型兑付行仍是 off_guard,
|
||
; 变的只是池归属)。hero_offense 乘区接线同步落地(battle_orchestrator 主角攻击段):Σ三分量后
|
||
; ×(100+clamp(hero_offense))/100×(100+clamp(enemy_defense))/100——attack_up 普通分量直乘旁路退役,
|
||
; 增伤/乏力覆盖面 = 普通+穿刺+魔法 合计;上方"hero_offense 现行走直乘——登记遗留"注记随之销项。
|
||
;
|
||
; 甲效矩阵用户调参批(2026-09-18 用户逐格给值,五格改值、四格不动):
|
||
; normal ward 100→120 · normal heavy 100→50 · pierce light 100→80 · pierce ward 150→120 · pierce heavy 50→80;
|
||
; magic 全行与 normal light 不动。上方「克制语义 = 克制 ×150 / 中性 ×100 / 被克 ×50(对策三角)」三档措辞退役——
|
||
; 现行五档:克制 ×150 / 弱克制 ×120 / 中性 ×100 / 弱被克 ×80 / 被克 ×50,普通行不再恒中性。
|
||
; 键集 3×3 满格结构冻结不动;矩阵消费面 = 主角侧(道具直伤 / 主角攻击三分量 / 充能分量),
|
||
; 敌打主角现行不查矩阵——主角 armor_type 轴仍休眠,轴生效待敌方技能攻击类型批。
|
||
; 实战读数(现行敌种甲配置):L1/L2 小怪全轻甲 → 穿刺类(开格充能/穿刺弹)×80 小幅折损、普通/魔法中性;
|
||
; L2 Boss 魔法甲 → 基础攻击与穿刺弹 ×120、魔法矢 ×50(不变)。重甲现行无消费敌种(零消费格)。
|
||
;
|
||
; 甲效矩阵加法核换装批(2026-09-18 用户拍板数值语言——小整数加法核,与 01-核心循环 数值语言条款同批):
|
||
; 量纲 percent→整数点数,三档 克制 +1 / 中性 0 / 被克 −1,九格 normal [0,+1,−1] / pierce [−1,+1,0] / magic [0,−1,+1];
|
||
; pierce×heavy = 0 中性为用户特别拍板(重甲挡刀刃不排斥穿刺;现行无重甲敌种,纯结构位)。
|
||
; 上方 2026-09-18 甲效矩阵用户调参批(五档 ×150/×120/×100/×80/×50)与更早三档三角批注的百分比量纲全部随批退役(历史留痕不删)。
|
||
; 键集 3×3 满格结构冻结不动;缺项回退 = 0 中性(battle_orchestrator._counter_delta);域 [−3,+3](schema 校验)。
|
||
; 奖励直伤行 payload 键 effectiveness 保留键名、值语义改点数(JSONL 契约稳定——analyze_playtest 等分析工具不破坏)。
|