Supreme Ruler Wiki
Advertisement

Supreme Ruler 1936 builds upon the existing events system but adds a number of new tools

Note: New event types may be added throughout the development phase.  Watch for section headers.

In the SCENARIO directory, look for any file "scenario_name.csv"

The &&SEVENTS section is preceeded by a row of headers that identify the values used.

Columns are as follows...

Data Element Notes
_ID Event's sequential ID number (used for conditional testing)
eventtime Time slice (1440 per day) to trigger event
eventtimewind Window of time in slices - random - 0 to always trigger on-time. Added at time of import.
eventpriority Events with a higher priority will occur first if in the same time slice.  -99 to +99 (default 0)
eventid Number of event to do
eventparam Data Parameter for Event
eventdbregion Database Region # for this event; -1 to use SinglePlayer local player (-1 not MP sync compatible)
eventotherdbregion Database Region # for other region in this event (ie vs who, to who, etc).

SR2030/GRE: For some events, otherdbregion 0 (zero) means 'all regions'. When used, otherplayer flags are NOT tested.

eventbnotally Flag: Do not trigger if allied to otherplayer; if no otherplayer# then if allied to anyone
eventbnotneutral Flag: Do not trigger if neutral; if no otherplayer# then if neutral to all
eventbnotwar Flag: Do not trigger if at war; if no otherplayer# then if at war with anyone
eventbnotifhuman Flag: Do not trigger if region is human (ignored during FF/Day0 events; only checked regular time)
eventbnotifotherhuman Flag: Do not trigger if other region is human (ignored during FF/Day0 events; only checked regular time)
eventparami[4] Up to four additional integer parameters (ie bodyfills)
eventparamf[4] Up to four additional float parameters (ie bodyfills)
eventballowdead Flag: Allow Event for Dead region.  If not set, then either Region and/or OtherRegion being dead will prevent event.
eventbdoalways Flag: Do event even if 'noevents' set on either region (ie previously  colonized or decolonized or dead region gets noevents set)
eventbpersist Flag: Event will persist once time reached, runs every slice until event is successful (ie condition met)
eventpersistcount Amount of time (slices) to continue testing a persist event once it has been reached (1 slice = 1 minute, 1440 per day)
eventbonlyff Flag: Only process event in Fast Forward Mode
eventbonlyreg Flag: Only process event in regular time mode (not Fast Forward)
eventbnotifMP Flag: Only process event in Single Player (not in MultiPlayer)
eventstatus Internal/Engine Use (not imported); For Object Use: 0: ongoing; 1: Success; 2: Failure
eventconditional _ID number of event that must have happened / been true for this event to trigger (if only one condition test, must be put here)

If number does not exist, will be seen as false.

eventconditional2 _ID number of additional event that must have happened / been true for this event to trigger.  If number does not exist, will be seen as false.
eventbcond2or Flag: Either conditional ID can be true for event to be true (otherwise second condition is AND)
eventbcondnot Flag: Reverse (logical not) final Condition Test result (used by Condition Test event only)

Example[]

This is what it would look like in the file:

324000, 43200, 17, 634, 2303, 2306, False, False, False, False, False, , , , , , , , ,

Breakdown of the above example.

eventtime eventtimewind eventID eventparam eventdbregion eventotherdbregion eventbnotally eventbnotneutral eventbnotwary eventbnotifhuman eventbnotifotherhu eventparami0 eventparami1 eventparami2 eventparami3 eventparamf0 eventparamf1 eventparamf2 eventparamf3 eventballowdead eventbdoalways eventbpersist eventbonlyff eventbonlyreg eventbcond2or eventbonlyMP eventconditional eventpriority eventconditional2 eventpersistcount eventbcondnot eventbresvd1 eventbresvd2
324000 43200 17 634 2303 2306 False False False False False                                            

Event ID Listing[]

# Event Main Param Additional Params Notes
1 Send Email/News Email/News #
  • i0-i3,
  • f0-f3: Bodyfills sent to email msg
If no 'otherregion', or email createtype is not 2/AI, then sent from minister

Email params are regionfrom#, regionto# if i0/i1 is 0

To pass a location param, need to use formula:

Location hex: (y * 65536 + x), Set news item to city name, set value in i0 of event.

2 Declare War Email/News # (optional)
  • i0: Set provocation reason (bitmask):
    • 1: Incurred By
    • 2: Fired on By
    • 4: Unprovoked Attack By
    • 8: Other Provocation By
  • i1:
    • 0 or 2: Do for all regions alive/dead
    • 1: Do for living regions only
  • f0: Addition to belli before declare done
Minister will send War Declared on Us email automatically; mainparam is optional additional email

Not done if already at war

Email params are regionfrom#, regionto#

If dbotherregion is 0 and i1 > 0, then will do all regions

3 Force Neutral Email/News # (optional)
  • i1:
    • 0 or 2: Do for all regions alive/dead
    • 1: Do for living regions only
Cancel Alliance/transit/los or end War; To send a Peace offer use the 'Send Diplomatic Offer' instead

Email params are regionfrom#, regionto#

(Now does both ways)

If dbotherregion is 0 and i1 > 0, then will do all regions

4 Force Alliance Email/News # (optional)
  • i1:
    • 0 or 2: Do for all regions alive/dead
    • 1: Do for living regions only
Force Alliance/transit/los; To send a Alliance offer use the 'Send Diplomatic Offer' instead

Email params are regionfrom#, regionto#

(Now does both ways)

If dbotherregion is 0 and i1 > 0, then will do all regions

5 Treaty Set/Reset Treaty Number
  • i0: 0=Reset (Cancel), 1=Set;
  • i1: 0=No Effects, 1=Approval Effects,
  • i2: 0=Two Way Treaty, 1=One Way Only
Forces a treaty (one way or both ways)

If one way, dbregion is lesser region... (or this is the region that will list the one-way treaty, so otherdbregion can do the treaty with dbregion)

If dbotherregion is 0 then will do all regions

6 Send Diplomatic Offer Treaty Number

(or 0)

(-ve for 'Cancel')

  • i0: Tech Design # or 0
  • i1: Unit Design # or 0
  • i2: Product # offer 0-10
  • i3: Num Daily Payments ($ and Prod)
  • f0: Offer Cash (Value in dollars)
  • f1: Ask Cash (Value in dollars)
  • f2: Offer Prod Quan (total)*^
  • f3: Ask Prod Quan
  • Treaties with this are both ways
  • If Treaty already exists/cancelled, then this event is ignored and is set FALSE.
  • Continuous payments not allowed
  • Cannot Ask & Offer Products at same time
  • If Day 0, this is a forced accept
  • Use Day 0.25 etc to avoid first day force
  • *^Offer / Ask Product. Quantities are TOTAL... not the per day amount.  (so if you want 90 day and 5/day - do 90x5=450 NOT 5)
7 Send Diplomatic Treaty Offer Email/News # (optional)
  • i0: Treaty # to offer; -ve to Revoke
  • i1: Treaty # to request; -ve to Revoke
  • i2: Product # offer 0-10
  • i3: Num Daily Payments ($ and Prod)
  • f0: Offer Cash
  • f1: Ask Cash
  • f2: Offer Prod Quan
  • f3: Ask Prod Quan
  • Treaties with this can be one way
  • Supports asking for 'Cancel Treaty'
  • If Treaty already exists/cancelled, then this event is ignored and is set FALSE.
  • If Day 0, this is a forced accept
  • Use Day 0.25 etc to avoid first day force
  • Won't send if treaty already in place

Email params are regionfrom#, regionto#

8 Surrender/ Elimination Email/News # (optional)
  • i0: Type of elimination
    • 0=Normal Elimination/Surrender
    • 1=Group/Unify ,
    • 2=Colony
  • i1: 1=Loyalty Merge (Group/Unify only)
  • i2: 1=Research Merge (Group/Unify only)
  • i3: 1=Preserve supply (FF surrender)
To be Used for Country Mergers as well

Other Region = Who to Surrender to, or 0 for 'Elimination' (can't use '0' for Group or Colony)

1-Group/Unify is NOT annex... it is for startup map, unification votes, friendly grouping (ie Anschluss).

If not 'Group/Unify', then standard Surrender will be used and Region Falls email will be generated, unless 'preserve supply' set (use this in FF!)

Email params are regionfrom#, regionto#

9 UN Diplomatic Offer Units

(United Nations / League of Nations)

Unit Design #
  • i0: Quantity
  • f0: Amount of cash to Request
Will be sent to bases/capital

This Event does not issue Newsitem 473 ('UN Supplied Units...' news)

10 Create Units Unit Design #
  • i0: Quantity
  • i1: 0=Reserve; 1=Deployd; 2=Dep/Supplied; 3=Dep/Strong; 4=Begin construction 5=stratpool
  • i2: Map x-location (NOT GR)
  • i3: Map y-location (NOT GR)
  • f0: Number of hexes from home planet (GR ONLY)
  • f1: Direction from planet 0-5 (GR ONLY)
  • f2: Battlegroup ID
  • If no location is provided, will be sent to "WM Delivery Base", or capital
  • Default Deployed (1) units are without fuel or ammo
  • 'Deployed/Strong' (3) creates special High Efficiency/Experience units
  • Command unit - #6001
11 Set a Victory Hex Email/News # (optional)
  • i0: Map x-location
  • i1: Map y-location
Replaces any prior victory hex

Note that currently the entire game has only one victory hex (not per-player) GR/SRNG: If no hex location, then Capital of 'Other Region'

GR: if i0 is -1, then 'Home Planet'

12 Set AI-Request Request Type [3]
  • i0: Importance 0-10000
  • i1: Number of Units Requested
  • i2: Map x-location
  • i3: Map y-location
AI Requests are processed then deleted.  See also Event 68.

AI Request types:

GR/SRNG: If no hex location, then Capital of 'Other Region'.

(GR: If Space AI Request, then Home Planet)

13 Set Defcon (Alert) Level New Defcon Level 0-4
  • Requires Defcon Reversed Number: 0=Peace, 4=War
  • Will prevent invalid defcons due to war/peace.
14 Change Relationships Email/News # (optional)
  • i0: 1=Set Diplo as ABSOLUTE value (otherwise just adjust +/- in float values)
  • i1: 1=Set Civ as ABSOLUTE value (otherwise just adjust +/- in float values)
  • i2: 1=Set Belli as ABSOLUTE value (otherwise just adjust +/- in float values)
  • i3: 1=Apply to BOTH regions (otherwise just 1st)
  • f0: Diplo Relations Value
  • f1: Civilian Relations Value
  • f2: Belli Value
  • Diplo and Civ Relations are usually in -1.0 to +1.0 Range (though may be higher/lower)
  • Belli is usually in 0.0 to 1.0 Range (though may be higher)

Email params are regionfrom#, regionto#

15 Adjust Treasury
  • f0: Amount (+ve or -ve)
Gives or takes away money
16 Adjust Product Stock Which Prod# 0-10
  • f0: Amount (+ve or -ve)
  • f1: if >0 then set as the product stock value
Gives or takes away product stock, resources
17 Set War Email/News # (optional)
  • i1:
    • 0 or 2: Do for all regions alive/dead
    • 1: Do for living regions only
Sets a war without any other countries relationships changing - no approval effects, no forced emails, nothing.

If dbotherregion is 0 and i1 > 0, then will do all regions

18 Independence Email/News #
  • i0: i0: New Leader #; if 0 then random
  • i1: New govtype (1=Democ, 2=Monarchy, 3=Comm, 4=Dictator, 5=Theocracy)
Colony will declare independence from its parent.

No effect if no longer a colony.

'otherregion' can be specified for 'NOT' conditions (doesn't have to be parent etc)

Email is sent with region#, parent# params

19 Coup d'etat Email/News #
  • i0: New Leader #; if 0 then random
This is a change of leadership by the military.  So the leader changes, the gov't is a military dictatorship, and it MAY be funded by an outside source - the 2nd region field, which would draw this country closer to that source in both sphere and relations.  (Generic Email is 570)

Email param is region#

20 Leadership change Email/News # (optional)
  • i0: New Leader #; if 0 then random
  • f0: shift in sphere (or 0) (added to current)
Deaths, etc...  This is so that specific leaders can be put in charge at specific times. Will coincide with an appropriate newsitem.  Use Event32 for Elections.

Email param is region#, selected leader #

21 Civil War

(Not Implemented except for f0)

Email/News # (optional)
  • i0: New Leader #; if 0 then random
  • i1: New govtype (1=Democ, 3=Comm etc)
  • f0: shift in sphere (or 0) (added to current)
Insurgency taken to the next level, where land is being captured by an opposition force to the government.  If there is a 2nd region, then that mean this region supported the Civil War and should get a relationship and sphere bonus if successful.

Email param is region#

22 Research Email/News # (optional)
  • i0: Tech ID to give finished
  • i1: Tech ID to start in queue
  • i2: Unit ID to give finished
  • i3: Unit ID to start in queue
Gives a Region a Specific tech at a specific time (includes prerequisites)

Does not trigger regular discovery emails.

In FF, will do %age queue on date, prereqs set known

Email param is region#, tech#

23 Deployment (Not Implemented) Class #
  • i0: Quantity
  • i1: Not used
  • i2: Map x-location
  • i3: Map y-location
Specific Units moved to specific theatres and battlezones.  Example is the deployment of nuclear launchers and missiles to Cuba for the Cuban Missile Crisis? (GG: Use Create unit for that one)
24 Change Approvals Email/News # (optional)
  • f0: change in DAR or 0
  • f1: change in MAR or 0
  • f2: change in WM approval
0.90 is 90% of previous value (ie DAR 20% to 18%)

1.2 is 120% of previous (up 20%, ie DAR 20 to 24)

Can be up or down.

Email param is region#

25 Theatre Settings Email/News # (optional)
  • i0: Theatre priority, -1 for no change
  • i1: Theatre focus, -1 for no change
  • i2: Map x-location
  • i3: Map y-location
Priority for the country listed, if 0 then for hex owner

Military Priority:  0 to 3 (none to high) - 1 = default

Military Focus:

1=Defensive, 2=Balanced (Default), 3=Offensive

GR/SRNG: If no hex location, then Capital of 'Other Region'

GR: if i2 is -1, then 'Home Planet'

26 Flag Change Email/News # (optional)
  • i0: New Flag #
New Flag

Email param is region#

27 Country Name Change Email/News # (optional)
  • i0: Set alternate name 0-2
Change region name to 'altregionname' 0 / 1 / 2

Must be included in CVP file (0/1/2 in the event is reflective of the names associated in the CVP. "Korea, United Korea, Korea Republic" would be 0/1/2 respectively seperated by the commas.)

28 City Name Change

(Not Implemented)

Email/News # (optional)
Old Name to New - No Newsitem for this event

GG: Issue: No source for text string of new name

29 Capital Move Email/News # (optional)
  • i0: Map x-location
  • i1: Map y-location
Location to move capital to; only successful if new location belongs to region.

Note: This event happens even if no capital move set

30 Change Leader Profile Email/News # (optional)
  • i0: Primary Race
  • i1: Secondary Race
  • i3: religionstate
  • F0: fanaticism
Change to the default settings in the region database for a leader ex. South Africa Caucasian till the end of Apartheid.  This does not automatically do a leadership change to select a new leader that matches new profile.
31 Change Gov't Type Email/News # (optional)
  • i0: New Leader #; if 0 then random
  • i1: New govtype (1=Democ, 2=Monarch, 3=Comm, 4=MilDict, 5=Theocracy, 6=Colony)
  • i2: New govtitle (-1 from govtitle index, ex. 1=president)
  • f0: shift in sphere (or 0) (added to current)
Changes the Government type cleanly, without civil war.

So the leader changes, and it MAY be funded by an outside source - the 2nd region field, which would draw this country closer to that source in both sphere and relations.

32 Election Leader Change Email/News # (optional)
  • i0: New Leader #; if 0 then random
  • i1: # of days to next election; 0= 4 years
  • f0: shift in sphere (or 0) (added to current)
Similar to Event20 but this sets the next election date (for democracies).  Default is to set 4 years away.

Email param is region#, selected leader#

33 BattleZone Setting Email/News # (optional)
  • i0: Battlezone priority, -1 for no change
  • i1: Battlezone focus, -1 for no change
  • i2: Map x-location
  • i3: Map y-location
Priority for the country listed, if 0 then for hex owner

Military Priority:  0 to 3 (none to high)

Military Focus:

1=Defensive, 2=Balanced (Default), 3=Offensive

GR/SRNG: If no hex location, then Capital of 'Other Region'

GR: if i2 is -1, then 'Home Planet'

34 Create Facility Facil Design #
  • i0: Edge if avail # (0-5), default 0
  • i1: 0=Start Constr, 1=Full Strength
  • i2: Map x-location
  • i3: Map y-location
Facility is created, with appropriate complex if needed

If x/y are zero, then auto-locate

Done only if hex=eventregion (or its colony),

if eventregion=0 then for hex owner

In FF with Start Constr, will set %age from date.

35 Influence Change Email/News # (optional)
  • f0: +/- change to world integrity of nation
  • f1: +/- change versus other regions
  • f2: +/- change in other region belli
    • -ve for worse (higher) belli
  • f3: 1.0: only in our sphere, -1.0: only othsph
    • 0.0 for entire world; partial ok
    • Only affects f1/f2
Signifies an event that has a significant +/- effect on a country's world wide Influence (ex. Kennedy creates Peace Corp gives US a slight influence bump)

Values given in actual %age +/-; -ve is bad/worse

Our sphere/other sphere only with other region f1/f2

36 Damage Hex Facilities

(full hex)

Email/News # (optional)
  • i0: Map x-location
  • i1: Map y-location
  • f0: Amount of damage 0.0 - 1.0 (0-100%)
100% (1.0) is completely eliminated, 99% or less leaves damaged.  All facilities in hex are damaged.

(Must have hex location; not GR compatible)

37 Minister Priority Email/News # (optional)
  • i0: Cabinet Department
  • i1: Priority # or Lock #
  • i2: 0=Off, 1=On, 2= Lock Off, 3= Lock On
0=Resource, 1=Research, 2=Finance, 3=State, 4=NotUsed, 5=Defense
38 Strategic Pool Launch Email/News # (optional)
  • i0: level 0-3 (25%-100%)
  • i1: Bitmask of Strategic Targets, or 0 for all
    • (0x1 urban, 0x2 Industry, 0x4 Military, 0x8 Water, 0x10 Bridges)
  • i2: Bitmask of industries to target, or 0 for all
    • (0x1 Agri etc etc)
Region is who pushes Red Button

If there is an 'otherregion', will launch against them, otherwise will launch against all enemies.

39 Military Buildup Email/News # (optional)
  • i0: 1: Deploy all units
Trigger AI region to Start military buildup and attack preparation (deploy all units if i0, increase alert etc); Optional vs region for target of buildup
40 Loyalty Annex Email/News # (optional)
  • i0: Set Capital x-location
  • i1: Set Capital y-location
  • i2: Bitmask of optional choices
    • 0x01: Make 2nd region colony of dbregion
    • 0x02: Do not scrap units in reserve
    • 0x04: Deploy all units in reserve
  • I3: Set 2nd region Govtype if not 0
Surrenders an area of a region based on Loyalty, to another region.  First region is region surrendering, 2nd region is to.  (2nd region back to life if needed)

If dbregion is zero, then force-transfer to other regardless of owner

Change capital if i0/i1 set (ie for back-to-life)

41 Damage Single Facility

(single facility)

Email/News # (optional)
  • i0: Map x-location
  • i1: Map y-location
  • i2: Facil Design #
  • f0: Amount of Damage - 0.0-1.0 (100%)
If x/y are zero, then auto-locate

Use 1.0 to remove Facility (100% damage)

Done only if hex=eventregion, if 0 then for hex owner

42 Create Transportation 0: Road, 1:Rail
  • i0: Start Map x-location
  • i1: Start Map y-location
  • i2: End Map x-location
  • i3: End Map y-location
  • f0: 0.0 - start constr, 1.0 - full str (no tween)
Done only if hexes=eventregion,

if Region 0 (UN) then hex owner

(Not GR compatible)

43 Transfer BZ Owner Email/News # (optional)
  • i0: Map x-location
  • i1: Map y-location
All hexes in battlezone owned by dbregion are transferred to otherdbregion

(hex is used to determine what BZ to use).

If dbregion is zero, then force-transfer to other regardless of owner

GR/SRNG: If no hex location, then Capital of 'dbRegion'

GR: if i0 is -1, then 'Home Planet'

44 Transfer Hex Owner Email/News # (optional)
  • i0: Map x-location 1 (top left)
  • i1: Map y-location 1
  • i2: Map x-location 2 (bottom right, or 0)
  • i3: Map y-location 2
  • f0: Greater than 0 = can transfer WM hexes
Transfer owner of single hex owned by dbregion transferred to otherdbregion

If dbregion is zero, then force-transfer to other regardless of owner

  • loyalty does not transfer.
  • Will not transfer WM hexes

i0, i1 - starting hex (top left corner of box)

i2, i3 - ending hex (bottom right corner of box)

(Not GR Compatible)

45 Condition Test Email/News # (optional)
  • i0: Condition To Test (#)
  • i1 etc: Condition Parameter
  • f0 etc: Condition Parameter
Test a Condition.

Event ID set to 'True' if Condition met.

Email only sent if Condition met.

See Condition List Below

46 Trigger Victory/Loss dbRegion is 'victorywho' region
47 Resource Change Email/News # (optional)
  • i0: Resource #
  • i1: Amount of change (ie 1, -1, etc)
  • i2: Map x-location
  • i3: Map y-location
Resource levels are 0-3 for each product;

capped to max/min

48 Make Region Alive Email/News #
  • i0: Set Capital x-location
  • i1: Set Capital y-location
  • i2: if set to 1, will keep current leader
Takes a region that is 'not alive' and makes them alive.  They must get territory by day end or they will not stay alive.  (Via BZ or Hex ownership transfer).

If Capital not set, then prior or largest city used.

Do not apply to WM region or it will break the map.

*** MUST SET ALLOW FOR DEAD CHECKBOX.

49 Break All Treaties Email/News #
  • i0: 0=Both; 1=Treaties only; 2=Trades only
  • i1: 0=No Effects, 1=Approval Effects,
  • i2: 0=Two Way Treaty, 1=One Way Only
Break All Treaties and/or Trades between regions

If dbotherregion is 0, then will do all regions

50 Build Unit

(Not Implemented)

(requested by Dax - Jan, 2013 - put here as new event, or modify "Create Units" event to allow for starting construction) ,,, create units = i1 - 4... in yellow.
51 Send Espionage Mission
  • i0: Espionage Mission Type
    • 0: Recon
    • 1: Espionage
    • 2: Counterintel
    • 3: Sabatoge
    • 4: Cyber Attack
    • 5: Assassinate
  • i1: Hex X Location
  • 12: Hex Y Location
  • i3: if 1 will be instant success
52 Adjust Espionage Priority And Focus For Region
  • i0: Espionage Priority (0-3)
  • i1: Espionage Focus
    • 0: Recon
    • 1: Espionage
    • 2: Counterintel
    • 3: Sabatoge
    • 4: Cyber Attack
    • 5: Assassinate
    • 6: Idle(None)
53 Shift/Set Sphere Email/News # (optional)
  • I0: 0=Set dbregion only; 1=Set all regions
  • I1: 0=Set Both; 1=Gov; 2=Civ
  • f0: shift in sphere (or 0) (added to current)
  • f1: shift in sphere (or 0) (Set Actual Value)
Sphere settings from -1 (Axis) to +1 (Allies)

If both 0, then sphere value set to 0

54 World Market (UN / United Nations / League of Nations) change Email/News # (optional)
  • i0: 0=no change; 1=join; 2=leave
  • i1: =1 to set WM approval as ABSOLUTE
  • f0: WM approval change (or absolute)
55 AI Stance Email/News # (optional)
  • i0: Load AI Agenda #; -1 for no change
  • i1: Set AI Stance; -1 for no change
  • i2: 1/0 for allow AI Theatre transfers, or -1
AI Agendas to be defined later...

AI Stance: 0=Normal; 1=Passive, 2=Defensive; 3=Aggressive; 4=Unpredictable

(AI Stance also changes mil initiative all branches)

(AI Theatre transfer allows AI to respond to AI Req's beyond usual adjoining theatres)

56 AI Buildups Email/News # (optional)
  • i0: Military Buildup (0/1 False/True)
  • i1: Industrial Buildup (0/1)
  • i2: Set Naval Invasion Prep (0/1/2)
  • i2: Set Planetary Invasion (3/4/5)
  • i3: Set Forces Plan (0-4, 2=stable)
Settings -1 for no change

Naval Invasion 1=prep, 2=stage; 0=cancel Planetary Invasion (GR) 3=Space Prep Mode, 4=Stage mode, 5=Launch Mode

Forces plan 0:decrease, 2:Stable; 4: Increase

57 AI Attack Email/News # (optional)
  • i0: Launch Attack against other region; 1=land, 2=naval, 3=Space(GR)
For Naval attack, region must be in naval prep/stage mode.
58 Remove Units

(Not Implemented)

Email/News # (optional)
  • i0 = 0 - remove all units
  • i0 = 1 - remove land units
  • i0 = 2 - remove air units
  • i0 = 3 - remove naval units
  • i1 = 0 - everywhere
  • i1 = 1 - own territory and own colonies only
  • i1 = 2 - allied/neutral/enemy territories only
  • i1 = 3 - in battlezone defined by i2 and i3
  • i1 = 4 - in theater defined by i2 and i3
59 Send Objective Email/News #
  • i0-i3,
  • f0-f3: Bodyfills sent to email msgatus
If no 'otherregion', or email createtype is not 2/AI, then sent from minister

Email params are regionfrom#, regionto# if i0/i1 is 0

To pass a location param, need to use formula:

Location hex: (y * 65536 + x)

Event stays FALSE until Email is Accepted, unless email has no 'Accept Objective' (then it starts TRUE).

Objective email with "No" or "Disagree" will delete obj

- Wording 2/3 can also be supported for alt texts on objectives -

  • w1 - new/current
  • w2 - success
  • w3 - failure

Wording2 and Wording3 (success/failure) do NOT support parameters (%s), so must be worded not to use them !

60 Set Event T/F Email/News # (optional)
  • i0: Event Sequence ID
  • i1: T/F (1/0) (Using -1 will leave status alone)
  • i2: Set Persist Count to X (slices/minutes)
Set a different Event to T/F by its ID

Will also reset a persist count on it

(default set to 0 and turn persist flag OFF ) (-1 will turn ON persistent flag)

61 Set Status

(Event / Objective)

Email/News # (optional)
  • i0: Event Sequence ID
  • i1: Status:
    • 0: "CURRENT" (ongoing);
    • 1: "COMPLETE" (success);
    • 2: "FAILED" (failure)
  • i2: Additional Sequence ID to set (optional)
  • i3: Additional Sequence ID to set (optional)
Set a different Event/Objective Status by its ID

(Any emails/omn triggered by original Event will be deleted when original Event set Complete or Failed - does not affect email type Objective.)

62 Adjust Victory Points Email/News # (optional, use 2363 for generic objective success sound)
  • i0: Points add/subtract from current
  • i1: Points set actual value
  • i2: if =1 then do this to ALL regions
    • =2 do this to ALL ALIVE regions
    • =3 Reset ALL to Owned Points
    • =4 Accumulate ALL Owned Points
(for vicpoints total of Region)

If both 0, then vicpoints set to 0 (except if i2=4)

Owned points:  all regions will have their on-map owned victory points re-counted (i2-3 set to, or i2=4 add to existing points total)

63 Set Victory

Points

Email/News # (optional)
  • i0: Map x-location
  • i1: Map y-location
  • i2: Number of points (actual value)
  • i3: Number of points add/subtract
Set or adjust Victory Points for a specific hex.

Hex MUST have an upgrade (facil or town)

If no upgrade, then event False and no email sent.

(if i3 is not zero, then i3 is done and  i2 is ignored)

GR/SRNG: If no hex location, then Capital of 'Other Region'

GR: if i0 is -1, then 'Home Planet'

64 Apply Victory Points Email/News # (optional)
  • i0: Element to apply to
  • i1: Element second part
  • i2: Number of points (actual value)
  • i3: Number of points add/subtract
i0: 0= All Capitals; 1=Parent Capitals (no colonies);

2= All Ug/Unit type #i1 (Command unit is # 6001)

3= All Unit in Class #i1 to apply to

If eventdbregion set, then ONLY done for that region

65 Set Objective Hex Email/News # (optional)
  • i0: Map x-location
  • i1: Map y-location
Set the visual 'objective marker' on map

Use 0,0 to reset.  Only 1 marker at a time.

(objective hex is per game, not per player)

GR/SRNG: If no hex location, then Capital of 'Other Region'

GR: if i0 is -1, then 'Home Planet'

66 Force Save Email/News # (optional)
  • i0: Save Game #
Trigger Save "SAVEGAME-PLAYER-#"
67 Set State Options Email/News # (optional)
  • i0: Option Setting (bitmask / add values)
  • i1: Set/Reset Regional ROE element
  • i2: Set default Annex action for regions
i0: Option (add values):

1: Prevent Liberation choice to humanplayer

2: Prevent Colonize ...

4: Prevent Annex …

i1: Regional ROE Values+ve to set, -ve to reset: (Not all settings are implemented)

  • 1 roeusenuketactical:1; // Use tactical Nuclear Weapons
  • 2 roeusechemtactical:1; // Use (allow use) of tactical (artillery/missile) Chemical Weapons
  • 3 roeneutralengage:1; // Engage Neutral Incursions (only effects when no 'war on incursion' on; shoot at neutral in our terr)
  • 4 roescortchedearth:1; // Scortched earth policy on/off
  • 5 roepathallied:1; // Allow pathing into transit-treaty hexes (allied or neutral w/treaty)
  • 6 roepathneutral:1; // Allow pathing into neutral hexes (without transit treaty)
  • 7 roepathenemy:1; // Allow pathing into enemy hexes
  • 8 roepathwm:1; // Allow pathing into WM Land hexes
  • 9 roenorepair:1; // If set, don't repair/reinforce units in the field // TODO- implement
  • 10 roepathnowmwater:1; // Don't allow pathing into WM water hexes (default is to allow)
  • 11 roepathallair:1; // Allow pathing Air units over any territory (ignore ownership)
  • 12 roeusenbcstrategic:1; // Use strategic NBC Weapons (not used? yet?)
  • 13 roeicbmlaunchonloss:1; // Auto-Launch ICBMs on loss of silo?
  • 14 roeamphibprep:1;  // Used by AI for amphibious prep mode
  • 15 roecolonycap:1;    // If colony, then capture for colony and not the parent
  • 16 roepathallmm:1;  // When set Merchant marine will all-path (neutral path)

i2: 0=Annex, 1=Colonize, 2=Liberate

68 Set Hotspot Request Type
  • i0: Force size 0-4 + AirSup 0/10/20
  • i1: Focus 0-2 Def/Bal/Offenxsive + Priority 0/10/20
  • i2: Map x-location
  • i3: Map y-location
AI Request types:  (see below, and Event 12)

Hotspots are different from AI Requests in that they are more heavily processed by the AI and they remain until they are cleared.

Note - example - Force size of 24 is force size, 4 (most) with most air support, 20)

GR/SRNG: If no hex location, then Capital of 'Other Region'

GR: if i2 is -1, then 'Home Planet'

69 Clear Hotspots Request Type, or -1 for all
  • i0: 1=clear, 2=refresh
  • i1: 0=hex, 1=bz, 2=th, 3=all
  • i2: Map x-location
  • i3: Map y-location
Clear All, by hex, by bz, by th

Clear or Refresh (re-set).

See Event 12 for Request Definitions.

'Refresh' may not happen if hotspot has expired.

GR/SRNG: If no hex location, then Capital of 'Other Region'

GR: if i2 is -1, then 'Home Planet'

70 Locate Facility (single facility) Email/News #
  • i0: Map x-location
  • i1: Map y-location
  • i2: Facil Design #
Will auto-locate closest to hex location; capital if 0/0. (GR: Home planet if space facility)

For adding OMN etc to a hex, or cond if fac exists.

Event is true only if facility is found

Email Param 0 is the location, Param 1 is fac#

71 Garrison Add/Remove Email/News # (optional)
  • i0: # to add/sub (-8 / 8 to zero/max)
    • +10 to force active (-18/+18)
  • i1: 0=hex, 1=bz, 2=th, 3=all
  • i2: Map x-location
  • i3: Map y-location
Add or Remove Garrisons to all facilities in specified hex/bz/th/all, for Region.

Use -8 to remove all, +8 to maximize.

Add 10 to make immediate (not build up)

GR/SRNG: If no hex location, then Capital of 'Other Region'

GR: if i2 is -1, then 'Home Planet'

72 Change hex loyalty Email/News # (optional)
  • i0: (not used)
  • i1: 0=hex, 1=bz, 2=th, 3=all
  • i2: Map x-location
  • i3: Map y-location
Change Loyalty of Hex(s) to otherdbregion if owned by dbregion..  If hex isn't dbregion then ignored.

If dbregion is 0, always set to otherdbregion

If both are 0, then set loyalty to owner of hex.

GR/SRNG: If no hex location, then Capital of 'dbRegion'

GR: if i2 is -1, then 'Home Planet'

73 Change Efficiency Email/News # (optional)
  • ix: 1=Set fx  as ABSOLUTE value (otherwise just adjust +/- in float values)
  • f0: Target Military Efficiency Value
  • f1: Target Military Morale  Value
  • f2: Military Intel Efficiency
  • f3: Military CounterIntel Efficiency
74 Adjust Units Email/News # (optional)
  • i0: Unit Equip ID to affect, 0 for all
  • i1: 0=hex, 1=bz, 2=th, 3=all
  • i2: Map x-location
  • i3: Map y-location
  • f0: Adjust Efficiency +/-
  • f1: Adjust Morale +/-
  • f2: Adjust Experience +/-
Adjust Unit specs in specified hex/bz/th/all for Region

Affects active/reserve/construction

GR/SRNG: If no hex location, then Capital of 'Other Region'

GR: if i2 is -1, then 'Home Planet'

75 Sphere Leaders Email/News # (optional)
  • i0: Sphere Naming
EventRegion = Superpower of Red Sphere

OtherRegion = Superpower of Blue Sphere

(Leave blank for no change)

Sphere Name:

0:Axis 1:WarsawPact 2:Red 3:Socialist 4:Region Nm

76 Remove tech from region Email/News # (optional)
  • i0 - Facility ID
  • i1 - Change type 0-3
  • f0 - % completion


If i0 is zero, affect all facilities in construction

i1 values are Complete, Reset, Cancel, set value

f0 value 0.00 to 1.00, used when i1 = 3

77 Affect Construction Email/News # (optional)
  • i0 - Facility ID
  • i1 - Change type 0-5
  • f0 - % completion


If i0 is zero, affect all facilities in construction

i1 values are Complete, Reset, Cancel, Unpause, Pause, set value

f0 value 0.00 to 1.00, used when i1 = 3

78 Unlock Game Speed
79 Put facility offline
  • i0 - X coordinate
  • i1 - Y coordinate
  • i2 - 0 = all facilities or the complex if no facilities. 1-6 for the exact node position.
  • i3: 0 = Set Offline, 1 = Set Online, 3 = Force Online
  • f0 - Value from 0.00 to 1.00, amount of damage on facility as %. (optional, default is zero)
80 Set Election Date Sets Election Date offset from current date
  • i0 = Years
  • i1 = Months
  • i2 = Days
81 Sell Unit To WM Sells unit to the WM strategic trade system
  • i0 = unittype
  • i1 = quantity
  • eventotherdbregion = -1 to find any unit from any player, otherwise set to player to sell from
82 Change Hex Population Changes the population of a hex
  • i0 = x coordinate
  • i1 = y coordinate
  • i2 = if 0, event will change population to the amount in i3. if 1, event will add/substract the amount in i3 from the original hex population amount
  • i3 = amount
83 Set Tracked Facilities Utilized for Event 45 condition test 71
  • i0 = 'slot' 0-9 for tracked facility
  • i1 = facility unit ID
  • i2 = if set to 1, keep old track count, else reset count to parami3
  • i3 = tack counter value
84 Set Moral Choice use statustext in linked newsitem to set HAP name to force open as moral choice
  • i0 = linked newsitem
85 Escort A Specified Ship (GR) Use moral choices for additional events past the spawn/move (Event 84)
  • i0 = unit ID to spawn
  • i1 = if set, use random empty system location as spawn location, else use wmdeliver point for event player
  • i2 = if set, do not give unit a move order, else set move order to other player wmdeliver point
  • i3 = if set, lock unit from minister orders
  • f0 = Quantity Amount
  • f1 = Slot Placement (For Event 45 -> 89)
86 Set Diplomatic Trade Checks (GR) Utilized alongside setting diplomatic trade values (event 87) and checking diplomatic trade value (event 45->82). Event set up as follows: 86, 87, 25->82. Assigns the DBnum of a region you want to track into a slot number.
  • i0 = 'Slot' to place region for tracking (0 - 3)
  • i1 = DBnum of region you want to track
87 Set Diplomatic Trade Values (GR) Utilized after event 86. Sees whether or not to keep old progression or reset it
  • i0 = Slot num (set by event 85)
  • i1 = Productnum GR ONLY
    • 0 = Agriculture
    • 1 = Ore
    • 2 = Energy
    • 3 = Goods
  • i2 =
    • 1 = Old Progression
    • 0 = Reset tracking value to 0
88 Set campaign path(GRE)
89 Set Campaign Counter (GR) Sets campaign counter to this day plus random days
  • i0 = minimum number of random days
  • i1 = maximum number of random days|
90 Set Invasion hex with build facility (GRE)
91 Fracture region into 2 regions (All, untested outside GRE)
92 Sabotage(All, Not MP compatible)
93 Hard sets campaign progress (GRE only)
94 Hard set the health facilities by type
95 Affect infection rate Email/News # (optional) increase/decrease infection rate % of region x. If x=0, affect every region
  • i0 = 0 modify value, 1 override value
  • f0 = value of the change + increase / - decrease
96 Affect Infected Population Count Email/News # (optional) Increase/decrease number of infected population of region x. If x=0, affect every region
  • i0 = 0 modify value, 1 override value
  • f0 = value of the change + increase / - decrease
97 Affect Mortality Rate Email/News # (optional) Mortality Rate of region x. If x=0, affect every region
  • i0 = 0 modify value, 1 override value
  • f0 = value of the change + increase / - decrease
98 Cause Deaths from Infection Email/News # (optional)
  • f0 = number of deaths
99 Set/Reset Mandate Email/News # (optional)
  • i0 = 1 turns on Mask mandate, 2 turns off, no change for 0
  • i1 = 1 turns on Work at Home mandate, 2 turns off, no change for 0
  • i2 = 1 turns on Vaccines mandate, 2 turns off, no change for 0
100 Set/Reset Migration Controls Email/News # (optional)
  • i0 = 1 turns on immigration controls, 2 turns off, no change for 0
  • i1 = 1 turns on emigration controls, 2 turns off, no change for 0
  • i2 = 1 turns on refugee controls, 2 turns off, no change for 0
101 Create infection from trade Email/News # (optional)
  • i0 = number of trades traced to infections
(Not yet implemented)
102 Set Infection Level Email/News # (optional)
  • i0 = infection level value
value 0-4, none to Very High
## Description Main Param Additional Param Notes
## Description Main Param Additional Param Notes

Condition Test List[]

45 Condition Test Email/News # (optional)
  • i0: Condition To Test (#)
  • i1 etc: Condition Parameter
  • f0 etc: Condition Parameter
Test a Condition].

Event ID set to 'True' if Condition met.

Email only sent if Condition met.

See Condition List Below

The following potential "i0" values have the listed additional parameters.

Where multiple tests exist, they are done via "OR" unless listed otherwise (meaning only one has to be True to set event True).

  1. Region Relationship with OtherRegion
    1. i1=0 : Ignore
    2. i1=1: Allied
    3. i1=2: Neutral
    4. i1=3: War
    5. i1=4: otherdbregion is Colony of dbregion
    6. i1=5: otherdbregion is Parent of dbregion
    7. i1=6: Parent of Colony
    8. i1=7: Unknown
    9. i1=8: Undiscovered
    1. i2= Check if Region & OtherRegion have Treaty # in place (ignored if 0)
  1. Region Sphere Check
    1. i1=0: Strong Axis
    2. i1=1: Strong or Weak Axis
    3. i1=2: Neutral
    4. i1=3: Strong or Weak Allied
    5. i1=4: Strong Allied
  2. Region has enemies
    1. i1= minimum # of enemies to test for (ie 1 for 1 or more; 5 for 5 or more)
    2. i2= bitmask for regions to include
      1. 0 = all
      2. 1 = exclude colonies
      3. 2 = exclude dead
      4. 4 = exclude sphere same as current region.
      5. 8 = exclude pirates
  3. Region has allies
    1. i1= minimum # of allies to test for
    2. i2= bitmask for regions to include
      1. 0 = all
      2. 1 = exclude colonies
      3. 2 = exclude dead
      4. 4 = exclude sphere different than current region.
  4. Region Diprelationship with OtherRegion (any single test true) - (note - enter 75% as 0.75, which is between 1 and -1.)
    1. f0= relationship is less than % (ignored if 0)
    2. f1= relationship is greater than % (ignored if 0)
    3. f2= casus belli is greater than % (ignored if 0)
    4. f3= provocation is greater than % (ignored if 0)
  5. Regional Approval Rating Test
    1. f0= DAR is less than % (ignored if 0)
    2. f1= DAR is greater than % (ignored if 0)
    3. f2= MAR is less than % (ignored if 0)
    4. f3= MAR is greater than % (ignored if 0)
  6. Regional Stat Test
    1. i1= land fab capacity greater than or equal to (ignored if 0)
    2. i2= air fab capacity greater than or equal to (ignored if 0)
    3. i3= sea fab capacity greater than or equal to (ignored if 0)
    4. f0= Population greater than (ignored if 0)
    5. f1= Treasury greater than (ignored if 0), value in dollars
    6. f2= GDP/c greater than (ignored if 0)
    7. f3= WM Rating greater than (ignored if 0)
  7. Regional Hex Ownership - (used)
    1. i1= BITMASK (add values): 1: (dbRegion); 2: Allies; 4: Neutrals; 8: Enemies (ie Us+Allies = 3); 0=default dbRegion(1)
    2. i2= Map X location
    3. i3= Map Y location
  8. Regional Tests
    1. i1= 1: True if WM/UN Member;
    2. i1= 2: True if Not WM/UN Member
    3. i1= 3: True if region is a colony of Otherregion
    4. i1= 4: True if region is a parent of Otherregion
    5. i1= 5: True if region is alive (also could use eventballowdead flag instead in some cases - not a direct replacement)
    6. i1= 6: True if region is dead (tombstoned) or inactive - (used)
    7. i1= 7: True if region is member of Axis Alliance
    8. i1= 8: True if region is member of Allies Alliance
    9. i1= 9: True if region is inactive (False if region is Alive or Sleeping/Tombstoned)
    10. i1=10: True if region is a colony
    11. i1=11: True if region is independent (not a colony)
  9. NOT - set to true only if ALL listed events/conditions did NOT happen - (used)
    1. i1=Event ID
    2. i2=Event ID (ignored if 0)
    3. i3=Event ID (ignored if 0)
  10. OR - set to true if ANY of the listed events happened - (used)
    1. i1=Event ID
    2. i2=Event ID (ignored if 0)
    3. i3=Event ID (ignored if 0)
  11. AND - set to true only if ALL of the listed events happened - (used)
    1. i1=Event ID
    2. i2=Event ID (ignored if 0)
    3. i3=Event ID (ignored if 0)
  12. Check Difficulty level (0=easy to 4=hard, 2=normal)
    1. i1= Military difficulty greater than or equal to (ignored if 0)
    2. i2= Economic difficulty greater than or equal to (ignored if 0)
    3. i3= Diplomatic difficulty greater than or equal to (ignored if 0)
  13. Set to true if region (or otherregion if defined) is Human player
  14. Region has colonies
    1. i1= minimum # of colonies to test for (ie 1 for 1 or more; 5 for 5 or more)
  15. Regional Score Test
    1. i1= Victory Points greater than or equal to (ignored if 0)
    2. i2= Victory Points REGION+ALLIES greater than or equal to (ignored if 0)
    3. i3= score to check 1-6 (total/diplo/eco/tech/civ/mil) (ignored if 0)
    4. f0= (future use) greater than (ignored if 0)
    5. f1= (future use) greater than (ignored if 0)
    6. f2= Score Value to check for greater than (if i3 is set)
  16. Regional Stat Test II
    1. i1= land fab queue greater than or equal to (ignored if 0) (includes in-production & queued; may be 1 day later)
    2. i2= air fab queue greater than or equal to (ignored if 0)
    3. i3= sea fab queue greater than or equal to (ignored if 0)
    4. f0= TBA greater than (ignored if 0)
    5. f1= TBA greater than (ignored if 0)
    6. f2= TBA greater than (ignored if 0)
  17. Regional Stat Test III
    1. i1= land units deployed (if -ve: in reserve) greater than or equal to (ignored if 0)
    2. i2= air units deployed (if -ve: in reserve) greater than or equal to (ignored if 0)
    3. i3= sea units deployed (if -ve: in reserve) greater than or equal to (ignored if 0)
    4. f0= Active Personnel greater than (ignored if 0)
    5. f1= Reserve Personnel greater than (ignored if 0)
    6. f2= Total Personnel (active + reserve) greater than (ignored if 0)
  18. Regional Settings Test  (to get values, run game.  CTRL+G for udefs.  Use udef +1 for value to enter)
    1. i1= Social Spending Setting to test (count number +1) (1-8) (ignored if 0)
    2. i2= Social Rating to test +1 (1-8) (ignored if 0)
    3. i3=TBA
    4. f0= TBA
    5. f1= Social Spending #i1 greater than (ignored if 0) - Enter 0.5 for 50%
    6. f2= Social Rating #i2 greater than (ignored if 0) - Enter 0.15 for 15%
    7. f3= TBA greater than (ignored if 0)
  19. Regional Hex Test
    1. i1= Is Unit/upgrade Type (#) belonging to Region present in hex? (#=6001 CommandUnit, 349 Spy, etc) (ignore if 0)
    2. i2= Map X location
    3. i3= Map Y location
      1. GR/SRNG: If no hex location, then Capital of 'Other Region'; GR: if i2 is -1, then 'Home Planet'
    4. f0= # of requested Garrisons greater than (ignored if 0)
    5. f1= # of actual/active Garrisons greater than (ignored if 0) - does NOT count 'popped out' Garrisons
  20. Regional Tech Test
    1. (If using multiple checks, they operate as OR)
      1. i1= Does Region know tech #?  if -ve: Is region researching Tech #? (ignored if 0)
      2. i2= Does Region know tech #?  if -ve: Is region researching Tech #? (ignored if 0)
      3. i3= Does Region know tech #?  if -ve: Is region researching Tech #? (ignored if 0)
  21. Regional Unit Test
    1. (If using multiple checks, they operate as OR)
      1. i1= Does Region know unit #?  if -ve: Is region researching Unit #? (ignored if 0)
      2. i2= Does Region know unit #?  if -ve: Is region researching Unit #? (ignored if 0)
      3. i3= Does Region know unit #?  if -ve: Is region researching Unit #? (ignored if 0)
  22. Theatre/BattleZone Test - Does NOT work in MultiPlayer; for local Human Player ONLY.  Ignored in MP.
    1. i1= test type:
      1. TH 1-9
        1. 1/2/3=Theatre Deployed L/A/S; (used = 1,2)
        2. 4/5/6=TH Reserve L/A/S;
        3. 7/8/9=TH Production L/A/S;
      2. 10=BZ # of hexes in battlezone that player has transit rights (owned/allied/treaty);
      3. 11-19: BZ same as 1-9
        1. 11/12/13 BZ Deployed L/A/S;
        2. 14/15/16 BZ Reserve L/A/S;
        3. 17/18/19 BZ Production L/A/S;
    2. i2= Map X location (inside TH/BZ)
    3. i3= Map Y location (inside TH/BZ)
    4. f0= Test amount greater than this (ignored if 0) Note: float amount, test greater than.  ie use .5 to catch 1+
  23. BattleZone Test
    1. Note - updated only at end of day; either yes/no, cannot test quantity; unit may be land/air/sea
      1. i1= test type: 1=dbregion owns hex in BZ; 2=dbregion has Unit in BZ
      2. i2= Map X location (inside BZ)
      3. i3= Map Y location (inside BZ)
  24. Check 'eventstatus' of an event ID
    1. >>> Note: must set these events to "Regular Time Only".  In FF, counting doesn't happen until you start time. <<<
      1. i1= Event Sequence ID to test
      2. i2= If Objective, Status Value to test for (see Event 61 for definitions CURRENT/COMPLETE/FAILED).  
        1. If this value = Current Status then the test will =True.
        2. -1 to ignore if testing an event that is not an objective, in which case completed/pending will return true/false
      3. f0=at least # of days that have passed since event happened (event became true) (0 to ignore)
      4. f1=no more than # days have passed since event happened (event became true) (0 to ignore)
      5. f2=Random Days value to add to f0/f1 (0 to ignore)
  25. Regional Unit Production Test - Does NOT work in MultiPlayer; for local Human Player ONLY.  Ignored in MP.
    1. (If using multiple checks, they operate as OR)
      1. i1= Unit/Facility ID# in Production greater than or equal to;  (ignored if 0)
      2. i2= Unit/Facility ID# in Production greater than or equal to;  (ignored if 0)
      3. i3= Unit/Facility ID# in Production greater than or equal to;  (ignored if 0)
        1. SRNG/GR - i3 is now for "test all colonies of selected region"
      4. f0= TBA
      5. f1= Number of units in Production greater than;  if -ve: in production Queue of Facility in Constructions (ie use .9 for >= 1)
      6. f2= Number of units in Production greater than;  if -ve: in production Queue of Facility in Constructions (ie use .9 for >= 1)
      7. f3= Number of units in Production greater than;  if -ve: in production Queue of Facility in Constructions (ie use .9 for >= 1)
  26. Regional Unit Deployment Test - Does NOT work in MultiPlayer; for local Human Player ONLY.  Ignored in MP.
    1. (If using multiple checks, they operate as OR)
      1. i1= Unit/Facility ID# Deployed/Reserve (upgrades: active-online/offline-constr) greater or equal to;  (ignored if 0)
      2. i2= Unit/Facility ID# Deployed/Reserve (upgrades: active-online/offline-constr) greater or equal to;  (ignored if 0)
      3. i3= Unit/Facility ID# Deployed/Reserve (upgrades: active-online/offline-constr) greater or equal to;  (ignored if 0)
      4. f0= TBA
      5. f1= Number in Deployed/Active greater than;  if -ve: in Reserve/Offline (ie use .9 for >= 1)
      6. f2= Number in Deployed/Active greater than;  if -ve: in Reserve/Offline (ie use .9 for >= 1)
      7. f3= Number in Deployed/Active greater than;  if -ve: in Reserve/Offline (ie use .9 for >= 1)
  27. Regional Resource/commodity Test
    1. (If using multiple checks, they operate as OR)
      1. i1= Resource #  (ignored if -1)
      2. i2= Resource #  (ignored if -1)
      3. i3= Resource #  (ignored if -1)
      4. f0= TBA
      5. f1= Resource Stock greater than;  if -ve: in production actual output greater than (ie use .9 for >= 1)
      6. f2= Resource Stock greater than;  if -ve: in production actual output greater than (ie use .9 for >= 1)
      7. f3= Resource Stock greater than;  if -ve: in production actual output greater than (ie use .9 for >= 1)
  28. Regional Cabinet Settings Check
    1. i1=Cabinet Dept # (See Event 37; 0-5)
    2. i2= Priority # to check (1-31, ignored if zero) (see deptprior.csv in /INI directory for dept,priority number list)
    3. i3= if 1, test locks instead of priorities
    4. f0 NOT =0, test for colonies of region
  29. Sphere Counts, "Sphere has members"
    1. i1= sphere being tested (0-4), leaning will count leaning and those fully in the sphere.
    2. i2= minimum # of members to test for (ie 1 for 1 or more; 5 for 5 or more) (use Conditional Not for less than)
  30. Regional Gov. Type
    1. i1= gov type of dbregion (1-7)
  31. Stat Test economy
    1. i1 = value to test
      1. 1 - Income
      2. 2 - Expenses
      3. 3 - Surplus/Deficit
    2. i2 = 0 for daily, 1 for annually
    3. f0 = is greater than (negative value for is less than)
  32. Strategic Pool Test (Not Implemented Yet)
    1. f0 = land units count > x (negative for less than)
    2. f1 = air units count > x (negative for less than)
    3. f2 = naval units count > x (negative for less than)
    4. f3 = missile units count > x (negative for less than)
  33. Support Condemn test (Not Implemented Yet
    1. i1= 1: True if dbregion has support set for otherdbregion
    2. i2= 1: True if dbregion has neutral set for otherdbregion
    3. i3= 1: True if dbregion has condemn set for otherdbregion
  34. Test aiplayerbits flag (GR)
    1. i1 = bitmask of (flags) to test for. Any single match will trigger TRUE.
      • 1 (2^0): launchcodevalid:1; // Set once a valid launch code has been entered (don't ask again)
      • 2 (2^1): aiallyoffer:1; // AI has made alliance or peace offer to human (don't do it again)
      • 4 (etc): aiamphibprep:1; // AI is in Amphibious Landing Preparation mode (planet level)
      • 8: aiamphibstage:1; // AI is in Amphibious Staging mode (ready to launch or launching) (planet level)
      • 16: aiwarentry:1; // AI has just entered war / initial attack
      • 32: aiofferlos:1; // AI has made offer to human, don't do it again...
      • 64: aioffertrans:1; // ...
      • 128: aioffermutual:1; // ...
      • 256: aionetimers:1; // Set when AI has done 'one time' settings & stuff
      • 512 (2^9): aistratlaunch:1; // set true if AI has made a strat launch
      • 1024: rnamechanged:1; // Player has changed region name, don't use localize version
      • 2048: pendingdipaction:1; // Pending CMDActionDo diplomatic action in MP - localplayer to this region - to show UI warning.
      • 4096: aiofferembassy:1; // AI has made offer to human, don't do it again...
      • 8192: aispaceport:1; // AI has started building spaceport, but none active yet (is reset when spaceport active)
      • 16384: aiofferproshare:1; // AI has made offer to human, don't do it again...
      • 32768: aiofferresshare:1; // AI has made offer to human, don't do it again...
      • 65536: aioffermilshare:1; // AI has made offer to human, don't do it again...
      • 131072 (2^17): aiplayrich:1; // AI player consided 'rich' (all AI thread / local use!)
      • 262144 (2^18): aiplaypoor:1; // AI player considered 'poor'
      • 524288: aiplayextrae:1; // AI player has extra energy/power
      • 1048576: aiplayextrai:1; // AI player has extra ind goods
      • 2097152: aiplayextram:1; // AI player has extra mil goods
      • 4194304: aienemyathome:1; // GR: AI player has enemy on home planet (AI/local)  SRNG: AI player has enemies or buildup /forceplan
      • 8388608: firstcenteroncity :1; // Set true first time player centers on region
      • 16777216: aitechday:1; // AI research - available for today flag (reset when player adds to q)
      • 33554432: ainavalok:1; // AI has been flagged as owning water hexes and at least one naval design available to them
      • 67108864: aispaceprep:1; // AI is in Space Invasion Landing Preparation mode (gathering planet level units)
      • 134217728: aispacestage:1; // AI is in Space Invasion Staging mode (loading into transports)
      • 268435456 (2^28): aispacelaunch:1; // AI is in Space Invasion Staging mode (ready to launch or launching) (system level)
      • 536870912: aibuiltsplaunch:1; // AI has started construction of a space dock launcher
      • 1073741824: aibuiltresearch:1; // AI has started construction of a research center
      • 2147483648: aiunrestsubregion:1; // Ised to check if unrest in this subregion message has been sent
  35. Count of Hotspots (GR)
    1. i1 - type of hotspot to test, if -1 then any type
    2. f0 - target number of hotspots placed
  36. State of product tradetarget
    1. i1 = Trade Target // -1 Export / 0 Neutral / 1 Import
    2. i2 = Trade Target Check // 0 = no check against value, 1 = Check tradetarget against f2 value
    3. i3 = Product Number // 0-12
    4. f0 = Trade Target Value // -1 to 1,
  37. Player home system status
    1. i1 = system status to check against
      • 0: Contested
      • 1: Inhabited
      • 2: Visited
      • 3: Explored
      • 4: Unexplored
    2. i2 = set to 1 to include Anomalies in the count, default is 0 to exclude Anomalies
  38. Player regions known or discovered count
    1. i1 = Use known or discovered counts // 0 - Discovered / 1 - Known
    2. i2 = Number of regions for which to check (equal to or greater than)
    3. i3 value: if =1 then don't count colonies.
    4. f0 value: if =1 then don't include Pirates
    5. f1 value: if =1 then don't include Minor Races
  39. Regional Stat Test III
    1. i1= units killed this turn greater than or equal to (ignored if 0)
    2. i2= units killed last turn greater than or equal to (ignored if 0)
    3. i3= units killed this game greater than or equal to (ignored if 0)
    4. f0= units lost this turn greater than or equal to (ignored if 0)
    5. f1= units lost last turn greater than or equal to (ignored if 0)
    6. f2= units lost this game greater than or equal to (ignored if 0)
  40. Regional Stat Test IV
    1. i1= units captured this turn greater than or equal to (ignored if 0)
    2. i2= units captured last turn greater than or equal to (ignored if 0)
    3. i3= units captured this game greater than or equal to (ignored if 0)
  41. Regional Stat Test V
    1. f0= land units stored in the players orbital station greater than (ignored if 0)
    2. f1= air units stored in the players orbital station greater than (ignored if 0)
    3. f2= naval units stored in the players orbital station greater than (ignored if 0)
    4. f3= space units stored in the players orbital station greater than (ignored if 0)
    5. i1= missile units stored in the players orbital station greater than (ignored if 0)
  42. Test Colony has Building with Spaceport Specialty
    1. Selected faction will be -1 for active player.
  43. Empire units on a colony surface > X.
    1. i1= X
  44. Transport ship with more than X units in cargo.
    1. i1= X
  45. Regional Resource/Commodity Test (for all colonies)
    1. (If using multiple checks, they operate as OR)
      1. i1= Resource #  (ignored if 0)
      2. i2= Resource #  (ignored if 0)
      3. i3= Resource #  (ignored if 0)
      4. f0= TBA
      5. f1= Resource Stock greater than;  if -ve: in production actual output greater than (ie use .9 for >= 1)
      6. f2= Resource Stock greater than;  if -ve: in production actual output greater than (ie use .9 for >= 1)
      7. f3= Resource Stock greater than;  if -ve: in production actual output greater than (ie use .9 for >= 1)
  46. Count of landable surfaces found
    1. i1 = landable type wanting to count
      1. i1 = 10, 11/12, 13 (Star, Planet/Moon, Asteroid), or -1 for any
    2. i2 = atmosphere type to count
      1. i2  = -1 == any, or use data below
        1. #define ATMOSPHEREEARTH 0
        2. #define ATMOSPHEREGAS 1
        3. #define ATMOSPHERETHICK 2
        4. #define ATMOSPHERETHIN 3
        5. #define ATMOSPHEREDENSE 4
        6. #define ATMOSPHEREVIOLENT 5
        7. #define ATMOSPHERENONE 6
        8. #define ATMOSPHEREGASGIANT 7
        9. #define ATMOSPHERELAVAMOON 8
        10. #define ATMOSPHEREMETHANEMOON 9
    3. i3 = count of that type
  47. Count of pirate factions in a players home system
    1. i1 = if count of pirates is greater than this number condition is true
  48. Is any cabinet priority set
    1. is true if any priority is set
  49. Count of treaties signed with empire factions (non-colony factions)
    1. i1 = Treaty number to check
    2. i2 = Number of treaties to check for ( i2 >= foundtreaties )
  50. True if player has started/finished construction on FTL space ship
    1. i1 = if set to 0 will use started construction, if set to 1 will use finished construction
  51. True if player has started a population migration diplomatic trade
  52. True if the specified battlegroup has units
    1. i1 = battlegroup number
  53. True if player has ordered a ship to patrol
  54. .
  55. True if player captures an enemy city
  56. Turns if player has set a unit's initiative to high with ROE
  57. True if battlegroup has > %X amount of fuel. Ignored in MP.
    1. i1 = battlegroup number
    2. f0 = %X of fuel to check for
  58. True if player initiative is at or above specified level
    1. i1 = branch (0/1/2/3, land/sea/air/space)
    2. i2 = initiative level (0/1/2/3/4)
  59. True if player has an ongoing trade with required amounts/products
    1. i1 = product number to check (-1 for any product)
    2. f0 = amount of product to check for (per payment)
      1. dbregion is giving to dbotherregion. Ensure proper order of region IDs
  60. Test eventplayerbits flag
    1. i1 = bitmask of (flags) to test for. Any single match will trigger TRUE.
      • 1 (2^0) : eventfirstpopdip:1;                // Set once the local player has opened pop-dip panel for the first time
      • 2 (2^1): eventfirstexpandexpense:1;        // Set once the local player has opened the expanded expenses panel for the first time
      • 4 (etc): eventfirstpoptech:1;            // Set once the local player has opened tech race panel for the first time
      • 8: eventformationmove:1;            // Set once the local player has moved units with formation move
      • 16: eventautomateunit:1;            // Set once the local player has clicked the automate button
      • 32: eventlockaiunit:1;                // Set once the local player has clicked the lock unit from minister control
      • 64: eventsellunittowm:1;            // Set once the local player has clicked the sell unit button from unit popup
      • 128: eventfirstftl:1;                // Used to check if FTL travel has happened before
      • 256: eventfirstsurvey:1;                // Used to check if survey has happened before
      • 512: eventuraniumfilter:1;            // Set once the local player has set the resource filter to uranium
      • 1024: eventfirstexploitable:1;        // Used to check if exploitable planet surveyed before
      • 2048: eventfirstcrate:1;                // Used to check if crate has happened before (local)
      • 4096: eventpetroleumfilter:1;            // Set once the local player has set the resource filter to petroleum
  61. Test player taxation settings
    1. i1 = tax number
    2. f0 = above this amount
    3. f1 = below this amount
  62. Test if player has navpoint on hex
    1. i1 = X location
    2. i2 = Y location
  63. Test if there is upgrade type at hex
    1. i1 = X location
    2. i2 = Y Location
    3. i3 = unit ID
  64. Test cabinet locks
    1. i1 = cabinet number
    2. i2 = lock number
    3. i1 = 0: Unlocked / 1: Locked
  65. Test player domestic margin values for products
    1. i1 = product number
    2. f0 = % margin (1.0 is default, 1.35 would be 35% reduced price)
  66. Coin Flip/random value with probability of true false. Compatible with condition test 25. Check 'eventstatus'
    1. i1 = % chance heads/true. If zero or blank, probability is 50/50
  67. Compare i0 to mil recommended salary or mil recommended maintenance
    1. i1 = value to compare
    2. f0 = 0? True if i0 < recommended salary. If f0 = 1, triggers true if i0 < mil recommended maintenance
  68. Compare Leaders
    1. i1 = leader num value to compare
    2. i13= if set 0, true if i0 is the same as the ID of current leader, if set 1 then true is i0 is different than the current leader.
  69. Compare Known Techs
    1. i1 = number of known techs (greater than or equal to)
  70. Test Tracked Facility Destruction (Requires Event 83 to be conducted first to set 'slot' of tracked facility)
    1. i1 = 'Slot' 0-9 for tracked facility (Established from Event 83)
    2. i2 = value to check for (greater than or equal to tracked value)
  71. Test Number of Systems with Beacons (GR)
    1. i1 = number of systems with beacons placed by player
    2. i2 = set 1 to include empire owned
  72. Test Number Of Specified Facilities on a Planet (GR)
    1. i1 = facility unit ID
    2. i2 = number of facilities
    3. i3 = set to 1 to include empire
  73. Test Number of Systems Owned (GR)
    1. i1 = number of 'owned' systems
    2. i2 = set to 1 to include empire
  74. Test Number of Specified Type of Units Destroyed
    1. i1 = btype (land/air/sea/space(GR)/missile
    2. i2 = number of units destroyed (greater than or equal to)
  75. Test if Moral Choice is True For Slot Number (Works with event 84)
    1. i1 = 'slot' of moral choice to check (0-31) (True if moral choice is true for slot number)
  76. Test Number of Full Systems Surveyed (GR)
    1. i1 = number of systems fully surveyed (greater than or equal to)
  77. Test Atmospheres Surveyed (GR) (See Atmosphere Types)
    1. i1 = atmosphere type
    2. i2 = number surveyed (greater than or equal to)
  78. Test Speciality Surveyed (GR) (Star/Planet/Moon/Asteroid)
    1. i1 = speciality
      1. 0 - Star
      2. 1 - Planet
      3. 2 - Moon
      4. 3 - Asteroid
    2. i2 = Number Surveyed (Greater than or equal to)
  79. Test Number Of Specified Facilities on different Planets within a system (GR)
    1. i1 = facility unit ID
    2. i2 = number of facilities
    3. i3 = set to 1 to include empire
  80. Placeholder 81
  81. Check For Diplomatic Trade Value (GR)
    1. i1 = dbnum of tracked region (set in a slot stemming from Event 86)
    2. i2 = productnum GR ONLY (0, 1, 2, 3)
      1. 0 - Agriculture
      2. 1 - Ore
      3. 2 - Energy
      4. 3 - Goods
    3. f0: value checking (Tracked trade value is higher than parameter given
  82. Check if Campaign Counter (from Event 88) is true if player reaches target day
  83. Tracking Pirates/Major Factions/Minor Factions Eliminated (GR)
    1. i1 = # of Pirates killed
    2. i2 = # of Major Factions Killed
    3. i3 = # of Minor Factions Killed
  84. Internal Use Reserved
  85. Check For Units Deployed
    1. i1 =
      1. 0 - Land
      2. 1 - Air
      3. 2 - Sea
      4. 3 - Space
    2. i2 = Value to be checked
      1. + - Positive number checks for deployed
      2. - - Negative number checks for reserved
  86. Internal Use Reserved
  87. Check the Status of Splinter Region (Set from event 91)
    1. i1 = 1 (return true if the faction is dead), 0 (ignore)
    2. i2 = 1 (will return true if they are a colony of event player), 0 (ignore)
    3. i3 = 1 (return true if allies with event player), 0 (ignore)
  88. Checks to see if Region A Unit is on the same hex as Region B specified unit
    1. i1 = Slot Number (stemming from event 85)
    2. i2 = Set 1 if you would like Region A to capture Region B Unit
  89. Check for capture of the orbital station of the i1 faction, in system of ID dbregion
    1. i1 = 0: Pirate
    2. i1 = 1: Non-spacefaring
    3. i1 = 2: partner region
    4. i1 = 3: spacefaring
  90. Count of (facility ID) on colony of faction ID dbregion
    1. i1 = SR5ID of unit/facility as per .unit equipment file
    2. i2 = Number to check against (ex 10 supply depots)
    3. i3 = NOT zero, will only include colonies in home system
  91. Check for set governor profile
    1. i1 = x (x defined as per $coldefault in variables.ini (0-3, Manual-Military-Balanced-Industrial)
    2. i2 = if set will check colonies
  92. Regional Resource/commodity Test COLONY ONLY (like 28)
    1. (If using multiple checks, they operate as OR)
      1. i1= Resource #  (ignored if 0)
      2. i2= Resource #  (ignored if 0)
      3. i3= Resource #  (ignored if 0)
      4. f0= TBA
      5. f1= Resource Stock greater than;  if -ve: in production actual output greater than (ie use .9 for >= 1)
      6. f2= Resource Stock greater than;  if -ve: in production actual output greater than (ie use .9 for >= 1)
      7. f3= Resource Stock greater than;  if -ve: in production actual output greater than (ie use .9 for >= 1)
  93. GRE urban container facilities destroyed
    1. i1 = number of containers destroyed >=
    2. i2 = 1 to reset value once true
  94. Infection Count Testing
    1. i2 = 0/1 for previous day deaths/total deaths
    2. f1 = is infected population greater than or less than this value? Set -ve to test less than, 0 to ignore.
    3. f2 = is deaths as per i2 from infection greater than or less than this value? Set -ve to test less than, 0 to ignore.
    4. f3 = is infections from trades greater than or less than this value? Set -ve to test less than, 0 to ignore. (Infections from Trades not currently implemented)
      1. The event NOT function will not work for test 95.
        1. Testing for 0: Use -1 to test for less than 1 which is zero
      2. If using multiple values, logic is OR
  95. Infection Mandate Status AND
    1. i1 = 0 ignore, 1 true if Mask Mandate active, 2 true of inactive
    2. i2 = 0 ignore, 1 true if Work from Home Mandate active, 2 true of inactive
    3. i3 = 0 ignore, 1 true if Vaccine Mandate active, 2 true of inactive
      1. If using multiple values, logic is AND
  96. Infection Mandate Status OR
    1. i1 = 0 ignore, 1 true if Mask Mandate active, 2 true of inactive
    2. i2 = 0 ignore, 1 true if Work from Home Mandate active, 2 true of inactive
    3. i3 = 0 ignore, 1 true if Vaccine Mandate active, 2 true of inactive
      1. If using multiple values, logic is OR
  97. Global Infection Deaths Rank
    1. i1 = 1 true if region is highest (worst) ranked
    2. i2 = 1 true if region is lowest (best) ranked
  98. Infection % rate testing
    1. i1 = 0 test greater than, 1 test less than
    2. f1 = value of infection rate 0.00 to 1.00
      1. If region value = zero, check global rate
  99. Infection % rate testing
    1. i1 = 0 test greater than, 1 test less than
    2. f1 = value of mortality rate 0.00 to 1.00
      1. If region value = zero, check global rate
  100. Condition Test 101
    1. i1 =
Advertisement