Skip to content

EXE Functions

Game version: 1.32a

Human-readable names for the game's EXE functions — the exe(code, …) calls that do something (mutate game state) in SET logic. Each maps to a raw EXE code; the full sortable catalog is below.

Each function is shown in two forms:

  • S&S Editor / CSV — the raw exe(code, …) you author directly in the S&S Editor or in a table CSV cell. This is how most top-level functions are used (an event's SET-logic command row whose type is the EXE code), and how the exe(346, …) gateway appears inline in logic strings.
  • ModBuildTool (coming soon) — the friendly, sigil-free name (e.g. AddHexPerk, GiveTech) that the forthcoming mod build tool will accept and compile to the raw form for you.

⭐ Gateway functions (most used)



What is an EXE function?

Shadow Empire's event/story/logic engine has two families of callable functions used inside logic strings (the result_set, immediate_logic, SET-logic columns, etc.):

Inline form Dispatcher Returns Purpose
exe(code, b, c, d, e) EventRelatedClass.DoExec(enr, t1=code, …) nothing (side effect) SET — do something (mutate game state)
chk(code, b, c, d, e) (alias che) EventRelatedClass.DoCheck(t1=code, …) a value IF/GET — read/compute something

The first argument (code / t1) selects the function. So exe(112, 5, 1) runs EXE code 112 (SetGameVar) with arguments (5, 1). The same code is also the row "type" used directly in an event's SET-logic command rows (ExecuteExec reads commandClass.Data[0,1] as the code, then calls DoExec).

Each EXE code carries metadata in DataClass:

  • ExecTypeNames[code] — internal/display name (e.g. ExecSetGameVar).
  • ExecTypeVarCount[code] — how many numeric arguments it consumes.
  • ExecTypeVarName[code, n] — the label of argument n (these are the column headers below).
  • ExecTypeString[code] — non-zero ⇒ the function also takes a text/DataString payload (the trailing string argument, sometimes used for names, filenames, UDS text, etc.).
  • ExecCategory[code] — grouping (see the category headers in §4); names from ExecCategoryName[].
  • ExecDesc[code] — free-text notes (shown verbatim in the Notes column when present).

Codes range 1–362; ~348 are defined, the rest are gaps/obsolete. Argument slots b,c,d are numeric; e is the DataString (numeric value or text depending on the function).

⚠️ Many functions are flagged EXPERT USE ONLY in their own description (regime add/remove, reorder, PBEM player switch, …) — these mutate structural data and are meant for editor/startup only, not live turns. The Notes column preserves those warnings.


The exe(346, …) gateway — ExecHardcodedSet

EXE code 346 (ExecHardcodedSet, category 22 "Hardcoded") is the workhorse used in almost all shipped stories/perks. It is a second-level dispatcher: its first argument selects a sub-function.

exe(346, fn, dat2, dat3, dat4 [, <DataString>=dat5])
        │   │     └────┬────┘
        │   │          └─ sub-function arguments (meaning varies per fn)
        │   └─ sub-function number (the table below)
        └─ EXE code 346 = "run a hardcoded set"

This is why shipped logic looks like exe(346,24,ZONEID,$1$) (add hex perk to a zone). The sub-function table is not the same numbering as the top-level EXE catalog in §4 — it is internal to ExecHardcodedSet.

exe(346,fn,…) sub-function table

Verified against ExecHardcodedSet (EventRelatedClass.cs ~205336–206570). dat2/dat3/dat4 are the 2nd/3rd/4th args of the exe(346,…) call; dat5 is the DataString.

fn What it does dat2 dat3 dat4 Impl.
1 Recruit / roll a character into your service Career ID (+1000=male bias, +2000=female bias) capacity (age slot) Helper_RollCharacter
2 Declare war Regime slot Target regime slot — Helper_DeclareWar
3 Change Worker Happiness for all zones owned by a regime Regime ID (Zones col 8) ± points — clamp 0–100
4 Change Population Happiness for all zones of a regime Regime ID ± points — clamp 0–100
5 Modify morale of a regime's units Regime ID ± points People filter (HisVar 11; 0=all) ExecUnitMorModifier
6 Modify XP of a regime's units Regime ID ± points — ExecUnitXpModifier2
7 Kill/remove troops in a zone (by unit power, weakest spared) Zone ID Regime ID # individuals power-sorted removal
8 Add rebel unit(s) spread over a zone's hexes Zone ID Rebel regime mode (1 or 6) matrix spread
9 / 36 Modify unit morale percentually for a regime's units Regime ID inv% People filter (36 also gates HisVar 11) ExecUnitMorModifierPercentual
10 Add a unit Regime ID Culture ID Unitcode ID Helper_PlaceUnit
11 Add/remove an item in a zone's city location Zone ID Item Type ID qty (+/-) Loc items list
12 Change a trader's credits Trader-zone ID % change (+/-) flat qty change (+/-) SE_Trade tables
13 Switch a unit to rebels Unit slot Regime ID allow start battle (0/1) Helper_ChangeUnitToRebels
14 Start all battles between two regimes Regime ID With regime ID — Helper_StartBattles
15 Add a rebel unit at a location Zone/loc ref Rebel regime Unitcode Helper_PlaceUnit
16 Asset info change Asset ID Info type (1=mining ease) New value ExecHardcoded_SetAssetInfo
17 Asset increase level Zone ID Asset Family ID — ExecHardcoded_AssetIncreaseLevel
18 Add asset Zone ID Asset Type ID — ExecHardcoded_addAsset
19 Give tech (set level) Regime ID Tech Type ID — ExecHardcoded_giveTech
20 Give character feat Char ID Char Feat ID — ExecHardcoded_GiveFeat
21 Remove spies of a regime from a regime's zones Spying regime ID Zone-owner regime ID # to lose random by spy count
22 Make peace Regime slot Other regime slot — Helper_MakePeace
23 Give PP (RegimeObj.ResPts) Regime ID PP points (+/-) — clamped ≥0
24 Add a hex perk to a random eligible hex of a zone Zone ID Perk ID — also names/sprites the hex
25 Add/modify unit feat His-unit ID Unit Feat ID qty (+/-) HisVar 100+feat
26 Unit XP modifier (by His ID) His-unit ID ± points — ExecUnitXpModifier2
27 Give random artifact stratagem(s) Regime ID Rarity tier (0=any,1..4) qty weighted draw
28 Give discovery of a tech (makes discoverable) Regime ID Tech Type ID — ExecHardcoded_giveDiscoveryTech
29 Modify leader loyalty by job (char col 20) Regime ID JobType (≤0=any) inv% (+/-) char list scan
30 Give leader XP by job (char col 17) Regime ID JobType (≤0=any) points char list scan
31 Destroy/decrease assets Zone ID Asset Family Levels ExecHardcoded_AssetDecreaseLevel
32 Kill troops in a zone's city (variant of 7) Zone ID Regime ID # uses zone city loc
33 Give a stratagem card Regime ID Stratagem/Card ID (qty=1 row) currentCards row
35 Force peace relation (sets RegimeRel=1 both ways) Regime slot Other regime slot — + dipClear
37 Modify a single leader's loyalty (char col 20, by Char ID) Char ID inv% (+/-) — —
38 Give/remove a regime feat Regime ID Regime Feat ID 0=add, 1=remove feat stringlist
39 Run hardcoded Corporate logic param — — HardcodedLogic_Corporate
40 Run hardcoded Cult logic param — — HardcodedLogic_Cult
41 Remove a leader (all trace) Char ID — — Helper_RemoveAllTraceOfLeader
42 Unit fights a variable (zone enforcement / scripted fight) (see code) Helper_UnitFightsVariable
44 Add a rebel unit (XY placement) XY/loc Regime Unit code Helper_PlaceUnit
45 Relieve/remove leader from post (reset advisor + job) Char ID — — + Helper_RemoveAllTraceOfLeader
46 Clear posture / reset HisVars 21–41 for a unit (and subordinates if HQ) His-unit ID — — ExecRemoveHisVar
47 Declare join/war (join flag set) Regime slot Target regime slot — Helper_DeclareWar(…, true)
48 Asset lose level (by asset ID) Zone ID Asset ID Levels ExecHardcoded_AssetDecreaseLevel
49 Convert zone pop/key to Free Folk (update hex settlements) Zone ID — — Helper_ZoneKeyToFreeFolk
50 Skill level modify Char ID Skill Type ID ± points (cap 99) skill stringlist
51 Market/Trade-Hub auction start param param — Helper_MTH_AuctionStart
52 Found a Market/Trade Hub param param — Helper_Found_MTH
53 Add an item to a zone's HQ unit (cf. 11 which targets the city loc) Zone ID Item Type ID qty (+/-) HQ items list
54 Split a Market/Trade Hub param param — Helper_Split_MTH
55 Resource rumours (when dat2=1) 1 (a) (b) Helper_ResourceRumours(dat3,dat4,dat5)
57 Play a Republica / politics card (politics must be enabled) card/arg arg — CheckRepublicaCard_Execute
58 Modify HQ morale of a unit His-unit ID ± points — ExecUnitMorModifierHQ
59 Compu unplug event (current regime) — — — CompuUnplugEvent
60 Modify loyalty of all your chars that have a given feat Feat ID — — (uses internal % var)
61 Open "relieve commander" UDS GUI Choice — — Hardcoded_Gui_Relieve_Commence
62 Remove troops from a unit and its HQ subordinates (by power) His-unit ID Regime ID # power-sorted removal
63 Mass-modify relations vs all regimes that have recon on a regime Regime ID relation ×% aiHatred += (AI only) regreg keys
64 Modify a zone order stat (ZoneOrders col 2) Zone ID ± delta — —
65 Assign governor of a zone to a leader (relieves old governor) Leader Char ID Zone ID old-gov loyalty penalty % jobtype 10

Numbers not listed (34, 43, 56, …) are not handled by ExecHardcodedSet — some exist only as top-level EXE codes in §4.


Companion: chk(249,…) / che(…)

The read side mirrors this: chk(code,…) → DoCheck. The most-used gateway is chk(249,fn,…) (skill rolls, counts, discovery, job lookups, etc.). The fully-authoritative CHK catalog — every top-level code plus the complete chk(249,…) sub-function table from source — now lives in its own companion document: CHK Functions.

CHK categories (CheckCategoryName): 1 Game & Map globals · 2 Regimes · 3 Logic & Calculations · 4 Hex & Areaslots · 5 Unit · 6 Stringlist · 7 SFType/ItemTypes · 8 DC1 AI · 9 DC2 AI · 10 Library Checks · 11 UDS · 12 Random Related.


Full EXE code catalog

Every defined exe(code,…) function. Name is the internal ExecXxx name (the Exec prefix stripped); Arguments are the game's own argument labels in order; Notes is the game's own description plus a takes text/DataString flag where the function consumes the trailing string payload. Click a column header to sort — by Code for numeric order, by Category to group.

Code Category Name Arguments Notes
1 Regimes, People, Research GiveRegimePP 1. RegimeNr; 2. PP
3 Regimes, People, Research ChangeDip (DEPRECIATED) 1. RegimeNr1; 2. RegimeNr2 Reverses the diplomatic relation from war to peace. Or from peace to war. Use a check to see current relation. IS DEPRECIATED. USE EXECCHANGERELATION INSTEAD.
5 Regimes, People, Research AddRegimeMorale 1. RegimeNr; 2. Mutation +/- pts
8 Regimes, People, Research SetSleep 1. Regime#; 2. Sleep=1, Awake=0
9 Regimes, People, Research JoinRegime 1. Losing Regime#; 2. Added to Regime#; 3. Including Units 1=yes,0=no
13 Regimes, People, Research ChangeRegimeName 1. Regime# (takes text/DataString)
16 Regimes, People, Research ChangeDipBlock 1. Regime#
21 Regimes, People, Research ChangePeopleCombatMod 1. People#; 2. PeopleGroupOwner#; 3. New Combat Mod in %
42 Regimes, People, Research SetBaseMorale 1. Regnr; 2. Basemorale Not only sets base morale of regime, but also of unterregimes to the same as well as reducing all morale of all units with the same percentual ammount as the basemorale lost.
56 Regimes, People, Research ChangePeopleCombatModVS 1. People#; 2. Versus PeopleGroupOwner#; 3. New Combat Mod in %
79 Regimes, People, Research GetReconFrom 1. From Regime#
105 Regimes, People, Research ChangeRelation 1. RegimeNr1; 2. RegimeNr2; 3. Diplomatic Relation #; 4. Hide Message (1=yes hide) Sets the relation between regime 1 and 2 to relation 0-2. 0=war, 1=peace, 2=allied.
106 Regimes, People, Research AddRegime 1. Copy From; 2. Set Uberregime EXPERT USE ONLY!!!. Only use before start of game. Adds a regime and copies all settings from specified reigme. You can also set name of new regime. You can also set an uberregime here. Automaticly will ally with uberregime. (takes text/DataString)
107 Regimes, People, Research RemoveRegime 1. RegimeNr; 2. Add stuff too RegimerNr EXPERT USE ONLY!!!. Only use before start of game. You can set RegimeNr to -1 and then the exec will try to find a regime with the specified name to delete. (takes text/DataString)
108 Regimes, People, Research AddOOB 1. Regime; 2. Historical Unit Sets the historical unit to the regime and also everything in the OOB of the selected historical unit.
109 Regimes, People, Research SetRegimeColor 1. Regime; 2. Red (0-255); 3. Green (0-255); 4. Blue (0-255) Sets the color of the regime. And you can overwrite the Name if you want too. Leave string blank to keep name. (takes text/DataString)
117 Regimes, People, Research MoveRegimeUp 1. RegNr EXPERT USE ONLY!!!. You can overrule with using name and setting Regnr=-1. Moves this regime to the end of the list of regimes. Do only use in editor or startup screen for it might screw up things if used in game. (takes text/DataString)
118 Regimes, People, Research SetRecon 1. X; 2. Y; 3. RegNr; 4. Pts Sets recon for this regime only on this hex only.
147 Regimes, People, Research SetUberRegime 1. ForRegime; 2. UberRegime (-1=none)
171 Regimes, People, Research SetRegimePeople 1. Regime#; 2. People # (or -1=to leave as is); 3. officerpool # (or-1=to leave as is)
194 Regimes, People, Research ChangeDipOffer 1. RegimeNr1; 2. RegimeNr2; 3. Diplomatic Offer # (0=none or 1=offer) Does not give message. You have to that manually. Sets the offer mode to either 0= cancel offer or 1=give offer
207 Regimes, People, Research SetReconUnit 1. X; 2. Y; 3. RegNr; 4. Recon points Sets recon for this regime only on this hex and all its neighbours up to range. Uses the ammount of recon points the specified unit# has.
213 Regimes, People, Research SetPeopleMorale 1. People #; 2. Under People Group#; 3. New Morale; 4. Reset all troops 0=no,1=yes Reset=1 sets all morale to regime base morale * people morale as if in start of scenario.
219 Regimes, People, Research SetPbemPlayer 1. Regime #; 2. PBEM++ Player number # Expert use only!. You can switch PBEM++ player here. only set to 1=player 1(challenger) or 2=player 2(opponent).
220 Regimes, People, Research SetDrawGame (none) When this is set the game will be considered game over by the PBEM++ server and a draw game at it. Same for non PBEM++ games by the way.
232 Regimes, People, Research SetRegimeFerryEff 1. Regime nr; 2. Ferry eff (0=none, 100=full)
15 Group Troop/Unit modifications DisbandUnits 1. Regime#; 2. People#
33 Group Troop/Unit modifications GiveReinforcement 1. X; 2. Y; 3. Predef# to use; 4. Multiplier
35 Group Troop/Unit modifications ReduceReadiness 1. Regime Nr (-1=all); 2. People Nr (-1=all); 3. %rdn loss; 4. %chance per unit
39 Group Troop/Unit modifications LTReduceReadiness 1. Regime Nr; 2. People Nr (-1=all); 3. %rdn loss; 4. LandscapeType Nr
40 Group Troop/Unit modifications LTReduceMorale 1. Regime Nr; 2. People Nr (-1=all); 3. %mor loss; 4. LandscapeType Nr
52 Group Troop/Unit modifications MutateSFType 1. AreaSlot; 2. AreaCode; 3. From Sftype#; 4. Too Sftype# (-1=remove) After completion sets # of changed individuals in tempvar[999].
53 Group Troop/Unit modifications SingleMutateSFType 1. AreaSlot; 2. AreaCode; 3. From Sftype#; 4. Too Sftype# (-1=remove) Note: Currents turn units take precedence
54 Group Troop/Unit modifications SingleMutateSFTypeXY 1. X; 2. Y; 3. From Sftype#; 4. Too Sftype# (-1=remove) Note: Currents turn units take precedence
57 Group Troop/Unit modifications RemoveTroops 1. X; 2. Y; 3. SFType group; 4. Percentage to remove
58 Group Troop/Unit modifications RemoveTroopsByPeople 1. X; 2. Y; 3. specific people #; 4. Percentage to remove
59 Group Troop/Unit modifications RemoveTroopsByLowMorale 1. X; 2. Y; 3. Morale =< then; 4. Percentage to remove
61 Group Troop/Unit modifications ReadinessLossByArea 1. Areaslot; 2. Value of slot; 3. Readiness loss; 4. Chance to lose this (x%)
80 Group Troop/Unit modifications AddExperience 1. People# (-1=all); 2. Points to add (+/-); 3. Minimum XP; 4. Maximum XP
81 Group Troop/Unit modifications MaxResearch (none) Every Suformation thats not in a predef unit that can upgrade if its regime has the research will upgrade
93 Group Troop/Unit modifications -DEPRECIATED- ExecHistoricalUnitForAddUnit 1. Historical Unit#; 2. Copy? (1=yes,0=no); 3. Number (only if copy); 4. NATO counter # (only if copy, <1=keep same) You should use ExecAddHistoricalUnit instead. Old description: If you want added units to be linked to a historical unit you have to call this exec before you call the addunit. If you make a copy, we'll use the given historical unit as a template but change its name to number + string. By putting a ',' in the string you can then specify the shortname. The shortname is always number+string. Once set it stays valid till changed or end of event in which it is declared. (takes text/DataString)
143 Group Troop/Unit modifications RemoveTroopsByReinforcementGroup 1. X (-1 = from unit); 2. Y (or unit #); 3. Reinforcement group; 4. Percentage to remove
159 Group Troop/Unit modifications ReduceTroops 1. SFType (-1=all); 2. PeopleType (-1=all); 3. Remove x%; 4. + remove between 0-y% random
199 Group Troop/Unit modifications MutateRandomSFType 1. People (-1=all); 2. Random percentage; 3. From Sftype#; 4. Too Sftype# (-1=remove) The random percentage determines ammount of sftype to mutate. After completion sets # of changed individuals in tempvar[999].
200 Group Troop/Unit modifications RemoveTroopsGlobal 1. SFType group (-1=all); 2. People (-1=all); 3. Reinforcement Type (-1=all); 4. Percentage to remove Remove percentage is not exact in this function... its the chance for each individual that it will be removed. If it is set to 999 empty HQ units will also be removed. If not only empty normal units will be removed.
201 Group Troop/Unit modifications GiveReinforcement2 1. SFType#; 2. People#; 3. Experience; 4. Multiplier Uses SetCardXY for coordinate to drop troops input.
217 Group Troop/Unit modifications RemoveTroopsUnderHistorical 1. SFType group (-1=all); 2. Historical Unit; 3. Reinforcement Type (-1=all); 4. Percentage to remove Remove percentage is not exact in this function... its the chance for each individual that it will be removed. Compared to its namesake exec this one only affects units under command of the historical unit (HQ!) specified. Only units directly under the historical unit are affected and HQs are always excluded. (if you want to set the HQs you'll have to do it manually)
218 Group Troop/Unit modifications SetHistoricalUnitOwner DEPRECIATED 1. Old owner #; 2. New owner # Function no longer does anything.
221 Group Troop/Unit modifications RemoveSupplyUnderHistorical 1. Historical Unit; 2. Percentage of supply to leave; 3. New Supply Consumption % (normal is 100%) this one only affects units under command of the historical unit (HQ!) specified. Only units directly under the historical unit are affected and HQs are always excluded. (if you want to set the HQs you'll have to do it manually)
222 Group Troop/Unit modifications SetInterceptRdnStop 1. For Regime (-1=all); 2. Percentage for intercept Only affects units with air units in them. percentage example: 75 means only at 75% rdn.
223 Group Troop/Unit modifications SetHistoricalUnitMaxRecruit 1. ID#; 2. MaxRecruit#(-1=unl,0=none) A function that allows you to change the max recruit
224 Group Troop/Unit modifications SetHistoricalUnitType 1. ID#; 2. Type#(5=corps,6=a,7=ag,8=high) A function that allows you to change the type. this is usefull to make 1st panzer army immobile and the sov front too.
228 Group Troop/Unit modifications MutateRandomSFTypeUnderHis 1. HistoricalID; 2. Random percentage; 3. From Sftype#; 4. Too Sftype# (-1=remove) The random percentage determines ammount of sftype to mutate. After completion sets # of changed individuals in tempvar[999].
2 Messanging, Campaign, Sound OldStyleMessage (DEPRECIATED) 1. Regime1; 2. Regime2; 3. BackPic#; 4. FrontPic# Is depreciated. Avoid using it (takes text/DataString)
7 Messanging, Campaign, Sound Load (none) (takes text/DataString)
11 Messanging, Campaign, Sound Message 1. Regime1; 2. Regime2; 3. Overwrite scndesc >0=yes; 4. Event Pic Nr (-1=none) if reg1=-1 and reg2=-1 then message is send to all regimes. (takes text/DataString)
69 Messanging, Campaign, Sound Load_UnitTransfer 1. Regime #; 2. AreaSlot #; 3. Max Per Hex
89 Messanging, Campaign, Sound PlayEventWav (none) Adds a sound file from the sound directory to the next ExecMessage, it will be played when the message is actually shown. So the effect is synchronized. (takes text/DataString)
90 Messanging, Campaign, Sound LoadCampaignRoomBackground 1. Event Picture# to be used
91 Messanging, Campaign, Sound SetCampaignRoomTitle (none) (takes text/DataString)
92 Messanging, Campaign, Sound PlayEventBackgroundWav (none) Loads the sound file from the sound directory and plays it immediatly. (takes text/DataString)
103 Messanging, Campaign, Sound SetMessageStyle 1. Message Style (0,1,2) The specified style will be used for the remainder of this event. 0=normal. 1=black, 2=text cloud+black. It also allows you to set an optional footnote (messageNote1). only shown in style 1 + 2. Directly under the main message in italics. SetMessageStyle is used by DC1 and an earlier prototype, kept here for backwards compatibility. The variable it accesses will also be used by DC3's new ExecDynamicMessage which will put it to value 3.. (takes text/DataString)
104 Messanging, Campaign, Sound SetMessageNote2 (none) Sets a string for underwriting of picture of character with text cloud. Shown in style 2. (takes text/DataString)
142 Messanging, Campaign, Sound Load_HistoricalTransfer 1. Regime #
239 Messanging, Campaign, Sound DynamicMessage 1. Regime1; 2. Regime2; 3. Message String; 4. EventPicture (-1=none) This is the new DynamicMessage. It allows advanced scripting and utilises system graphics 3 background parts. if reg1=-1 and reg2=-1 then message is send to all regimes. (inside note: Dynamic Message sets a message to Style=3 to notify the engine it uses dynamic message mode and advanced scripting)
240 Messanging, Campaign, Sound SetMessageNameAndGroup 1. Name (string not value) Set empty string for no-name!; 2. Group (0=none); 3. HideFromTab (1=yes,0=no); 4. HideFromStart (1=yes,0=no) Will be applied to the next ExecMessage2 or ExecDynamicMessage.
252 Messanging, Campaign, Sound PlayEventBackgroundWav2 1. Full file path relative to the game executable Loads the sound file.
257 Messanging, Campaign, Sound WritePDF 1. String; 2. Filename; 3. Title The String should be coded like a dynamic message. Pagebreaks are not automatic. You need to use CheckDynamicTextHeight() to predict sizes. Pages are 595 x 842 points. Filename should be without file extension. for example 'doc' or 'oobfile'. Title is displayed as a watermarkish thing on each page on top and pagenumber in the bottom.
362 Messanging, Campaign, Sound AddNoteToMes 1. Text to add Used in DC5 to keep pairs for hardcoded Reps
14 Hex & Areaslots JoinArea 1. Areaslot# (0-9); 2. Areacode; 3. To Regime#; 4. Units flee too areacode (-1=destr,-2=keephex) All units not allied with the new owner will be either flee or be destroyed or removed or keep hex.
17 Hex & Areaslots DoStructuralDamage 1. x; 2. y; 3. damage pts If you give negative ammount of points it is handled as a repair
18 Hex & Areaslots SetLandscape 1. X; 2. Y; 3. New LT#
19 Hex & Areaslots SetSprite 1. X; 2. Y; 3. New Sprite#
20 Hex & Areaslots SetSlot 1. X; 2. Y; 3. AreaSlot; 4. AreaCode
25 Hex & Areaslots ChangeRiver 1. X; 2. Y; 3. From River #; 4. Too River #
26 Hex & Areaslots ChangeRoad 1. X; 2. Y; 3. From Road #; 4. Too Road #
27 Hex & Areaslots ChangeBridge 1. X; 2. Y; 3. Direction = 0(North),1,2,3,4,5(NorthWest); 4. -1=no bridge, >=0 = bridge
29 Hex & Areaslots ChangeLocationType 1. X; 2. Y; 3. Loctype (-1=remove any location); 4. People # (takes text/DataString)
30 Hex & Areaslots GiveSupply 1. X; 2. Y; 3. Supply Points to the top hq of the closest hq to x,y; 4. Overrule recipient regime with regime # Overule recipient is inactive if put to 0. If no overrule the supplies are given to closest unit owned by regime that owns hex. But >0 is overrule 1=reg 0, 2=reg1 !!!! This +1 shift is inhere to keep backwards compatible with AdvTactics scenarios. String is for the name of the supply source (all same name or none will be same off-map supply source) (takes text/DataString)
32 Hex & Areaslots ChangePeople 1. X; 2. Y; 3. Changes the people at location x,y
43 Hex & Areaslots ChangeVP 1. X; 2. Y; 3. new VP amount. 0(none) - 999
60 Hex & Areaslots SetLabel [old] 1. X (tempvar999>0 overwrites datastring); 2. Y; 3. Type (0-10); 4. Slot (1-2) If there is a value > 0 in tempvar999 it is ammended to the end of the string. (takes text/DataString)
72 Hex & Areaslots AreaSpreadOut 1. AreaSlot #; 2. Divideby
152 Hex & Areaslots AddAntiSupply 1. X; 2. Y; 3. Regime; 4. Points Must be used in early turn check in order to be used after regular setting of AS and before Supply system...
157 Hex & Areaslots SetSpecial 1. SpecialType; 2. SpecialSprite; 3. X; 4. Y Either Type is a LanscapeType slot with corresponding Sprite or it is -1 and a smallgfx slot will be used.
174 Hex & Areaslots SetHexOwner 1. X; 2. Y; 3. Owner #
197 Hex & Areaslots SetLabel 1. X; 2. Y; 3. Type (0-10); 4. String Slot 1 is always used. Auto complete is used and name can stretch several hexes.
198 Hex & Areaslots ClearAllLabels (none)
247 Hex & Areaslots ClearSpecialTypesOnMap 1. Which special type # (-1=all); 2. Which sprite # (-1=all) Remember that special types are just landscape types under another name.
250 Hex & Areaslots SetSmallLabel 1. X; 2. Y; 3. Text Set to empty string to reset a label to nothing. Max 9 letters will be displayed in 64x48 hex mode. but label texts can be bigger, they will just not be fully shown.
258 Hex & Areaslots GiveSupplyImmediateDisperse 1. X; 2. Y; 3. Supply Points to be shared by all units; 4. AP modifier %. 100=normal. 50=only half range. 200=double range. This exec acts basically like an airdrop from ATG would work. All units in range, modified for distance immediately receive supplies. Stats are updated. It uses rulevar 99 for movement type. ap range is rulevar 3. penalties used from rulevar 51,52,53. You should call this in a late turn event.
306 Hex & Areaslots ChangeLocationHQ 1. Location Slot#; 2. HQ Unit Slot#
351 Hex & Areaslots LocStats 1. Loc#; 2. Stat #; 3. Mode 0/1=%, 2=absolute new value; 4. Value Stats: 1=supply points, 2=fuel points, 3=mode var, 4=fixed var
353 Hex & Areaslots ChangeUnitStats 1. Unit #; 2. Stat #; 3. Value Stat # 1=Readiness, 2=Entrenchment, 3=Morale, 4=Experience
354 Hex & Areaslots ChangeLocationType2 1. X; 2. Y; 3. Loctype (-1=remove any location); 4. People # Only use this for Supply Base/Source location types. (takes text/DataString)
355 Hex & Areaslots GiveFuel 1. X; 2. Y; 3. Fuel Points on x,y; 4. Overrule recipient regime with regime # Only works for Supply Sources active (471). Overule recipient is inactive if put to 0. If no overrule the supplies are given to closest unit owned by regime that owns hex. But >0 is overrule 1=reg 0, 2=reg1 !!!! This +1 shift is inhere to keep backwards compatible with AdvTactics scenarios.
34 Action Cards GiveActionCard 1. Card Nr; 2. Regime Nr
36 Action Cards AddHistoryActionCard 1. Card Nr; 2. Regime Nr
37 Action Cards RemoveHistoryActionCard 1. Card Nr; 2. Regime Nr
44 Action Cards RemoveActionCard 1. Card Nr; 2. Regime Nr
46 Action Cards PlayActionCard 1. Regime Nr; 2. Action Card Nr
48 Action Cards ActionCardName 1. Actioncard Nr (takes text/DataString)
49 Action Cards ActionCardPPCost 1. Actioncard Nr; 2. New PPCost (-1 = keep same); 3. PPCost absolute increase or decrease (0=no change); 4. PPCost % increase or decrease (0=no % change)
74 Action Cards CheckPreDef 1. Predef# Returns unit# of this predef ID#.
76 Action Cards CopyActionCard (+Set Name) 1. From#; 2. Too# If the Too# specified is a slot higher then existing number of actioncards, the number of actioncards slots will be extended (takes text/DataString)
77 Action Cards SetActionCard (+Set Text) 1. Card#; 2. TempVar0; 3. TempVar1; 4. EventPic# (takes text/DataString)
82 Action Cards HexActionCard 1. X; 2. Y; 3. ActionCard# (-1=no actioncard) Will place an action card on the hex in question. The card is executed immediatly upon the player conquering the hex. And will cause a popup to appear immediatly (if message used) Only if hex is conquered by combat or direct move in. So always place on locations because they cannot be conquered by ZOC. If an AI regime takes the card it cannot load a new game, select a unit or a hex.
148 Action Cards SetCardXY 1. X; 2. Y If you are calling a card who needs a hex input. set it with this exec.
188 Action Cards SetUnitSelected DEPRECIATED 1. Unit # Do not confuse this function with ExecUnitSelectable to make a unit choseable in popup. This function provides some backwards compatibility with ATG and otherwise sets the unitselected for the game display. -1= no unit selected.
215 Action Cards ActionCardText 1. Actioncard Nr; 2. New Title; 3. New Text on card The difference with ExecActionCardName is that you can here also set the text on the card + input can be done with tempstrings with this exec
249 Action Cards SetCardQuickButton 1. Card Slot#; 2. Quick Mode (0=no,1=yes,2=yes+hide); 3. Small graphic on order button If mode>=1 then an order button will be generated if the player/ selected hex/ selected unit confirms to the (pre-event) conditions of playing a card in general/ on hex/ on unit. And enough PP must be available. You must specifiy a small graphic slot # as well for the order button.
253 Action Cards ActionCardCategory 1. Actioncard Nr; 2. New category number For changing the category numner of the card
254 Action Cards DeleteActionCard 1. Card Nr USE WITH CAUTION This exec actually really deletes the card. Use ExecRemoveActionCard to keep the card but remove it from a regime hand. Deleting cards will change numbers it might cause events to break. EXPERT USE ONLY
255 Action Cards SetActionCardEventPicture 1. Card Nr; 2. Event Picture Nr A simple replace picture of the card.
12 Logic & Vars BlockEvent (none)
47 Logic & Vars ExecuteEvent 1. Event Nr IS DEPRECIATED BY CallFunction. tempvar 0,1,4,5 are passed on (but not returned).
112 Logic & Vars SetGameVar 1. GameVar #; 2. New Value
113 Logic & Vars SetTempVar 1. TempVar #; 2. New Value
114 Logic & Vars SetRegimeVar 1. Regime #; 2. Variable #; 3. New Value
115 Logic & Vars SetTempString 1. Tempstring #; 2. New Value
145 Logic & Vars SetSupplyMatrix 1. Source X; 2. Source Y; 3. AreaSlot #; 4. Regime # Sets movecost value on each hex. if not in supply value will be set to 9999. It will not overwrite a lower value with a higher value. So make sure you set the areaslot matrix to 9999 before you call. this is done to allow multiple sources for making the matrix.
146 Logic & Vars ClearMatrix 1. AreaSlot #; 2. Value Sets the specified slot for all hexes to specified value
154 Logic & Vars Quit (none) Quits the player back to the main menu. Can only be played from the research hand cards screen!
162 Logic & Vars CallFunction 1. Name of function to call Case of name does not matter, but must be exact otherwise. The tempvar900-999 and tempstring900-999 will be copied to the receiving function and can be altered by it and will be returned back to the calling function. this way you dont have to use gamevars like in ExecExecute. (You can use these call by name feature to make functionlibs that can be loaded by import all). Tempvar 0,1,4,5 are copied to called function, but not back again.
173 Logic & Vars SetMatrix 1. Slot; 2. Operation; 3. Disallow over sea (0=no, 1=yes) You cannot set operation yet. For now it just subtracts 1 of the value and copies if higher then neighbour. Thus make sure to make a clearmatrix(0) and then set coordinates you want to spread out.
202 Logic & Vars SetMoveMatrix 1. Source X; 2. Source Y; 3. AreaSlot #; 4. MoveType # Sets movecost value on each hex for specified movetype. if not reachable will be set to 9999. It will not overwrite a lower value with a higher value. So make sure you set the areaslot matrix to 9999 before you call. this is done to allow multiple sources for making the matrix. The matrix is calculated for the regime that owns the hex.
244 Logic & Vars SetGroupName 1. GroupName #; 2. New Value
245 Logic & Vars AppendTempString 1. Tempstring #; 2. Value to be appended
94 AI in General SetAI 1. Regime #; 2. AI (1=yes,0=no); 3. ProdBonus(0,100,250) If you want to set a regime to AI player or make an AI a human player.
6 Modifying Units AddUnit 1. UnitPreDef#; 2. X; 3. Y; 4. Regime# (takes text/DataString)
95 Modifying Units UnitRdnModify 1. Unit #; 2. Absolute modifier pts +/-; 3. People (-1=all); 4. SFTypeGroup (-1=all) Change stats of subformations in a specified unit.
96 Modifying Units UnitMorModify 1. Unit #; 2. Absolute modifier pts +/-; 3. People (-1=all); 4. SFTypeGroup (-1=all) Change stats of subformations in a specified unit.
97 Modifying Units UnitXpModify 1. Unit #; 2. Absolute modifier pts +/-; 3. People (-1=all); 4. SFTypeGroup (-1=all) Change stats of subformations in a specified unit.
98 Modifying Units UnitApModify 1. Unit #; 2. Absolute modifier pts +/-; 3. MoveTypeGroup (-1=all); 4. SFTypeGroup (-1=all) Change stats of subformations in a specified unit.
99 Modifying Units UnitGiveTroops 1. Unit #; 2. Predef Unit# Add all troops in PreDef unit to this Unit.
100 Modifying Units UnitOffensiveBonus 1. Unit #; 2. Absolute modifier pts +/-; 3. People (-1=all); 4. SFTypeGroup (-1=all) (>=100 = specific sftype -100) (9001=only for artRange>0) Change stats of subformations in a specified unit. If you set modifier to 0 it resets the offmod to 0. Each point is a percentage point. If you specify a sftypegroup >=100 then you are actually specifiying a specific SFType Nr.
101 Modifying Units UnitDefensiveBonus 1. Unit #; 2. Absolute modifier pts +/-; 3. People (-1=all); 4. SFTypeGroup (-1=all) (>=100 = specific sftype -100) Change stats of subformations in a specified unit. If you set the modifier to 0 it resets the defmod to 0. Each point is a percentage point. If you specify a sftypegroup >=100 then you are actually specifiying a specific SFType Nr.
102 Modifying Units UnitSelectable 1. Unit # The specified unit will now be selectable in the 'select a unit' popup screen. Use this exec in a pre-event from an actioncard.
132 Modifying Units MoveUnit 1. Unit #; 2. New X; 3. New Y Keep in mind combat can occur immediatly after the move. Rebel Battle Mode will be used.
133 Modifying Units ChangeUnitRegime 1. Unit #; 2. New Regime# Keep in mind combat can occur immediatly after the move. Rebel Battle Mode will be used.
140 Modifying Units ModifyUnitSupply 1. Regime (-1=none); 2. Specific Unit (-1=none); 3. Modifier % (100=keep same, 50=half, 200=double); 4. Modifier absolute (0=nill, -x , +x ) Increases or decreases supplies of the unit. cannot go over max supplystore.
141 Modifying Units RemoveUnits 1. Regime #
144 Modifying Units ChangeCommander 1. Unit#; 2. Historical Unit# Replace the commander with that from a historical unit.
172 Modifying Units SetHQ 1. Unit; 2. HQ
176 Modifying Units Removeunit 1. Unit # Removes specific Unit
180 Modifying Units ChangeUnitEntrenchment 1. Unit#; 2. -/+ entrenchment pts Will auto cut at 0 or maximum entrench for sftype in hex..
185 Modifying Units SetUnitName 1. Unit#; 2. New Name Will set name of all belonging to units historical unit if using historical units. Shortname is only applied if historical unit is present.
187 Modifying Units UnitPeopleModify 1. Unit #; 2. Change People# (-1=all); 3. Too People# Change the people in the unit.
211 Modifying Units SwitchUnitModel 1. Unit#; 2. To Model ID#; 3. Change name as if new unit 0=no ,1=yes This function will attempt to change the whole historical unit# of unit# to a new model and will implement the changes immediately. A new name will be also be given if specified so.
216 Modifying Units SetUnitCapacityPoints 1. Unit#; 2. LandCap Pts +/-; 3. RailCap Pts +/- Allows you to remove or add capacity points to a unit. Use in late turn so the unit Cap point gain has already been processed before use of this exec.
243 Modifying Units UnitOnTop 1. Unit nr# Makes sure this unit nr is on top of the stack in its hex.
246 Modifying Units SetUnitStandingOrders 1. Unit#; 2. Retreat%; 3. Supply%; 4. Replacement% Give unit slot number and percentages. Allows you to set a number of standing order % to a unit. If you specify -1 then the setting is not changed. Only 0-100 values are thus accepted. Retreat100% = fight till last Retreat0%=immediate retreat.
359 Modifying Units ModifyUnitFuel 1. Regime (-1=none); 2. Specific Unit (-1=none); 3. Modifier % (100=keep same, 50=half, 200=double); 4. Modifier absolute (0=nill, -x , +x ) Increases or decreases Fuel of the unit. cannot go over max fuel reserves
41 SFtype & Itemtypes SetItemCost 1. ItemType Nr; 2. Set Prod Cost
135 SFtype & Itemtypes -DEPRECIATED- (execmodhitpoints) 1. SFType # (-1=all); 2. SFTypeGroup # (-1=all); 3. Modifier (100=same, 50=half, 200=double) #
136 SFtype & Itemtypes ModifyAirOverrule 1. SFType # (-1=all); 2. SFTypeGroup # (-1=all); 3. Modifier (100=same, 50=half, 200=double) #
137 SFtype & Itemtypes ModifyEntrenchmentSpeed 1. SFType # (-1=all); 2. SFTypeGroup # (-1=all); 3. Modifier (100=same, 50=half, 200=double) #
138 SFtype & Itemtypes ModifySupplyStock 1. SFType # (-1=all); 2. SFTypeGroup # (-1=all); 3. Modifier (100=same, 50=half, 200=double) #; 4. For dc4+ only. Special Mode. <1=dont use. 1=Supply, 2=Fuel Modifies supply and stockpile stats
139 SFtype & Itemtypes ModifyAttackScore 1. SFType # (-1=all); 2. SFTypeGroup # (-1=all); 3. Versus SFTypeGroup # (-1=all); 4. Modifier (100=same, 50=half, 200=double) # Modifies AttackArt,AttackPower,AttackPowerDef all 3.
158 SFtype & Itemtypes ReduceAntiStructural 1. SFType (-1=all); 2. Percentage (100=same. 50=less >100=more)
161 SFtype & Itemtypes SFTypePower 1. SFType; 2. Targetgroup# (-1=all); 3. Attack score; 4. Defend score
163 SFtype & Itemtypes SFTypeDescription 1. SFType#; 2. Description
164 SFtype & Itemtypes SFTypeHP 1. SFType; 2. Targetgroup# (-1=all); 3. Attack HP; 4. Defend HP
165 SFtype & Itemtypes SFTypeMoveType 1. SFType#; 2. Type
166 SFtype & Itemtypes SFTypeMoveRedux 1. SFType#; 2. Redux
168 SFtype & Itemtypes SFTypeLogo 1. SFType#; 2. Logo#; 3. value
170 SFtype & Itemtypes SFTypeFuelUse 1. SFType#; 2. ForMove (10ap); 3. ForAttack (combatround)
181 SFtype & Itemtypes SetSFTypeVar 1. SFType; 2. Var#; 3. Value
231 SFtype & Itemtypes ModifyStockpiles 1. Under Historical Unit#; 2. Modifier (100=same, 50=half, 200=double) # The function will cap at maximum stockpiles. So you can specify 999 or more modifier to give unit max. and 0 to set stockpile to nothing.
234 SFtype & Itemtypes ModifyAttackScore2 1. SFType # (-1=all); 2. 1=offensive, 2=defensive; 3. Versus SFTypeGroup # (-1=all); 4. New value to be multiplicated with current value and divided by 100 1=Modifies AttackArt,AttackPower 2=modifies: AttackPowerDef.
235 SFtype & Itemtypes ModifyHitpoints2 1. SFType # (-1=all); 2. Versus SFTypeGroup # (-1=all); 3. New value to be multiplicated with current value and divided by 100
236 SFtype & Itemtypes ModifyAttackScore3 1. SFType # (-1=all); 2. 1=art attack score; 3. Versus SFTypeGroup # (-1=all); 4. New value to be multiplicated with current value and divided by 100 1=Modifies AttackArt
256 SFtype & Itemtypes ChanceOnDeathIfMakesHit 1. SFType#; 2. Percentage% 0% is will never die due to making a hit on enemy. 1=1% chance, etc...
336 SFtype & Itemtypes SFTypeFavorite 1. SFType; 2. Targetgroup# (-1=all); 3. Favorite score for regular attack; 4. Favorite score for art attack
337 SFtype & Itemtypes SFTypeArtPower 1. SFType; 2. Targetgroup# (-1=all); 3. Art Power
338 SFtype & Itemtypes SFTypeStat 1. SFType; 2. Stat Number; 3. New Value Stat Numbers: 1=weight, 2=carrycap, 3=canDoParadrop(0/1), 4=EP, 5=BlowBridgPts, 6=BasicSupNeed, 7=SupCarry, 8=ReconPts, 9=HidePts, 10=AntiSupplyPts, 11=AntiSupplyRange, 12=AnitSupplySea, 13=InitiativeAtt, 14=InitiativeDef, 15=Attacks, 16=StackPts, 17=RearArea(0/1), 18=ArtRange, 19=Fav.Target tries, 20=AA-range, 21=HitKill%, 22=HitRetreat%, 23=ArtilleryModSfTypeNr, 24=maxAttacked, 25=moveRedux
339 SFtype & Itemtypes SFTypeLandscapeCombatMod 1. SFType#; 2. LandscapeType# (-1=all); 3. Off Mod in percentage points. 100=noMod, 50=half, 200=double; 4. Def Mod in percentage points. 100=noMod, 50=half, 200=double
340 SFtype & Itemtypes SFTypeSetName 1. SFType#; 2. Name (if length>1); 3. ModelName (if length>1) Warning: Highly experimental if used together with model creation. Name changes the name of the current SFType. ModelName changes the name of upgrades or improvements from this sfType. The hardcoded algorithms should still remember the version and mark numbers no matter if you change the modelName.
341 SFtype & Itemtypes SFTypeReinforcementType 1. SFType; 2. ReinforcementType
4 Game SetWinner 1. RegimeNr
31 Game SetRuleVar 1. Rulevar #; 2. New Value; 3. Behind comma... 0=no action.. >0=divide new value by 100 to set a decimal.
153 Game ChangeDate 1. Day; 2. Month; 3. Year
177 Game SetTurnString 1. Short String if you set it to '' then it will not overrule the date or round. Keep the string short to make it fit.
178 Game SetRound 1. Round Do not use! It will screw with the statistics. Never set higher. You can only set lower then current round.
186 Game DateMode 1. 0=rounds, 1=dates; 2. days per round; 3. Shortname
225 Game ChangeDateAdd 1. add x Day; 2. add x Month; 3. add x Year
226 Game SetAllUnitReady 1. regime. -1=all Sets all units with max supply, ap and readiness.
248 Game SetExtraTab 1. Name of tab; 2. Event slot# generating message to be used; 3. tab# (1,2 or 3)
278 Game Screenshot 1. AreaSlot#; 2. Filename Please give the filename without extension. .jpg will be added automaticly. just 'test' will do. Or 'pic12'.
283 Game Popup 1. Message Causes a Windows Popup that halts all further event execution untill OK is pressed. Ideal for debugging.
350 Game HardcodedDC 1. Data1; 2. Data2; 3. Data3; 4. Data4 This is a hardcoded function. It is not meant for general use. And should be used by VR only. (For VR Weather Library => Data1=1,Data2=Lib Name,Data3=Mode(1=editor,2=new round))
50 Landscapetypes ReplaceLandscapeSprite 1. Landscape nr Actually loads a new PreHex graphic from the graphics directory. (takes text/DataString)
134 Landscapetypes ChangeLandscapeMoveCost 1. Landscape #; 2. MovementType #; 3. AP Cost
156 Landscapetypes ReduceLandInitialEntrench 1. LandscapeType (-1=all); 2. Percentage (100=same. 50=less >100=more)
259 Landscapetypes ChangeRoadTypeMoveCost 1. RoadType #; 2. MovementType #; 3. AP Cost
208 Officerpool CommanderPool 1. Historical unit ID#; 2. In Pool? 1=yes, 0=no; 3. new PP value (-1 = dont change)
227 Officerpool RemoveActiveOfficersFromStringlist 1. regime#; 2. stringlist ID Looks up the officer historical ID in column 0 and sets availability to 0 in column 1. Active officers are officers that are in the pool or on the map in a unit.
229 Officerpool RemovePeopleOfficersFromStringlist 1. people#; 2. stringlist ID Looks up the officer historical ID in column 0 and sets availability to 0 in column 1 if the officer has specified people#.
230 Officerpool RemoveFromOfficerPool 1. regime# (-1=all); 2. people# (-1=all); 3. VarType (-1=ignore condition); 4. =VarQty Removes any officers from the officerpool of specified regime who has the specified characeristics. You can deted vartype = varqty to tailormake catch a specific officer.
110 Historical Units AddHistoricalUnit 1. X; 2. Y; 3. Historical Unit ID; 4. Dispersion in Hex If Historical unit is a Model an instance of it will be created. If it is not it will be put on the map itself. If you set Dispersion to 0 all will go normal. Set dispersion>0 to simulate scatter effect on same sea/land type and regime type as selected for target hex. Set x=-1 to only create a new historical unit (based on specified model) and not place any unit on the map.
111 Historical Units RemoveHistoricalUnit 1. Historical Unit All units assigned to this exact Historical Unit will be removed.
119 Historical Units ChangeCommanderSkill 1. Unit#; 2. CombatMod +/-; 3. MoraleMod +/-; 4. StaffPts +/- Inrease or diminish the officers stats.
120 Historical Units ChangeHisTempValue 1. Unit# (-1= use hist.unit#); 2. TempVar#(1-5), 6=aiZoneListNr; 3. New Value; 4. Use Historical Unit# Keep in mind you can also use hisvars to store data. of which you have unlimited quantity. For aiZoneListNr only number above >0 are considered valid.
121 Historical Units ChangeCommanderDescript 1. His Unit ID#; 2. New Description
122 Historical Units ChangeCommanderOverlay 1. Unit#; 2. New overlay filename Reloads the overlay file for this commander. specifying an empty string '' will result in no overlay
123 Historical Units CommanderAddDeckCardUsingStringList 1. Unit#; 2. StringList CardList ID# Picks a weighted chance card from the stringlist in question. will not take doubles. will add text to description
124 Historical Units CommanderAddAutoEventUsingStringList 1. Unit#; 2. StringList EventList ID# Picks a weighted auto-event from the stringlist in question. will not take doubles. will add text to description
130 Historical Units GiveCommanderXP 1. Unit#; 2. XP to give or take +/-
131 Historical Units CreateCommander 1. Regime #; 2. Overrule Officer Pool StringList ID (-1=dont)
149 Historical Units RemoveTroopsForNextHistorical 1. Reinforcement group; 2. Loss % For each event you have to set the loss levels. These values are reset per event. If set any unit added with AddHistorical will suffer these losses.
150 Historical Units SetHistoricalCounter 1. Historical Unit; 2. New Counter Value
151 Historical Units SetHistoricalUnitHQ 1. Historical Unit; 2. New unit # HQ; 3. Historical Unit # HQ Sets all units that belong to this historical unit to the unit or historical unit HQ # specified.. Historical <= 0 means unit is used.
183 Historical Units MoveHistoricalUnit 1. Historical Unit #; 2. New X; 3. New Y; 4. Optional Historical HQ # If you specify >0 for optional HQ all units attached to the HQ will be moved. you can specify -1 for historical unit if you specify hq.
203 Historical Units SetHisVar (DEPRECIATED) 1. His.Unit ID#; 2. Type #; 3. Value; 4. Nato Counter (0= do not set)
204 Historical Units RemoveHisVar 1. His.Unit ID#; 2. Type #
205 Historical Units CommanderAddDeckCard2 1. Unit# (or -1); 2. Historical Unit# (or -1); 3. DeckCard#; 4. Percentage Chance % (or -1,-2,-3,-4,-5,-6) Either specify a normal unit# or a historical unit#. If instead of percentage you specify -1 your remove specified card if present, if you specifify -2 you remove all deck cards. if you specify -3 you'll remove all hand cards and all deck cards. If you specify -4 you'll only remove the hand card and not the deck card. If specify -5 you will not add any card but if the card is present set its chance to 0%. If -6 then you will also not add a card but if card is present set its chance to 100%.
206 Historical Units CommanderAddAutoEvent 1. Unit#; 2. AutoEvent#; 3. Percentage Chance % (-1=delete if present); 4. His.Unit ID overrule#
209 Historical Units ClearCommander 1. Historical Unit# (or -1); 2. Clear HandCards (1=yes); 3. Clear DeckCards (1=yes); 4. Clr Events,StaffSiz,Mormod,combatmod (1=yes) Allows you to clean all cards & events associated with a historical unit.
210 Historical Units ChangeCommanderSkill2 1. Historical Unit#; 2. CombatMod; 3. MoraleMod; 4. StaffPts Same as other function. But here the historical unit# instead of the unit# is targeted. And the setting is absolute not +/-.
241 Historical Units SetHisVar2 1. His.Unit ID#; 2. Type #; 3. Value; 4. SmallGfx (-1= no smallgfx) If a smallGfx is specified the value and the smallgfx will be displayed for officers.
251 Historical Units SetHistoricalUnitName 1. Historical Unit ID; 2. New name; 3. New short name
279 Historical Units SetHistoricalSmallGfx 1. Historical Unit ID; 2. New Small Gfx slot#
291 Historical Units SetHistoricalColor 1. Historical Unit ID; 2. Red modifier; 3. Green modifier; 4. Blue modifier Remember you cannot set the color using Historical unit colors, only the modifier to the regime or people color of the counter. For example -50 or +100.
307 Historical Units SetHistoricalRegime 1. Historical Unit ID; 2. Regime slot# Sets the historical to the correct regime.
22 Mods of movetype/unitgrouptype MoveTypeModifier 1. MoveType#; 2. Percentage of normal movecost (100%=normal)
23 Mods of movetype/unitgrouptype UnitTypeModifier 1. UnitType#; 2. Percentage of normal combat att/def (100%=normal)
55 Mods of movetype/unitgrouptype AntiSupplyRangeMod 1. MoveType#; 2. Percentage of current AP (100%=normal)
62 Mods of movetype/unitgrouptype OffensiveMod 1. X; 2. Y; 3. SfTypeGroup# (-1=all); 4. Absolute Modifier (0=none, -50 = -50%, +50 = +50%)
63 Mods of movetype/unitgrouptype DefensiveMod 1. X; 2. Y; 3. SfTypeGroup# (-1=all); 4. Absolute Modifier (0=none, -50 = -50%, +50 = +50%)
64 Mods of movetype/unitgrouptype OffensiveModByPeople 1. X; 2. Y; 3. People# (-1=all); 4. Absolute Modifier (0=none, -50 = -50%, +50 = +50%)
65 Mods of movetype/unitgrouptype DefensiveModByPeople 1. X; 2. Y; 3. People# (-1=all); 4. Absolute Modifier (0=none, -50 = -50%, +50 = +50%)
66 Mods of movetype/unitgrouptype OffensiveModByRegime 1. Regime # (-1=all); 2. People # (-1=all); 3. SfTypeGroup# (-1=all); 4. Absolute Modifier (0=none, -50 = -50%, +50 = +50%)
67 Mods of movetype/unitgrouptype DefensiveModByRegime 1. Regime # (-1=all); 2. People # (-1=all); 3. SfTypeGroup# (-1=all); 4. Absolute Modifier (0=none, -50 = -50%, +50 = +50%)
356 Mods of movetype/unitgrouptype MoveTypeTransportType 1. MoveType#; 2. Transport Type (0=none, 1=Transporter, 2=Attachable); 3. Mode (0/1=Truck, 2=Train)
358 Mods of movetype/unitgrouptype SetRegimeSetting 1. Regime Slot#; 2. Setting# 1=alternate card gfx; 3. Value
360 Mods of movetype/unitgrouptype AddUnitTextLog 1. Unit Slot#; 2. Text
73 Location(types) SetLoctypeDestruct 1. LocType#; 2. LandscapeType#; 3. Sprite #
116 Stringlists SetStringList 1. Stringlist ID #; 2. Row; 3. Col; 4. New Value
125 Stringlists AddStringList 1. Rows; 2. Cols Adds a whole new stringlist object to the game data. Use the CheckStringListLastID to get its ID, which you need to change or read anything from it.
126 Stringlists AddStringListCells 1. StringList ID; 2. Extra Rows; 3. Extra Cols If you specify 0 will NOT add anything. specify 1 for adding one row or col. You can add rows and cols at the same time. Rows are added at the bottom, Cols on the right.
127 Stringlists RemoveStringListRow 1. StringList ID; 2. Row Number
128 Stringlists RemoveStringListCol 1. StringList ID; 2. Col Number
179 Stringlists SortStringListID 1. StringListID#; 2. Column# to sort on; 3. 0=asc, 1=desc Remember first column is column 0. ASCENDING: highest at top. DESCENDING: lowest at top.
212 Stringlists ClearStringList 1. Stringlist ID # Delets all rows of this stringlist.
260 Stringlists ExportStringlist 1. StringListID#; 2. Filename Will save the stringlist data inside specified filename. File contents will be completely overwritten. Please supply a file extenstion like .txt in the name. Will be saved in the 'metadata' directory.
261 Stringlists Metrics 1. Custom string/numeric data 1; 2. Custom string/numeric data 2; 3. Custom string/numeric data 3; 4. Custom string/numeric data 4 Will use the URL in 2nd string of the metrics.txt to pass on this data.
262 Stringlists Key 1. StringListID#; 2. Key Name; 3. New Value Presumes a stringlist with in column 0 the key names and in column 1 the text values.
263 Stringlists KeyAdd 1. StringListID#; 2. Key Name; 3. Value to be appended at end of string Presumes a stringlist with in column 0 the key names and in column 1 the text values. Data is treated as STRINGS!!
265 Stringlists KeyAddNumeric 1. StringListID#; 2. Key Name; 3. Value to be appended at end of string Presumes a stringlist with in column 0 the key names and in column 1 the text values. Data is treated as NUMERIC.
280 Stringlists SetStringListQuick 1. Stringlist ID #; 2. Rows where Col0 is..; 3. Col; 4. New Value This Quick version of ExecSetStringList allows you to operate quickly if the col0 of the stringlist are ID numbers. Avoids you from having to loop through the whole thing.
286 Stringlists SetStringPart 1. Tempstring #; 2. Part #; 3. String/Value Sets specified part to the string/value specified.
287 Stringlists StringPartAdd 1. Tempstring #; 2. String/Value Adds a new subpart with string/value specified at the end of the tempstring#.
298 Stringlists CopyStringlist 1. From ID; 2. Too ID; 3. Number of columns; 4. Mode 1=clear&copy, 2=add. columns can be set to 99 or something very high to include all
310 Stringlists DoubleKey 1. StringListID#; 2. Col0 value; 3. Key Name; 4. New Value Presumes a stringlist with in column 1 the key names and in column 2 the text values.
311 Stringlists DoubleKeyAppend 1. StringListID#; 2. Col0 value; 3. Key Name; 4. Value to append Presumes a stringlist with in column 1 the key names and in column 2 the text values.
24 Miscellaneous WheaterColor 1. Red Component (0=no change, 255=full); 2. Green Component (0=no change, 255=full); 3. Blue Component (0=no change, 255=full) Changes the colour of the prehex sprite. But only of its core sprite not if its optional 64 border sprites.
192 Miscellaneous ReloadGraphic 1. Current filename; 2. New filename expert use only. part or whole of filename (current filename) is looked for in all loaded graphics and replaced by new filename. use only the filename itself like 'background2.png' for the file to be replaced. use only filename like 'background2b.png' for the string that replaces it.
45 DC1 AI AIConservative 1. Regime Nr; 2. Convervative.. 100% = normal >100% more defensive. <100 more aggressive
83 DC1 AI SetHistoricUnitMove 1. Historic HQ #; 2. Defend Defined Area #; 3. Attack Defined Area #; 4. Stance (1=def,2=norm,3=att)
84 DC1 AI ChangeAIPower 1. Regime; 2. X; 3. Y; 4. Power Points If positive power points given it is meant to help influence the behaviour of the AI. This way you can set reinforcements to a certain regime in the area that hex x,y is in. But you can also use this function to set negative powerpoints versus a regime to simulate immediate pressure and force the AI to keep a certain reserve in the area.
129 DC1 AI ChangeAIDefensive 1. Regime; 2. X; 3. Y; 4. Defensive Bonus % >0 is a percentual defensive bonus for defending this area for this regime. NEW AI ONLY
155 DC1 AI AIStance 1. Regime; 2. Stance (0=no overrule, 1=att, 2=def, 3=meeting) If 0 the regime with most powerpoints is considered the attacker. If 3 too, but if 3 then this regime also gets the meeting flag.
175 DC1 AI RewardPowerOn 1. X; 2. Y; 3. Power Above; 4. Multi If AI can get more then power above on X,Y coordinate. all pts above this treshold will be multiplied by multi and added to score. This gives AI incentive to get a certain build up here. so it must be able to hold it to get it.. This is only used in Init AI so if you use uberregime only the uberregime needs this setting. This setting is wiped clean after every AI has played. You thus need to set this in early turn event.
182 DC1 AI SetHistoricUnitToGroup 1. Historic HQ/Unit/Div #; 2. To Group with HQ/Unit/Div# in it This should be called in an 'AI Init Check' since it re-orders strategic groups (after makegroups) and before going into strategic analysis (findbeststrategy).
190 DC1 AI AICombatMoveMod 1. Regime #; 2. Combat Bonus; 3. Movement Bonus Combat bonus can be everything between 0-999%, movement bonus between 0-100%. If you set -1 for combat or move the bonus is not changed.
191 DC1 AI AIChangeRoleScore 1. SFType #; 2. AI Role # (0-49); 3. New score Allows you to change AI role scores ingame so to influence AI production
193 DC1 AI AIProductionResourceComplient (none) Will call the AI function that makes sure that production is research complient. If rulevar(875) is active this is called by AI after setting production. However if you script the production with events you might want to call this function add the end of that scripting in some scenarios or give the AI unlimited resources instead.
214 DC1 AI AI_SetTacticalScript 1. Historical Unit ID#; 2. Hex Target X; 3. Hex Target Y; 4. Attack Towards (1-6) -1=no attack
28 DC2 AI AI_SetAIVP 1. X; 2. Y; 3. Regime Nr#; 4. AIVP amount. 0(none) - 999 Remember that setting the name to nothing '' disables the extra tab. Also remember that the event called is supposed to generate 1 message only: no more, no less. The message contents should fit in a 1000x200 pixel area. Not setting the third parameter or to 0 results in tab#=1.
233 Library Execs CallFunctionByLibrary 1. Name of library; 2. Name of function to call Same as CallFunction, but only looks in specific library. This is to avoid double name issues.
237 Library Execs SetGlobalLibVar 1. Name of library; 2. Name of libvar; 3. New value Allows you to set a global text value-type libvar. This basically gives you unlimited alternative to gameslots that are excellent for modular design.
238 Library Execs SetHexLibVar 1. Name of library; 2. Name of libvar; 3. New value Uses ExecSetCardXY in the line before this call for specifiying the hex this operation is done on. You can only set numeric values to the map. This gives you basically unlimited data slots on map hexes.
242 Library Execs SetHistoricalLibVar 1. Name of library; 2. Slot# of historical unit; 3. Name of libvar; 4. New value Set a historical unit LibVar. Keep in mind its NOT! the ID asked but the slot number in the array of historical units. You can use this to change the LibVar of a historical unit or historical model. Since both use historical units data structure behind the scenes.
264 UDS SetUDStabText 1. UDS Text To set the UDS text to appear in a management tab that is selected by user.
266 UDS SetUDSpopupText 1. UDS Text; 2. UDS Popuptype To set the UDS text to appear in a popup. Popup Type 0+1 = regular text popup
305 UDS SetUDSbottomText 1. UDS Text To set the UDS text to appear in a bottom tab that is selected by user.
308 UDS ChangeLocationLISitem 1. Location slot#; 2. LIS item ID; 3. Qty; 4. Extra instruction Extra instruction<1 is ADD/SUBTRACT. Extra instruction 1 is OVERWRITE.
309 UDS ChangeUnitLISitem 1. Unit slot#; 2. LIS item ID; 3. Qty; 4. Extra instruction Extra instruction<1 is ADD/SUBTRACT. Extra instruction 1 is OVERWRITE.
312 UDS ClearLISpoints (none) Clear all temporary LIS points and free AP points. They are used by the hardcoded LIS_SetNetwork.
313 UDS SetLISpoints 1. Location slot#; 2. LIS Transport Mode ID; 3. (optional) Target ID; 4. Add Points LIS Points are added to the ID+Target combination. Put -1 if no target.
314 UDS SetLISfreeAP 1. Location slot#; 2. LIS Transport Mode ID; 3. (optional) Target ID; 4. Add Free AP LIS Free AP Points are added to the ID+Target combination. Put -1 if no target.
267 Random Related SetInterfaceCue 1. Cue Type Number Cue Type 1 = Exit Random Screen, go the scn. setup screen. 2 = Refresh everything
268 Random Related NewMapSize 1. Width in hexes; 2. Height in hexes; 3. Maploop (0=no,1=yes) Keep in mind first hex is 0,0. specifying width=1 and height=1 will result in a grand total of (1x1) 1 hex on map. width=4 an height=4 will give you 16 hexes. etc... Make sure to use even width for mapLoop enabled maps.
269 Random Related CopyHexToArea 1. From Library Name; 2. From Hex LibVar Name; 3. Too AreaSlot # Copies numeric values from libvar to areaslot
270 Random Related CopyAreaToHex 1. From AreaSlot #; 2. Too Library Name; 3. Too Hex LibVar Name Copies numeric values from libvar to areaslot
271 Random Related CopyAreaToArea 1. From AreaSlot #; 2. Too AreaSlot # Copies numeric values from one areaslot to another areaslot
272 Random Related AreaSet 1. AreaSlot#; 2. New Value; 3. Optional Second AreaSlot#; 4. Second Slot Value Set the values of all the hexes. If -1 is specified second areaslot is not used. If second areaslot is used only hexes with specified second slot value are changed. You can of course specify the same areaslot for the second to use this exec as a replace function.
273 Random Related AreaAdd 1. AreaSlot#; 2. Value Change +/-; 3. Optional Second AreaSlot#; 4. Second Slot Value Modifies the values of all the hexes. If -1 is specified second areaslot is not used. If second areaslot is used only hexes with specified second slot value are changed.
274 Random Related AreaExpand 1. AreaSlot#; 2. Value increase; 3. Optional Second AreaSlot# (or -2 for random mode); 4. Second Slot Value (or randomness 0-100) Value increase must be >0, 0 or <0. Any value in the areaslot >0 will be expand to neighbouring hexes with lower values and the new value of that hex will be old value +/- value change. Allows you to create distance maps. If -1 is specified second areaslot is not used. If second areaslot is used only hexes with specified second slot value are changed. If value change 0 is used the values are just copied into any neighbours with 0 value.
275 Random Related AreaRangeChange 1. AreaSlot#; 2. Minimum or equal value; 3. Maximum or equal value; 4. New value If value is beween min or max or equal than its changed for a new value. Ideal for creating a mask to be used as a second areaslot for another areaslot modifying exec.
276 Random Related AreaToStringlist 1. AreaSlot #; 2. Stringlist ID# Each UNIQUE value in the areaslots will be put in column 0 and the count of the number of hexes with that value in column 1.
277 Random Related FindBorders 1. AreaSlot#; 2. Value A; 3. Value B; 4. Border Mode Will set all values to 0 except for some that are set to 1 and that are those that are value A with a neighbour hex with value B. Value A can be a specific value or -1 for all values. Value B the same. Even if both values are set to -1 a border will not be detected if hex value and its neighbour value are the same. Only hexes with a value higher >0 are taken into consideration. BorderMode 1 is flag both value A and value B, BorderMode 2 is just flag value A hexes.
281 Random Related AreaJoin 1. Target AreaSlot#; 2. Source AreaSlot#; 3. Mode; 4. Percentage (100=advise) Mode = 1 is copy to target if higher. Mode = 2 is make average. The source value will be modified by percentage before applying mode and the operation.
282 Random Related AreaBlur 1. AreaSlot#; 2. Distance; 3. Percentage to blur; 4. Mode Mode=1 is all blur results are accepteble. Mode=2 only higher resulting values are exceptable
284 Random Related AreaBlur2 1. AreaSlot#; 2. Percentage to Blur; 3. Optional Second Areaslot#; 4. Value required at minimum Adaption of ExecAreaBlur. Uses Distance = 1 and mode that allows only lower results. It is meant to simulate erosion on land masses.
285 Random Related AreaDivide 1. AreaSlot#; 2. Divide by value; 3. Optional Second AreaSlot#; 4. Second Slot Value Modifies the values of all the hexes. If -1 is specified second areaslot is not used. If second areaslot is used only hexes with specified second slot value are changed.
288 Random Related SetShrowd 1. On(1)/Off(0) Switch shrowd on/off.
289 Random Related AreaMinMax 1. AreaSlot#; 2. Minimum value; 3. Maximum value Assures no value in area is below minimum or above maximum.
290 Random Related AreaRandomize 1. AreaSlot#; 2. Maximum negative randomize; 3. Maximum positive randomize; 4. Only randomize values above or equal value Changes the areaslot values based on random rolls.
292 Random Related MakeErosionAndRainMap 1. Stringlist ID for Planetary Data This is a hardcoded random generation function. Please ask for documentation how to use if necc.
293 Random Related MakeHeightMapBasedOnTectonicPlates 1. Stringlist ID for Planetary Data This is a hardcoded random generation function. Please ask for documentation how to use if necc.
294 Random Related MakeMountainsCorrectHeight 1. Stringlist ID for Planetary Data This is a hardcoded random generation function. Please ask for documentation how to use if necc.
295 Random Related MakeVegetation 1. Stringlist ID for Planetary Data; 2. Stringlist ID for Helper Table; 3. Stringlist ID for Translation Table; 4. Last call 0=no, 1=yes The last call sets the origLandscapes. and is the point were we should save the vegetation into them.
296 Random Related MakeZones 1. Stringlist ID for Planetary Data; 2. Stringlist ID for Vegetation Similarity Table; 3. Library name Random; 4. Library name Data This is a hardcoded random generation function. Please ask for documentation how to use if necc.
297 Random Related MakeBiosphereAndAtmosphere 1. Random Library Name; 2. Data Library Name This is a hardcoded random generation function. Please ask for documentation how to use if necc.
299 Random Related MakeBiosphereDetail 1. Random Library Name; 2. Data Library Name; 3. Linguistic Library Name This is a hardcoded random generation function. Please ask for documentation how to use if necc.
300 Random Related MakeBiosphereSimulation 1. Random Library Name; 2. Data Library Name; 3. Initial Call (0/1); 4. Number of rounds to simulate This is a hardcoded random generation function. Please ask for documentation how to use if necc.
301 Random Related MakeColonyLanding 1. Random Library Name; 2. Data Library Name; 3. Linguistics Library Name This is a hardcoded random generation function. Please ask for documentation how to use if necc.
302 Random Related MakeColonyHistory 1. Random Library Name; 2. Data Library Name; 3. Linguistics Library Name This is a hardcoded random generation function. Please ask for documentation how to use if necc.
303 Random Related MakeDissolutionHistory 1. Random Library Name; 2. Data Library Name; 3. Linguistics Library Name This is a hardcoded random generation function. Please ask for documentation how to use if necc.
304 Random Related MakeSurvivors 1. Random Library Name; 2. Data Library Name; 3. Linguistics Library Name This is a hardcoded random generation function. Please ask for documentation how to use if necc.
315 Random Related MakeListForLocationRequests 1. Data Library Name; 2. Zone ID or -1 for all This is a hardcoded random generation function. Please ask for documentation how to use if necc.
316 Random Related MakeListForLocationReturns 1. Data Library Name; 2. Zone ID or -1 for all This is a hardcoded random generation function. Please ask for documentation how to use if necc.
317 Random Related MakeFreeLocationReturns (none) This is a hardcoded random generation function. Please ask for documentation how to use if necc.
318 Random Related MakeProduction 1. Data Library Name; 2. Zone ID or -1 for all; 3. Free of cost 0/1 This is a hardcoded random generation function. Please ask for documentation how to use if necc.
319 Random Related MakeZoneEconomy 1. Data Library Name; 2. Zone ID or -1 for all; 3. Free of cost 0/1; 4. Game Setup 0/1 This is a hardcoded random generation function. Please ask for documentation how to use if necc.
320 Random Related MakeAssetPresentation 1. Data Library Name; 2. Asset Row Number; 3. Mode This is a hardcoded random generation function. Please ask for documentation how to use if necc. Mode 0/1=normal, >1=all the ones above this count, -1=all
321 Random Related HardcodedScript 1. Hardcoded Number >0; 2. Create Feedback Message 0/1 This is a hardcoded random generation function. Please ask for documentation how to use if necc. Mode 0/1=normal, >1=all the ones above this count, -1=all
322 Random Related MakeUnitUpkeepCheck 1. Data Library Name This is a hardcoded random generation function. Please ask for documentation how to use if necc. Mode 0/1=normal, >1=all the ones above this count, -1=all
323 Random Related MakeListForUnitRequests 1. Data Library Name; 2. historical unit ID or -1 for all This is a hardcoded random generation function. Please ask for documentation how to use if necc.
324 Random Related MakeFreeUnitSupply (none) This is a hardcoded random generation function. Please ask for documentation how to use if necc.
325 Random Related RemoveLIS 1. Loc nr; 2. To X; 3. LIS points This is a hardcoded random generation function. Please ask for documentation how to use if necc. Mode 0/1=normal, >1=all the ones above this count, -1=all
326 Random Related ResetForRandom 1. Random Library Name; 2. Data Library Name; 3. Reset Code This is a hardcoded random generation function. Please ask for documentation how to use if necc.
327 Random Related MakeCustomRandomPage 1. Random Library Name; 2. Data Library Name; 3. Custom Page ID This is a hardcoded random generation function. Please ask for documentation how to use if necc.
328 Random Related MakeStoryGeneration 1. Mode.. 1<=early, 2=late; 2.; 3. This is a hardcoded random generation function. Please ask for documentation how to use if necc.
329 Random Related HardcodedStory 1. tv0; 2. tv1; 3. tv2 (tempvar4); 4. tv3 (tempvar5) This is a hardcoded random generation function. Please ask for documentation how to use if necc.
330 Random Related SetDssDominant 1. Dominant ID (or -1) This is a hardcoded random generation function. Please ask for documentation how to use if necc.
331 Random Related HardcodedDecision (none) This is a hardcoded random generation function. Please ask for documentation how to use if necc.
332 Random Related MakeStartOfRound (none) This is a hardcoded random generation function. Please ask for documentation how to use if necc.
333 Random Related MakeCloseTurn (none) This is a hardcoded random generation function. Please ask for documentation how to use if necc.
334 Random Related MakeStartTurn (none) This is a hardcoded random generation function. Please ask for documentation how to use if necc.
342 Random Related CustomDataImport 1. Stringlist ID; 2. Data Import Mode 1 = Basic Story (Model Alpha).
343 Random Related SetLogic 1. Flag Stringlist ID; 2. Flag Instructions Stringlist ID; 3. Logic String This is a hardcoded random generation function. Please ask for documentation how to use if necc.
344 Random Related SetWholeLIS (none) This is a hardcoded random generation function. Please ask for documentation how to use if necc.
345 Random Related MakeLateStartTurn (none) This is a hardcoded random generation function. Please ask for documentation how to use if necc.
346 Random Related HardcodedSet 1. type; 2. custom 1; 3. custom 2; 4. custom 3 This is a hardcoded random generation function. Please ask for documentation how to use if necc.
347 Random Related MakeEarlyCinematics (none) This is a hardcoded random generation function. Please ask for documentation how to use if necc.
348 Random Related MakeLoadGameEarly (none) This is a hardcoded random generation function. Please ask for documentation how to use if necc.
349 Random Related SuperImposeMessage 1. text Heading; 2. text Small This is a hardcoded random generation function. Please ask for documentation how to use if necc.
352 Random Related MakeHardcodedSFTypeMods 1. SFType Slot# This is a hardcoded random generation function. Please ask for documentation how to use if necc.
357 Random Related UdsFileOps 1. 1=Save, 2=Load; 2. Filename Saves the UDS keys. Loads the keys in TempUDS
361 Random Related InitialDataCloneMoment 1. Mode
38 — -Obsolete- 1. Regime Nr; 2. People Nr (-1=all); 3. % morale loss; 4. %chance per unit
85 — OBSOLETE 1. HQ; 2. Area
86 — OBSOLETE 1. HQ; 2. Area
87 — PNSOLETE 1. HQ; 2. HQ
88 — OBSOLETE 1. HQ; 2. HQ
160 — OBSOLETE 1. SFType; 2. Hitpoints

This doc was generated from extracting data from Shadow Empire version 1.32a on 2026-06-05 06:56 UTC.