Logic Scopes — what's available where¶
Game version: 1.32a
← Documentation index · ← Flags & key namespaces
A story/event runs in a scope chosen by its instance_type. The engine sets a different set of flag
instructions (and therefore key namespaces) for each. Using a token outside a scope that provides it
resolves to 0 or crashes — so the mod builder scope-checks every logic column and fails the build
on a scope-exclusive token used in the wrong scope.
The per-scope flag sets below are extracted directly from ExecHardcodedStory_BasicStory
(EventRelatedClass.cs line 144856). Every scope also includes the unconditional flags
(set for all instance types) — they are listed in each scope for completeness.
Non-story scopes (stratagem, regime-feat, character-feat, perk-zone, flex-lookup) are not selected by
instance_type; their availability is hand-curated indata/scopes/scopes_curated.yml. The mapping from each moddable table (and storyinstance_type) to a scope is indata/scopes/table_scopes.yml.
global — instance_type 0¶
Flags available: CHARID, CHARNAME, DIFF, REGID, REGIMEID, REGIMENAME, ROLL, ROUND, TARGETCHARNAME, TARGETREGIMENAME, TEMP6, ZONENAME
Scope-unlocked key namespaces: (only global namespaces: GAMEKEY, RANDOMKEY, REGKEY, TECH, …)
org — instance_type 1¶
Flags available: CHARID, CHARNAME, DIFF, ORGID, ORGNAME, REGID, REGIMEID, REGIMENAME, ROLL, ROUND, TARGETCHARNAME, TARGETREGIMENAME, TEMP6, ZONENAME
Scope-unlocked key namespaces: ORGKEY
diplomatic — instance_type 2¶
Flags available: CHARID, CHARNAME, CULTURE, CULTUREID, DIFF, REGID, REGIMEID, REGIMENAME, ROLL, ROUND, SOURCEREGIMEID, SOURCEREGIMENAME, SOURCEREGIMESLOT, SOURCEZONEID, SOURCEZONENAME, TARGETCHARNAME, TARGETCULTURE, TARGETCULTUREID, TARGETLEADER, TARGETMAJOR, TARGETNATION, TARGETNATIONAL, TARGETNATIONALLEADER, TARGETNATIONLEADER, TARGETNATIONNAME, TARGETREGIMEAIID, TARGETREGIMEID, TARGETREGIMENAME, TARGETREGIMESLOT, TARGETSUBCULTURE, TARGETWAR, TEMP6, ZONENAME
Scope-unlocked key namespaces: CULTUREKEY, EXPORTTARIFFKEY, IMPORTTARIFFKEY, REGREGKEY, REVREGREGKEY, SOURCEZONEKEY, STORYIMOD, STORYMOD, TARGETCULTUREKEY, TARGETREGIMEFEAT, TARGETREGIMEKEY, TARGETREGIMESTAT, TARGETREGKEY
zone — instance_type 3¶
Flags available: CHARID, CHARNAME, DIFF, REGID, REGIMEID, REGIMENAME, ROLL, ROUND, TARGETCHARNAME, TARGETREGIMENAME, TEMP6, ZONEID, ZONENAME
Scope-unlocked key namespaces: COLZONE, ZONEKEY, ZONEORDERROUND, ZONEORDERSTAT, ZONESTAT
character — instance_type 4¶
Flags available: CHARID, CHARNAME, DIFF, REGID, REGIMEID, REGIMENAME, ROLL, ROUND, TARGETCHARNAME, TARGETREGIMENAME, TEMP6, ZONENAME
Scope-unlocked key namespaces: (only global namespaces: GAMEKEY, RANDOMKEY, REGKEY, TECH, …)
unit — instance_type 5¶
Flags available: CHARID, CHARNAME, DIFF, HISID, REGID, REGIMEID, REGIMENAME, ROLL, ROUND, TARGETCHARNAME, TARGETREGIMENAME, TEMP6, UNITNAME, ZONENAME
Scope-unlocked key namespaces: (only global namespaces: GAMEKEY, RANDOMKEY, REGKEY, TECH, …)
unit_commander — instance_type 6¶
Flags available: CHARID, CHARNAME, DIFF, HISID, REGID, REGIMEID, REGIMENAME, ROLL, ROUND, TARGETCHARNAME, TARGETREGIMENAME, TEMP6, UNITNAME, ZONENAME
Scope-unlocked key namespaces: (only global namespaces: GAMEKEY, RANDOMKEY, REGKEY, TECH, …)
trade — instance_type 7¶
Flags available: CHARID, CHARNAME, DIFF, REGID, REGIMEID, REGIMENAME, ROLL, ROUND, TARGETCHARNAME, TARGETREGIMENAME, TEMP6, TRADEID, ZONENAME
Scope-unlocked key namespaces: TRADEKEY, TRADEREGKEY, TRADERSTAT
This doc was generated from extracting data from Shadow Empire version 1.32a on 2026-06-05 06:56 UTC.