全局作用域变异首发批 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:
1 parent
9f64456fcd
commit
fcb95f2d5a
6 files changed
+182
-5
No files matched your search
@@ -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
|
||||
|
||||
|
||||
|
||||
Reference in new issue
Block a user