全局作用域变异首发批 T1-T4 核心面(迭代14③号卡):variation_table 词表扩 resource_face/always+互锁三条(resource_face⇔global、global⇒any+always)+effect_value 域[0,50](不适用 flat_damage[1,9]);variation.tres +skewed_veins 贫矿脉行(scope=global/unlock_level=2/board_types∅通配/投值30 provisional);config_db variant_pool 扩节点身份第三参(global行仅boss/elite入池,缺省双参跳过零扰动)+global_variant_row 决议访问器;board_data +board_variants 板级承载;battle_orchestrator 装板序 _resolve_global_variant 前置于 roll_board(数据依赖:偏斜旋钮先于摇号定型;全局取用确定性零取号)+_place_variants 替换制早退(boss图恰一行板级变异+零region格;池空回落region=兜底;普通图路径零diff);reward_economy +board_skew 旋钮+_skewed_cell_rows 整数最大余数投影(生存族按v%下调·进攻族等比上浮·白名单豁免·合计守恒77·off态直通零扰动)+_biased_cell_rows 基座换源=合成序图级先件级后

This commit is contained in:
DKChan committed 2026-10-04 17:52:01 +08:00
1 parent 9f64456fcd
commit fcb95f2d5a
6 files changed
+182 -5

No files matched your search

+20 -2
View File
@@ -20,8 +20,10 @@ extends Resource
@export var pack_max: int = 4
const SCOPES := ["region", "global"]
const EFFECTS := ["none", "flat_damage", "hide_number"] # 效果词表:直伤 / 数字遮蔽(可扩充)
const TRIGGERS := ["on_open", "on_number_shown"] # 触发词表:被打开即触发 / 打开且显示数字时触发(可扩充)
# resource_face = 资源面偏斜(全局作用域变异首发批 2026-10-04——整图修摇号分布:生存族按 effect_value%
# 下调、进攻族等比上浮重归一,不动任何格子数据;effect_value 语义随行域切换,不适用 flat_damage [1,9])
const EFFECTS := ["none", "flat_damage", "hide_number", "resource_face"] # 效果词表:直伤 / 数字遮蔽 / 资源面偏斜(可扩充)
const TRIGGERS := ["on_open", "on_number_shown", "always"] # 触发词表:被打开即触发 / 打开且显示数字时触发 / 板级恒在无触发时机(可扩充)
const PLACEMENTS := ["closed_only", "any"] # 布置约束词表:只落布置时未开格 / 任意格(可扩充)
@@ -65,6 +67,22 @@ func validate() -> Array:
errs.append({"category": "cross_field", "message": "%s hide_number ⇒ trigger 必为 on_number_shown" % vid})
# 信息遮蔽型只允许落安全格(遮蔽对象是数字;雷格无数字可遮)——placement=any 时由读取方
# 呈现面按 kind=safe 自然短路,此处不设布置约束
# 全局作用域型互锁(2026-10-04 首发批——resource_face ⟺ scope=global 三条 + 新值域;
# 判定键=effect/scope 词值,既有六 region 行(flat_damage/hide_number)不入本组——零误伤)
if row.get("effect", "") == "resource_face":
if row.get("scope", "") != "global":
errs.append({"category": "cross_field", "message": "%s resource_face ⇒ scope 必为 global(整图作用域)" % vid})
# resource_face 行 effect_value = 生存族权重下调百分比(0=中性合法态——off 锚用)
var gev: int = int(row.get("effect_value", 0))
if gev < 0 or gev > 50:
errs.append({"category": "domain", "message": "%s effect_value 越域 [0,50](资源面偏斜百分比): %d" % [vid, gev]})
if row.get("scope", "") == "global":
if row.get("effect", "") != "resource_face":
errs.append({"category": "cross_field", "message": "%s scope=global ⇒ effect 必为 resource_face" % vid})
if row.get("placement", "") != "any":
errs.append({"category": "cross_field", "message": "%s scope=global ⇒ placement 必为 any(整图无格子布置域)" % vid})
if row.get("trigger", "") != "always":
errs.append({"category": "cross_field", "message": "%s scope=global ⇒ trigger 必为 always(板级恒在,无触发时机)" % vid})
return errs
+18
View File
@@ -73,6 +73,17 @@ rows = [{
"placement": "any",
"board_types": ["deep_underdark"],
"counter_items": []
}, {
"variant_id": "skewed_veins",
"display_name": "贫矿脉",
"unlock_level": 2,
"scope": "global",
"effect": "resource_face",
"effect_value": 30,
"trigger": "always",
"placement": "any",
"board_types": [],
"counter_items": []
}]
; 地形变异 首批类型定稿批(2026-09-19 用户拍板)——四行两轴×两关:
@@ -98,3 +109,10 @@ rows = [{
; 变异密度 9%→4%、完美 L3 0→34%,L3 无带记观察态;行值 provisional→正式随迭代 5 出口人闸追认)。
; M-3 迭代 5 返工批(2026-09-29 U2 推翻 C3 裁 C1 两刀):percent_of_cells 4→5 回退;岩浆 1 与 per_level_bonus 0 维持——C1 终态;
; C1+v1 AC 组合读数归返工批全量确认(裁断全录 design/qa/m3-iter5-u2-gate-2026-09-29.md)。
;
; 全局作用域变异首发批(2026-10-04,迭代 14 ③号卡):skewed_veins 贫矿脉——首发型 scope=global
; 案A 资源面·微贫向偏斜(P2+Q1 裁决):L2/L3 Boss 图恒定一型整图变异(P4 甲恒定制;board_types ∅
; 通配,L2/L3 双关同型由 unlock_level=2+门控节点身份承载——Q2 甲),替换制:带全局型的 Boss 图不再
; 布 region 片(P3 甲);effect_value=30=生存族权重下调百分比(provisional 调参项,域 [0,50],
; 0=中性 off 锚;总期望微降 3-5% 为 provisional 设计目标,精确方向与幅度归读数批只测不判);
; trigger=always=板级恒在无触发时机。行值全 provisional 归出口追认单。