Skylords Reborn
Advertisement

This article ist directly coupled to an Autocomplete Plugin for Visual Studio Code.
Meaning that changes made to this article can be downloaded to be displayed when editing your scripts (eg. when hovering over a function)
See on GitHub

Unfortunately, not all functions are documented correctly.
Verified functions are marked with a green Verified sign.

Actions[]

Parameter Parameter Explanation Type Optional
Tutorial
TutorialDeckSlotDisable

2008-11-12


Disables the given Deck Slot.
Slot The position of the Card in the Deck, starting with 0. number N
TutorialDeckSlotEnable

2008-11-12


Enables the given Deck Slot.
Slot The position of the Card in the Deck, starting with 0. number N
TutorialMarkerAdd

2008-09-25


Adds a new tutorial marker or moves an existing one with the same tag.
MarkerTag The tag of this UI Marker, used to properly (re)move it later. string N
Widget The name (reference string) of a Widget. string N
MarkerFileName The template file of the marker. Folder: bf1/ui/ string N
Position The position of the tutorial marker, or MarkerPosNone for default. number Y 1
TutorialDetailMarkerAdd

2008-09-25


Adds a new tutorial marker or moves an existing one with the same tag, with detail info.
MarkerTag The tag of this UI Marker, used to properly (re)move it later. string N
Widget The name (reference string) of a Widget. string N
MarkerFileName The template file of the marker. Folder: bf1/ui/ string N
DetailFileName The template file of the detail stuff (optional). Folder: bf1/ui/ string Y
Position The position of the tutorial marker, or MarkerPosNone for default. number Y 1
TutorialMarkerRemove

2008-09-25


Removes a tutorial marker.
MarkerTag The tag of this UI Marker, used to properly (re)move it later. string N
TutorialEffectStart

2008-09-25


Starts the effect on all Squads with that PvE Type.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
PvEType The name of a PvE Type. string N
Effect file relative to 'bf1/gfx/effects/', no extension! string N
TutorialEffectStopAll

2008-09-26


Stops all effects started with the TutorialEffect command.
AudioVisual
AudioAmbientPlay

2007-09-22


Plays the specified AmbientStream at the TargetTag position.
Ambient file relative to 'bf1/sound/streams/', no extension! string N
TargetTag The ScriptTag of the 'target' entity. string N
AudioSoundFXStop

2007-10-05


Stops the Audio if it is playing.
Sound file relative to 'bf1/sound/ram/', no extension! string N
CameraCenterOnTarget

2007-09-19


Centers the Camera on the Tag's position.
TargetTag The ScriptTag of the 'target' entity. string N
AudioMusicPlay

2007-09-22


Plays the specified Music Track.
Music file relative to 'bf1/sound/streams/', no extension! string N
EffectEnable

2008-05-28


Enables (starts) the editor-placed effect.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
EffectDisable

2008-05-28


Disables (stops) the editor-placed effect.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
EffectToggle

2008-05-28


Toggles the editor-placed effect.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
EffectPowerSet

2008-05-27


Sets the Effect's 'power' to the specified percentage.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Percent The 'power' percentage of the effect, eg. how big the effect is or which state it is in. number Y 100
EffectPowerAdd

2008-05-27


Adds this percentage to the Effect's 'power'. Will never go over 100%.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Percent The 'power' percentage of the effect, eg. how big the effect is or which state it is in. number Y 100
EffectPowerSubtract

2008-05-27


Subtracts this percentage from the Effect's 'power'. Will never go below 5%.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Percent The 'power' percentage of the effect, eg. how big the effect is or which state it is in. number Y 100
EffectStart

2007-10-02


Starts the effect on the TargetTag entities.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Effect file relative to 'bf1/gfx/effects/', no extension! string N
Percent The 'power' percentage of the effect, eg. how big the effect is or which state it is in. number Y 100
EffectStartTargeted

2007-10-02


Starts the effect from the Tag entities to the TargetTag entities.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
Effect file relative to 'bf1/gfx/effects/', no extension! string N
Percent The 'power' percentage of the effect, eg. how big the effect is or which state it is in. number Y 100
EffectStopAll

2007-10-02


Stops all effects on the entities.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
EffectVanish

2008-03-19


Removes the effect entity (editor placed effects) from the map.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
FogOfWarObserve

2008-03-20


Starts observing TargetTag position(s), thus completely removing both Unexplored AND Fog of War indefinetely.
TargetTag The ScriptTag of the 'target' entity. string N
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
FogOfWarGlanceAt

2008-03-20


Takes a glance (quick look) at the TargetTag(s), thus removing only the Unexplored (targets remain shrouded in Fog of War).
TargetTag The ScriptTag of the 'target' entity. string N
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
WeatherSet

2008-09-03


Changes the weather. Similar to performing a raindance in real life.
Weather RenderSettings file from 'bf1/map/lighting/' folder, w/o extension! string N
FadeDuration Duration in Seconds for Fading between two Weather/Render Settings. number Y 3
WeatherSetUserGenerated

2012-12-12


Changes the weather. Similar to performing a raindance in real life. Uses an absolute path instead of relative from the game directory.
Weather RenderSettings file absolute path, w/o extension! string N
FadeDuration Duration in Seconds for Fading between two Weather/Render Settings. number Y 3
AudioSoundFXPlay

2007-09-22


Plays the specified Sound FX at the TargetTag position.
Sound file relative to 'bf1/sound/ram/', no extension! string N
TargetTag The ScriptTag of the 'target' entity. string N
AudioSoundUIPlay

2007-09-22


Plays the specified UI Sound at the TargetTag position.
Sound file relative to 'bf1/sound/ram/', no extension! string N
AudioVoicePlay

2007-10-06


Plays the specified Voice Stream.
Voice file relative to 'bf1/sound/streams/', no extension! string N
Volume The Voice Volume, 1.0 is default, higher means louder. number Y 1
Building
BuildingSpawn

2007-09-10

Verified
Spawns (creates) an entity on the map. (without setting a Player)
TargetTag The ScriptTag where the Building will be placed. string N
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
Sets only the Team of the Squad (white health bars). To set the Player, please use PlayerBuildingSpawn.
If you want to set the Player later, use EntityPlayerSet.
You COULD also use just a player in this parameter, but it is not recommended, since validation will fail. (In that case, Player and Team - of that player - would be set)
string N
BuildingId The DB ID of a Building. The default Upgrade-Level is 2 (2.000.000 is automatically added).
If you need any other Upgrade-Level, you need to subtract 2.000.000 from your desired DB ID.
You can also use the function UpgradeLevel_(DB ID)
number N
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
HealthPercent The amount of health in percentage of max. health. number Y 100
BuildingSpawnWithTag

2007-09-10

Verified
Spawns (creates) an entity on the map. (without setting a Player)
Tag This Tag will be assigned to the new Building. string Y GetScriptTag()
TargetTag The ScriptTag where the Building will be placed. string N
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
Sets only the Team of the Squad (white health bars). To set the Player, please use PlayerBuildingSpawnWithTag.
If you want to set the Player later, use EntityPlayerSet.
You COULD also use just a player in this parameter, but it is not recommended, since validation will fail. (In that case, Player and Team - of that player - would be set)
string N
BuildingId The DB ID of a Building. The default Upgrade-Level is 2 (2.000.000 is automatically added).
If you need any other Upgrade-Level, you need to subtract 2.000.000 from your desired DB ID.
You can also use the function UpgradeLevel_(DB ID)
number N
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
HealthPercent The amount of health in percentage of max. health. number Y 100
PlayerBuildingSpawn

2007-09-10

Verified
Spawns (creates) an entity on the map. (setting both Player and Team)
TargetTag The ScriptTag where the Building will be placed. string N
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
Team is automatically set to the Team of the passed Player.
string N
BuildingId The DB ID of a Building. The default Upgrade-Level is 2 (2.000.000 is automatically added).
If you need any other Upgrade-Level, you need to subtract 2.000.000 from your desired DB ID.
You can also use the function UpgradeLevel_(DB ID)
number N
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
HealthPercent The amount of health in percentage of max. health. number Y 100
PlayerBuildingSpawnWithTag

2007-09-10

Verified
Spawns (creates) an entity on the map. (setting both Player and Team)
Tag This Tag will be assigned to the new Building. string Y GetScriptTag()
TargetTag The ScriptTag where the Building will be placed. string N
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
Team is automatically set to the Team of the passed Player.
string N
BuildingId The DB ID of a Building. The default Upgrade-Level is 2 (2.000.000 is automatically added).
If you need any other Upgrade-Level, you need to subtract 2.000.000 from your desired DB ID.
You can also use the function UpgradeLevel_(DB ID)
number N
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
HealthPercent The amount of health in percentage of max. health. number Y 100
BuildingTypeChange

2007-09-10


Changes the type of an entity.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
BuildingId The DB ID of a Building. The default Upgrade-Level is 2 (2.000.000 is automatically added).
If you need any other Upgrade-Level, you need to subtract 2.000.000 from your desired DB ID.
You can also use the function UpgradeLevel_(DB ID)
number N
BuildingModeChange

2008-03-32


Changes the Building's Mode. Does NOT consume Power from the owning Player.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
ModeId The DB ID of a Mode number N
BuildingModeSetEnabled

2008-04-18


Changes the Building's Mode to the 'enabled' mode. Does NOT consume Power from the owning Player.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
BuildingModeSetDisabled

2008-04-18


Changes the Building's Mode to the 'disabled' mode. Does NOT consume Power from the owning Player.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
BuildingModeToggle

2008-04-18


Toggles the Building's Mode to 'enabled' or 'disabled'. Does NOT consume Power from the owning Player.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
BuildingVanish

2007-08-22


Removes the Building from the map.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
BuildingDestroy

2007-08-22


Destroys the Building.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
BuildingKillInRange

2008-09-08


Kills all Buildings in range.
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
BuildingAnimPlay

2008-04-22


Plays the Building animation once.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Anim Name of the Animation (may include subfolders with forward slashes, eg: 'folder1/folder2/my-anim'). string N
BuildingAnimPlayLooped

2008-04-22


Plays the Building animation in a loop.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Anim Name of the Animation (may include subfolders with forward slashes, eg: 'folder1/folder2/my-anim'). string N
Special
MapReset

2008-06-25


Resets the map, all Scripts and Variables (Sandbox restart).
Cutscene
CutsceneCameraPlay

2008-05-29


Plays the specified Camera Track. TargetTag is optional, it overwrites TargetTag in Cutscene if used.
CameraPath Camera path. string Y GetCameraPath()
Camera Camera takes from the 'camera' folder of the map (without extension '.CS'). string N
TargetTag The TargetTag for relative positioning of the camera. Can be an empty string. string Y
CutsceneCameraPlayFullScreen

2008-10-23


Plays the specified Camera Track in fullscreen mode.
CameraPath Camera path. string Y GetCameraPath()
Camera Camera takes from the 'camera' folder of the map (without extension '.CS'). string N
TargetTag The TargetTag for relative positioning of the camera. Can be an empty string. string Y
CutsceneBegin

2007-09-25


Starts a Cutscene.
Music file relative to 'bf1/sound/streams/', no extension! string N
RenderOnly ScriptTag/Group with Squads that should be rendered during Cutscene. string Y
CutsceneEnd

2007-09-03


Ends a running Cutscene.
CutsceneRenderOnly

2008-08-18


Renders only the entities from the ScriptTag group. Affects only Figures.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
CutsceneRenderAll

2008-08-18


Resets render flags after using CutsceneRenderOnly so all entities are rendered again.
CutsceneRewardCardShowOff

2007-10-05


Plays the Reward Card ShowOff Animation & Effects on the specified TargetTag.
TargetTag The ScriptTag of the 'target' entity. string N
CardSquadId The DB ID of a CardSquad number N
CutsceneSay

2007-09-03


Displays text during a Cutscene.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TextTag The Tag of a Text from database. string N
Text The text to show if the TextTag text does not exist. string N
CutsceneEntityTeleport

2007-10-04


Instantly teleports entity(s) to TargetTag location, no questions asked. Skips 'free position' & blocking checks, allows Figure penetration.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
CutsceneSquadGoto

2007-08-23


Squad goes to target in straight line (stops when blocked, walks through other figures). Use only for Cutscenes!
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
CutsceneCameraPlayAdvanced

2022-08-03


(NEW) Plays the specified Camera Track. TargetTag is optional, it overwrites TargetTag in Cutscene if used.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
CameraPath Camera path. string Y GetCameraPath()
Camera Camera takes from the 'camera' folder of the map (without extension '.CS'). string N
TargetTag The TargetTag for relative positioning of the camera. Can be an empty string. string Y
Fullscreen Use fullscreen, or just a small view. boolean Y true
PortraitFileName File name number of the portrait. string Y
Squad
SquadSpawn

2007-09-10

Verified
Spawns (creates) an entity on the map. (without setting a Player)
TargetTag The ScriptTag where the Squad will be placed. string N
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
Sets only the Team of the Squad (white health bars). To set the Player, please use PlayerSquadSpawn.
If you want to set the Player later, use EntityPlayerSet.
You COULD also use just a player in this parameter, but it is not recommended, since validation will fail. (In that case, Player and Team - of that player - would be set)
string N
SquadId The DB ID of a Squad. The default Upgrade-Level is 2 (2.000.000 is automatically added).
If you need any other Upgrade-Level, you need to subtract 2.000.000 from your desired DB ID.
You can also use the function UpgradeLevel_(DB ID)
number N
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
HealthPercent The amount of health in percentage of max. health. number Y 100
Amount How many Squads will be spawned. number Y 1
SquadSpawnWithTag

2007-09-10

Verified
Spawns (creates) an entity on the map. (without setting a Player)
Tag This Tag will be assigned to the new Squad. string Y GetScriptTag()
TargetTag The ScriptTag where the Squad will be placed. string N
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
Sets only the Team of the Squad (white health bars). To set the Player, please use PlayerSquadSpawnWithTag.
If you want to set the Player later, use EntityPlayerSet.
You COULD also use just a player in this parameter, but it is not recommended, since validation will fail. (In that case, Player and Team - of that player - would be set)
string N
SquadId The DB ID of a Squad. The default Upgrade-Level is 2 (2.000.000 is automatically added).
If you need any other Upgrade-Level, you need to subtract 2.000.000 from your desired DB ID.
You can also use the function UpgradeLevel_(DB ID)
number N
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
HealthPercent The amount of health in percentage of max. health. number Y 100
Amount How many Squads will be spawned. Every spawn gets a incrementing number appended to its Tag, starting with 1. number Y 1
SquadSpawnIntoGroup

2008-01-23

Verified
Spawns (creates) an entity on the map. (without setting a Player)
Tag This Tag will be assigned to the new Squad. string Y GetScriptTag()
Group A ScriptGroup. string N
TargetTag The ScriptTag where the Squad will be placed. string N
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
Sets only the Team of the Squad (white health bars). To set the Player, please use PlayerSquadSpawnIntoGroup.
If you want to set the Player later, use EntityPlayerSet.
You COULD also use just a player in this parameter, but it is not recommended, since validation will fail. (In that case, Player and Team - of that player - would be set)
string N
SquadId The DB ID of a Squad. The default Upgrade-Level is 2 (2.000.000 is automatically added).
If you need any other Upgrade-Level, you need to subtract 2.000.000 from your desired DB ID.
You can also use the function UpgradeLevel_(DB ID)
number N
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
HealthPercent The amount of health in percentage of max. health. number Y 100
Amount How many Squads will be spawned. Every spawn gets a incrementing number appended to its Tag, starting with 1. number Y 1
PlayerSquadSpawn

2007-09-10

Verified
Spawns (creates) an entity on the map. (setting both Player and Team)
TargetTag The ScriptTag where the Squad will be placed. string N
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
Team is automatically set to the Team of the passed Player.
string N
SquadId The DB ID of a Squad. The default Upgrade-Level is 2 (2.000.000 is automatically added).
If you need any other Upgrade-Level, you need to subtract 2.000.000 from your desired DB ID.
You can also use the function UpgradeLevel_(DB ID)
number N
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
HealthPercent The amount of health in percentage of max. health. number Y 100
Amount How many Squads will be spawned. number Y 1
PlayerSquadSpawnWithTag

2007-09-10

Verified
Spawns (creates) an entity on the map. (setting both Player and Team)
Tag This Tag will be assigned to the new Squad. string Y GetScriptTag()
TargetTag The ScriptTag where the Squad will be placed. string N
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
Team is automatically set to the Team of the passed Player.
string N
SquadId The DB ID of a Squad. The default Upgrade-Level is 2 (2.000.000 is automatically added).
If you need any other Upgrade-Level, you need to subtract 2.000.000 from your desired DB ID.
You can also use the function UpgradeLevel_(DB ID)
number N
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
HealthPercent The amount of health in percentage of max. health. number Y 100
Amount How many Squads will be spawned. Every spawn gets a incrementing number appended to its Tag, starting with 1. number Y 1
PlayerSquadSpawnIntoGroup

2008-01-23

Verified
Spawns (creates) an entity on the map. (setting both Player and Team)
Tag This Tag will be assigned to the new Squad. string Y GetScriptTag()
Group A ScriptGroup. string N
TargetTag The ScriptTag where the Squad will be placed. string N
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
Team is automatically set to the Team of the passed Player.
string N
SquadId The DB ID of a Squad. The default Upgrade-Level is 2 (2.000.000 is automatically added).
If you need any other Upgrade-Level, you need to subtract 2.000.000 from your desired DB ID.
You can also use the function UpgradeLevel_(DB ID)
number N
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
HealthPercent The amount of health in percentage of max. health. number Y 100
Amount How many Squads will be spawned. Every spawn gets a incrementing number appended to its Tag, starting with 1. number Y 1
SquadTypeChange

2007-09-10


Changes the type of an entity.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SquadId The DB ID of a Squad. The default Upgrade-Level is 2 (2.000.000 is automatically added).
If you need any other Upgrade-Level, you need to subtract 2.000.000 from your desired DB ID.
You can also use the function UpgradeLevel_(DB ID)
number N
SquadModeChange

2008-03-32


Changes the Squad's Mode. Does NOT consume Power from the owning Player.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
ModeId The DB ID of a Mode number N
SquadModeSetEnabled

2008-04-18


Changes the Squad's Mode to the 'enabled' mode. Does NOT consume Power from the owning Player.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SquadModeSetDisabled

2008-04-18


Changes the Squad's Mode to the 'disabled' mode. Does NOT consume Power from the owning Player.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SquadModeToggle

2008-04-18


Toggles the Squad's Mode to 'enabled' or 'disabled'. Does NOT consume Power from the owning Player.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SquadVanish

2007-08-22


Removes the Squad from the map. Squad figures will simply disappear (no 'dying' animation).
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SquadKill

2007-08-22


Kills the Squad by damaging each Figure so they will die and play their death animation.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SquadKillInRange

2008-09-08


Kills all Squads in range.
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
SquadRespawn

2007-08-28


Respawns (recreates) an entity. Entity must be dead and it must have existed before!
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag 'WhereDied' for position of death or 'StartPos' for startposition. string Y StartPos
HealthPercent The amount of health in percentage of max. health. number Y 100
ObjectRespawn

2007-08-28


Respawns (recreates) an entity. Entity must be dead and it must have existed before!
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag 'WhereDied' for position of death or 'StartPos' for startposition. string Y StartPos
HealthPercent The amount of health in percentage of max. health. number Y 100
BuildingRespawn

2007-08-28


Respawns (recreates) an entity. Entity must be dead and it must have existed before!
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag 'WhereDied' for position of death or 'StartPos' for startposition. string Y StartPos
HealthPercent The amount of health in percentage of max. health. number Y 100
SquadTeleportInRange

2007-12-10


Instantly teleports the Squads in range to TargetTag location.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
TargetTag The ScriptTag of the 'target' entity. string N
SquadAttack

2007-09-28


Squad attacks the specified TargetTag entity (even if it is a friendly entity). TargetTag must be alive and attackable!
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
AttackGroupSize Squads will attack all available Targets in Groups of this size. number Y 0
SquadAttackForced

2008-08-18


Squad attacks the specified TargetTag entity (even if it is a friendly entity). Uses Forced Goto to get to Target.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
AttackGroupSize Squads will attack all available Targets in Groups of this size. number Y 0
SquadBarrierMount

2008-03-13


Squad tries to mount TargetTag barrier (module, set or scriptgroup containing modules).
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
SquadBarrierDismount

2008-03-13


Squad dismounts barrier.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SquadFlee

2008-06-12


Squads flee from nearest enemy entity by using forced Goto in the opposite Direction.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Distance Distance in meters. Decimal places are allowed. number N
SearchRadius The (max.) Radius around the Tag that should be searched. number N
SquadPatrol

2007-08-23


Squad walks waypoints back and forth continously. Continues patrol after being attacked.
* Description seems to be incorrect. Behaves more like SquadGridPatrol (Squad does not walk along the waypoints, but walks between first and last waypoint, also seems to consider the Goto Grid). It is currently not used directly in any maps.
It is used by: WP_AttackAndPatrolArea, SquadAmountPatrol and SquadIdleAmountPatrol
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
SquadGoto

2007-08-23

Verified
Squad goes towards TargetTag or along TargetTag-ScriptGroup waypoints. Continues goto after being attacked. Can open Gates (only works, if Squad is in the same Team as the Barrier and if no Human Player is assigned). Careful: Roots or Taunt can stop Goto if Tag is a single ScriptTag. It seems like ScriptGroups as well as SquadGridGoto are not affected.
Tag The Squad. A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The Destination. The ScriptTag of the 'target' entity. string N
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
SquadGotoForced

2007-08-23

Verified
Same as SquadGoto but Squad does not attack or follow attackers until it has reached its destination. Use with care! Careful: Roots or Taunt can stop Goto. Putting them into a ScriptGroup, does not change this behavior in this case.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
SquadGotoFight

2008-01-17


Squad goes to any TargetTag Squad that is in a fight.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
SquadGotoRandom

2008-03-14


Squad goes randomly towards ONE of the TargetTags.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
SquadGotoClosestMonumentOrGenerator

2008-03-15


Squad(s) go towards closest Monument or Generator. Continues goto after being attacked.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
SearchRadius The (max.) Radius around the Tag that should be searched. number N
SquadGotoClosestSquad

2008-03-15


Squad(s) go towards closest Squad. Continues goto after being attacked.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
SearchRadius The (max.) Radius around the Tag that should be searched. number N
SquadGotoClosestBuilding

2008-03-15


Squad(s) go towards closest Building. Continues goto after being attacked.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
SearchRadius The (max.) Radius around the Tag that should be searched. number N
SquadGotoClosestBarrier

2008-03-15


Squad(s) go towards closest Barrier. Continues goto after being attacked.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
SearchRadius The (max.) Radius around the Tag that should be searched. number N
SquadGotoClosestTarget

2008-07-01


Squad(s) go towards closest attackable Target. Continues goto after being attacked.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
SearchRadius The (max.) Radius around the Tag that should be searched. number N
SquadHoldPosition

2007-09-21


Squad holds position, will attack if enemies are in attack range but will not pursue enemies.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SquadGotoMapBorder

2008-09-26


Squad walks to Target from outside map border. Target must be a ScriptMarker and close to MapBorder.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
SquadAnimPlay

2007-10-02


Plays the animation once for all figures in the Squad.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Unit A subfolder from the 'bf1/gfx/units/' folder. string N
Anim Name of the Animation (may include subfolders with forward slashes, eg: 'folder1/folder2/my-anim'). string N
SquadAnimPlayLooped

2007-10-02


Plays the animation continuously for all figures in the Squad.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Unit A subfolder from the 'bf1/gfx/units/' folder. string N
Anim Name of the Animation (may include subfolders with forward slashes, eg: 'folder1/folder2/my-anim'). string N
SquadInRangePushBack

2008-01-23


Squad figures are getting pushed back, the epicentre of the pushback is at the TargetTag location.
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
Speed Speed in meters per second. Decimal places allowed. number N
MaxRadiusType Can be: RadiusType_S, .._M, .._L, .._XL (see BEE). number N
SquadStop

2007-10-05


Squad stops movement.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SquadGroupCheckpointGoto

2008-03-18


SquadGroup goes to next Checkpoint (direct line of sight to Checkpoint is recommended).
Group A ScriptGroup. string N
TargetTag The ScriptTag of the 'target' entity. string N
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
SquadCheckpointGoto

2008-03-18


Squad goes to next Checkpoint (direct line of sight to Checkpoint is recommended).
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
SquadGroupCheckpointGotoStop

2008-03-25


Stops a SquadGroup that is currently on a CheckpointGoto. Group will stop at the next checkpoint they reach.
Group A ScriptGroup. string N
SquadGridGoto

2008-10-16

Verified
Standard Goto that uses the GotoGrid.Can open Gates (only works, if Squad is in the same Team as the Barrier and if no Human Player is assigned)
Tag The Squad. A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The Destination. The ScriptTag of the 'target' entity. string N
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
IgnoreGridIfAllSquadsFly Ignores grid if (and only if) all Squads of the group are flying units. boolean Y false
SquadGridPatrol

2008-06-06


Patrol mode on path given by TargetTag (start & end point), uses GotoGrid.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
SquadSpawnRandomSelection

2007-12-07


Spawns a random selection of Squads, depending on the SpawnTable (see description for table syntax).
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SpawnTable Must be a table with specific syntax, see command description. table N
TargetTag The ScriptTag of the 'target' entity. string N
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
HealthPercent The amount of health in percentage of max. health. number Y 100
PlayerSquadSpawnRandomSelection

2007-12-07


Spawns a random selection of Squads, depending on the SpawnTable (see description for table syntax).
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SpawnTable Must be a table with specific syntax, see command description. table N
TargetTag The ScriptTag of the 'target' entity. string N
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
HealthPercent The amount of health in percentage of max. health. number Y 100
OctoberVersionOnly
OctoberVersionOnly_DoDamageToTeamSquadInRange

2007-10-01


Does damage to Squads in Range.
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
Amount Just a simple value, meaning depends on context. number N
OctoberVersionOnly_DoDamageToTeamSquadInRect

2007-10-01


Does damage to Squads in Range.
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
Amount Just a simple value, meaning depends on context. number N
OctoberVersionOnly_DoDamageToTeamSquadInRay

2007-10-09


Does damage to Squads in Range.
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
Amount Just a simple value, meaning depends on context. number N
Debug
DebugInfoMessage

2007-08-14


Shows a MessageBox to the user (ignored in release builds).
Message An important Message from you to whom it may concern. string N
Popup If true, message will also popup in a windows Message Box. boolean Y false
DebugWarningMessage

2007-08-14


Shows a MessageBox to the user (ignored in release builds).
Message An important Message from you to whom it may concern. string N
Popup If true, message will also popup in a windows Message Box. boolean Y false
DebugErrorMessage

2007-08-14


Shows a MessageBox to the user (ignored in release builds).
Message An important Message from you to whom it may concern. string N
Popup If true, message will also popup in a windows Message Box. boolean Y false
Ability
AbilitySpawn

2008-11-04


Spawns (creates) an entity on the map.
TargetTag The ScriptTag of the 'target' entity. Cannot be a script group! string N
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
AbilityId The DB ID of an Ability number N
AbilitySpawnWithTag

2008-11-04


Spawns (creates) an entity on the map.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
AbilityId The DB ID of an Ability number N
AbilitySpawnIntoGroup

2008-11-04


Spawns (creates) an entity on the map.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Group A ScriptGroup. string N
TargetTag The ScriptTag of the 'target' entity. string N
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
AbilityId The DB ID of an Ability number N
AbilityVanish

2008-11-04


Removes the Ability from the map. Works with all supported entity types.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
AbilityDestroy

2008-11-04


Kills or destroys the Ability regularly.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Generator & Monument
MonumentVanish

2008-12-10


Removes the Monument from the map.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
GeneratorVanish

2008-12-10


Removes the Generator from the map.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
ScriptGroup
ScriptGroupClear

2008-03-02


Removes all tags from the ScriptGroup.
Group A ScriptGroup. string N
ScriptGroupTagAdd

2008-03-02


Adds the tag to the ScriptGroup.
Group A ScriptGroup. string N
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
ScriptGroupTagRemove

2008-03-02


Removes the tag from the ScriptGroup.
Group A ScriptGroup. string N
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
ScriptGroupSquadSpawnCounterReset

2008-03-09


Resets the ScriptGroup's SquadSpawnCounter value (set to 0).
Group The name of the ScriptGroup for which a SquadSpawnCounter is registered. string N
ScriptGroupSquadDeathCounterReset

2008-03-09


Resets the ScriptGroup's SquadDeathCounter value (set to 0).
Group The name of the ScriptGroup for which a SquadDeathCounter is registered. string N
!Functions
GetScriptTag

2007-08-21


Returns the ScriptTag of the entity currently executing this script.
GetScriptPath

2007-12-10


Returns the path to the current map's 'script' folder, for use in: dofile(GetScriptPath()..'myscript.lua')
_ARG0_ to be analyzed number Y
GetNumPlayers

2007-08-21


Returns the number of Players that are starting the map.
GetCurrentWaveNumber

2008-03-02


Returns the current wave number in a SpawnWave 'sp_' script.
GetTotalWaveNumber

2008-03-02


Returns the total number of waves executing this SpawnWave 'sp_' script.
ArenaDummyRandom

2007-12-07


'Real' random for 1p Arena Map. MUST NOT BE USED FOR PRODUCTION!!! WILL CAUSE DESYNCH IN MULTIPLAYER!!!
_ARG0_ to be analyzed number Y
_ARG1_ to be analyzed number Y
GdsGetConfigBoolean

2007-12-07


Tries to read a Boolean value from config.xml. If value does not exist, value is added to config.xml and 'false' is returned. Key is Case-insensitive.
_ARG0_ to be analyzed ? Y
GdsGetConfigInteger

2007-12-07


Tries to read an Integer value from config.xml. If value does not exist, value is added to config.xml and '0' is returned. Key is Case-insensitive.
_ARG0_ to be analyzed ? Y
GdsGetConfigFloat

2007-12-07


Tries to read a Float value from config.xml. If value does not exist, value is added to config.xml and '0.0' is returned. Key is Case-insensitive.
_ARG0_ to be analyzed ? Y
GdsGetConfigString

2007-12-07


Tries to read a String value from config.xml. If value does not exist, value is added to config.xml and empty string is returned. Key is Case-insensitive.
_ARG0_ to be analyzed ? Y
GetDifficulty

2008-01-30


Returns the current difficulty (a number).
SetDifficulty

2008-06-19


Sets the game's difficulty (a number).
difficulty to be analyzed number Y
SpawnWaveTemplate

2008-02-15


Creates templates of SpawnWaves for later Spawning.
SpawnWaveEmitter

2008-02-15


Defines a group of spawn waves that can be emitted at a certain location.
RegisterSquadSpawnCounter

2008-03-09


Counts all Squad spawns in this ScriptGroup. Must be used outside of any State!
Group A ScriptGroup. string N
RegisterSquadDeathCounter

2008-03-09


Counts all Squad deaths in this ScriptGroup. Must be used outside of any State!
Group A ScriptGroup. string N
UpgradeLevel0

2008-07-16


Changes the base (Upgrade2) ID of an entity to the corresponding UpgradeLevel ID.
_ARG0_ to be analyzed number N
UpgradeLevel1

2008-07-16


Changes the base (Upgrade2) ID of an entity to the corresponding UpgradeLevel ID.
_ARG0_ to be analyzed number N
UpgradeLevel2

2008-07-16


Changes the base (Upgrade2) ID of an entity to the corresponding UpgradeLevel ID.
_ARG0_ to be analyzed number N
UpgradeLevel3

2008-07-16


Changes the base (Upgrade2) ID of an entity to the corresponding UpgradeLevel ID.
_ARG0_ to be analyzed number N
Player
PlayerCardBuildingFakePlay

2011-12-05


Emulates the playing of a CardBuilding but without Power consumption and for any Player.
TargetTag The ScriptTag of the 'target' entity. string N
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
CardBuildingIdParam The DB ID of a CardBuilding number N
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
PlayerCardBuildingFakePlayWithTag

2011-12-05


Emulates the playing of a CardBuilding but without Power consumption and for any Player.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
CardBuildingIdParam The DB ID of a CardBuilding number N
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
PlayerCardSpellFakePlay

2008-10-23


Emulates the playing of a CardSpell but without Power consumption and for any Player.
TargetTag The ScriptTag of the 'target' entity. string N
AimTag Where to aim at (direction). Can be empty if not needed. ScriptGroup not supported. string Y
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
CardSpellId The DB ID of a CardSpell number N
PlayerCardSquadFakePlay

2007-10-03


Emulates the playing of a CardSquad but without Power consumption and for any Player.
TargetTag The ScriptTag of the 'target' entity. string N
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
CardSquadId The DB ID of a CardSquad number N
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
DoSpell Wether the CardSquad's Spell should be executed or not. boolean Y true
DoCheer Wether the Squad's cheer animation should be played or not. boolean Y true
PlayerCardSquadFakePlayWithTag

2007-10-03


Emulates the playing of a CardSquad but without Power consumption and for any Player.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
CardSquadId The DB ID of a CardSquad number N
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
DoSpell Wether the CardSquad's Spell should be executed or not. boolean Y true
DoCheer Wether the Squad's cheer animation should be played or not. boolean Y true
PlayerGameOver

2007-10-02


GameOver man, GameOver!
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
TargetTag The ScriptTag of the 'target' entity. string N
Message An important Message from you to whom it may concern. string N
PlayerGameWon

2007-10-02


GameOver man, GameOver!
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
PlayerGameOverCheckEnabled

2008-08-25


Enables the GameOver check.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
PlayerGameOverCheckDisabled

2008-08-25


Disables the GameOver check.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
PlayerPowerGive

2007-09-11


Gives Power to or takes Power from a Player.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Amount Just a simple value, meaning depends on context. number N
PlayerPowerTake

2007-09-11


Gives Power to or takes Power from a Player.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Amount Just a simple value, meaning depends on context. number N
PlayerGeneratorActivate

2008-06-26


Builds a Generator so it generates energy for that Player.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
PlayerMonumentActivate

2008-06-26

Verified
Builds an Orb on a Monument for that Player.
* Does not activate orb, if it is already half-activated via setting the Player Kit parameter.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
Power Can be any of: PowerShadow, PowerNature, PowerFrost, PowerFire, PowerAll, ... number N
PlayerGeneratorDeactivate

2008-06-26


Crushes Generator so it stops producing Energy.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
PlayerMonumentDeactivate

2008-06-26


Destroys the Orb of a Monument.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
PlayerSquadCheer

2008-06-13


Squads in range play their Cheer Anim/FX!
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
PlayerGeneratorRefresh

2021-08-01


(NEW) Refresh a Generator to its full power.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
SetUiVisibility

2022-07-03


(NEW) Show or hide UI for a player.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
InterfaceState Show or hide UI. boolean Y true
PlayerVoidPowerGive

2022-08-02


(NEW) Gives Void Power to a Player.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Amount Just a simple value, meaning depends on context. number N
PlayerVoidPowerTake

2022-08-02


(NEW) Takes Void Power from a Player.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Amount Just a simple value, meaning depends on context. number N
Object
ObjectSpawn

2007-09-10


Spawns (creates) an entity on the map.
TargetTag The ScriptTag of the 'target' entity. string N
ObjectId The DB ID of an Object number N
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
Height Height in meters. Decimal places and negative values are ok, 0 == on the ground number Y 0
Scaling Scaling Factor, 1.0 is default scaling (100%). number Y 1
ObjectSpawnWithTag

2007-09-10


Spawns (creates) an entity on the map.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
ObjectId The DB ID of an Object number N
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
Height Height in meters. Decimal places and negative values are ok, 0 == on the ground number Y 0
Scaling Scaling Factor, 1.0 is default scaling (100%). number Y 1
ObjectTypeChange

2007-09-10


Changes the type of an entity.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
ObjectId The DB ID of an Object number N
ObjectVanish

2007-08-22


Removes the Object from the map.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
ObjectDestroy

2007-08-22


Destroys the Object, Object MUST be destructible!
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
ObjectAnimPlay

2007-10-09


Plays the animation once on the Object.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Anim Name of the Animation (may include subfolders with forward slashes, eg: 'folder1/folder2/my-anim'). string N
ObjectAnimPlayLooped

2007-10-09


Plays the animation continuously on the Object.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Anim Name of the Animation (may include subfolders with forward slashes, eg: 'folder1/folder2/my-anim'). string N
Entity
EntityAbilityAdd

2007-09-11


Adds or removes Abilities of an entity.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
AbilityId The DB ID of an Ability number N
ApplyToFigures Add to/remove from the Squad's figures, not the Squad itself. boolean Y true
EntityAbilityRemove

2007-09-11


Adds or removes Abilities of an entity.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
AbilityId The DB ID of an Ability number N
ApplyToFigures Add to/remove from the Squad's figures, not the Squad itself. boolean Y true
EntitySpellCast

2007-09-29


Lets the Entity(s) cast the given Spell on the TargetEntity. Target must be valid for the given Spell.
*Careful! This has the same requirements as if you used the spell yourself. The Spell-Cast uses energy. If the Player has not enough energy, the spell will not run. You have to make sure, that the Player has enough energy, or use NPC unit spells, which have no power cost. It also can be blocked (eg. recast-time, ...) - you can check the blocked-part with EntitySpellCastIsBlocked.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
SpellId The DB ID of a Spell number N
EntitySpellCastOnClosestSquad

2008-03-17


Lets the Entity(s) cast the given Spell on the closest Squad. Target must be valid for the given Spell.
*Careful! This has the same requirements as if you used the spell yourself. The Spell-Cast uses energy. If the Player has not enough energy, the spell will not run. You have to make sure, that the Player has enough energy, or use NPC unit spells, which have no power cost. It also can be blocked (eg. recast-time, ...) - you can check the blocked-part with EntitySpellCastIsBlocked.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SpellId The DB ID of a Spell number N
EntitySpellCastOnClosestBuilding

2008-03-20


Lets the Entity(s) cast the given Spell on the closest Building. Target must be valid for the given Spell.
*Careful! This has the same requirements as if you used the spell yourself. The Spell-Cast uses energy. If the Player has not enough energy, the spell will not run. You have to make sure, that the Player has enough energy, or use NPC unit spells, which have no power cost. It also can be blocked (eg. recast-time, ...) - you can check the blocked-part with EntitySpellCastIsBlocked.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SpellId The DB ID of a Spell number N
EntitySpellCastOnClosestGenerator

2008-06-25


Lets the Entity(s) cast the given Spell on the closest Power Generator. Target must be valid for the given Spell.
*Careful! This has the same requirements as if you used the spell yourself. The Spell-Cast uses energy. If the Player has not enough energy, the spell will not run. You have to make sure, that the Player has enough energy, or use NPC unit spells, which have no power cost. It also can be blocked (eg. recast-time, ...) - you can check the blocked-part with EntitySpellCastIsBlocked.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SpellId The DB ID of a Spell number N
IgnoreEmpty Wether empty (no more energy left) Generators will be ignored. boolean Y false
EntitySpellCastOnClosestTarget

2008-04-23


Lets the Entity(s) cast the given Spell on the closest attackable Target. Target must be valid for the given Spell.
*Careful! This has the same requirements as if you used the spell yourself. The Spell-Cast uses energy. If the Player has not enough energy, the spell will not run. You have to make sure, that the Player has enough energy, or use NPC unit spells, which have no power cost. It also can be blocked (eg. recast-time, ...) - you can check the blocked-part with EntitySpellCastIsBlocked.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SpellId The DB ID of a Spell number N
EntityPlayerSet

2007-09-04


Sets the Player (Owner) the entity belongs to, changing who can select & control the entity.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
EntityTeamSet

2007-09-03


Sets the Team the entity belongs to, possibly changing it's friend-foe relationships.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
EntityDirectionSet

2007-10-03


Changes Direction of an Entity.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
Variation Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
EntityDirectionSetRelative

2007-10-03


Changes Direction of an Entity.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
Variation Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
EntityDirectionLookAtTarget

2007-10-03


Changes Direction of an Entity.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
Variation Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
EntityHealthSet

2007-09-06


Modifies the health (lifepoints) of the entity in percentage of its max. health.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Percent A percentage from 0-100 (do not write the % sign). number N
EntityHealthAdd

2007-09-06


Modifies the health (lifepoints) of the entity in percentage of its max. health.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Percent A percentage from 0-100 (do not write the % sign). number N
EntityHealthSubtract

2007-09-06


Modifies the health (lifepoints) of the entity in percentage of its max. health.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Percent A percentage from 0-100 (do not write the % sign). number N
DoDamage Does damage instead of setting health. boolean Y true
EntitySetMaxHealthAbsolute

2011-12-06


Set the max health (lifepoints) of the entity in absolute number
TargetTag The ScriptTag of the 'target' entity. string N
MaxHealthAbsolute A number > than 0. The amount of max health in absolute number. number N
EntityVanish

2008-03-19


Removes the Entity from the map. Works with all supported entity types.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
EntityKill

2008-03-19


Kills or destroys the Entity, entity MUST be destructible! Works with all supported entity types.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
EntityKillInRange

2008-09-08


Kills all entities in range. Should not be used! Basis for filtered Actions.
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
EntitySpellAdd

2007-10-04


Adds the Spell to the Entity unless it already exists.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SpellId The DB ID of a Spell (for upgraded spells use "SpellId = UpgradeLevel1-3{id}") number N
EntitySpellRemove

2009-03-17


Removes the Spell from the Entity if it exists (otherwise command is ignored).
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SpellId The DB ID of a Spell number N
EntityTeleport

2007-10-04


Instantly teleports entity(s) to TargetTag location, no questions asked.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
EntityNameTagShow

2022-11-17


(NEW) Displays the target entity's name tag. Only updates when out of view.
TargetTag The ScriptTag of the 'target' entity. string N
EntityNameTagHide

2022-11-17


(NEW) Hides the target entity's name tag. Only updates when out of view.
TargetTag The ScriptTag of the 'target' entity. string N
EntityCustomNameTagSet

2022-11-18


(NEW) Sets and displays a custom name tag for the target entity. An empty sName will hide the custom name tag. Only updates when out of view.
TargetTag The ScriptTag of the 'target' entity. string N
CustomNameTag A custom name tag. string N
Variable
NetworkFlagSetTrue

2008-09-01


Changes the flag accordingly.
Name Prefix:
nf_

The name of the network variable.
string N
NetworkFlagSetFalse

2008-09-01


Changes the flag accordingly.
Name Prefix:
nf_

The name of the network variable.
string N
NetworkFlagToggle

2008-09-01


Toggles the flag, eg if it is true it will be set to false and vice versa.
Name Prefix:
nf_

The name of the network variable.
string N
NetworkValueSet

2008-09-01


Changes the value accordingly.
Name Prefix:
nv_

The name of the network variable. Value is limited to 0-255 range!
string N
Value Just a simple value, meaning depends on context. number N
NetworkValueAdd

2008-09-01


Changes the value accordingly.
Name Prefix:
nv_

The name of the network variable. Value is limited to 0-255 range!
string N
Value Just a simple value, meaning depends on context. number N
NetworkValueSubtract

2008-09-01


Changes the value accordingly.
Name Prefix:
nv_

The name of the network variable. Value is limited to 0-255 range!
string N
Value Just a simple value, meaning depends on context. number N
NetworkValueIncrease

2008-09-01


Increases the value by one, shorthand for Add with Value 1.
Name Prefix:
nv_

The name of the network variable. Value is limited to 0-255 range!
string N
NetworkValueDecrease

2008-09-01


Decreases the value by one, shorthand for Subtract with Value 1.
Name Prefix:
nv_

The name of the network variable. Value is limited to 0-255 range!
string N
PlayerFlagSetTrue

2007-08-14


Changes the flag accordingly.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Name Prefix:
pf_

The name of the player variable.
string N
PlayerFlagSetFalse

2007-08-14


Changes the flag accordingly.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Name Prefix:
pf_

The name of the player variable.
string N
PlayerFlagToggle

2007-08-14


Toggles the flag, eg if it is true it will be set to false and vice versa.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Name Prefix:
pf_

The name of the player variable.
string N
PlayerValueSet

2007-08-14


Changes the value accordingly.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Name Prefix:
pv_

The name of the player variable.
string N
Value Just a simple value, meaning depends on context. number N
PlayerValueAdd

2007-08-14


Changes the value accordingly.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Name Prefix:
pv_

The name of the player variable.
string N
Value Just a simple value, meaning depends on context. number N
PlayerValueSubtract

2007-08-14


Changes the value accordingly.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Name Prefix:
pv_

The name of the player variable.
string N
Value Just a simple value, meaning depends on context. number N
PlayerValueIncrease

2007-08-14


Increases the value by one, shorthand for Add with Value 1.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Name Prefix:
pv_

The name of the player variable.
string N
PlayerValueDecrease

2007-08-14


Decreases the value by one, shorthand for Subtract with Value 1.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Name Prefix:
pv_

The name of the player variable.
string N
PlayerValueRandomize

2007-08-14


Changes the value accordingly.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Name Prefix:
pv_

The name of the player variable.
string N
MaxValue The upper limit value the Randomize command will generate. number N
PlayerTimerStart

2007-08-14


Starts/Stops a Timer.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Name Prefix:
pt_

The name of the player timer.
string N
PlayerTimerStop

2007-08-14


Starts/Stops a Timer.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Name Prefix:
pt_

The name of the player timer.
string N
MapFlagSetTrue

2007-08-14


Changes the flag accordingly.
Name Prefix:
mf_

The name of the map variable.
string N
MapFlagSetFalse

2007-08-14


Changes the flag accordingly.
Name Prefix:
mf_

The name of the map variable.
string N
MapFlagToggle

2007-08-14


Toggles the flag, eg if it is true it will be set to false and vice versa.
Name Prefix:
mf_

The name of the map variable.
string N
EntityFlagSetTrue

2007-08-14


Changes the flag accordingly.
Name Prefix:
ef_

The name of the entity variable.
string N
EntityFlagSetFalse

2007-08-14


Changes the flag accordingly.
Name Prefix:
ef_

The name of the entity variable.
string N
EntityFlagToggle

2007-08-14


Toggles the flag, eg if it is true it will be set to false and vice versa.
Name Prefix:
ef_

The name of the entity variable.
string N
MapValueSet

2007-08-14


Changes the value accordingly.
Name Prefix:
mv_

The name of the map variable.
string N
Value Just a simple value, meaning depends on context. number N
MapValueAdd

2007-08-14


Changes the value accordingly.
Name Prefix:
mv_

The name of the map variable.
string N
Value Just a simple value, meaning depends on context. number N
MapValueSubtract

2007-08-14


Changes the value accordingly.
Name Prefix:
mv_

The name of the map variable.
string N
Value Just a simple value, meaning depends on context. number N
MapValueIncrease

2007-08-14


Increases the value by one, shorthand for Add with Value 1.
Name Prefix:
mv_

The name of the map variable.
string N
MapValueDecrease

2007-08-14


Decreases the value by one, shorthand for Subtract with Value 1.
Name Prefix:
mv_

The name of the map variable.
string N
MapValueRandomize

2007-08-14


Changes the value accordingly.
Name Prefix:
mv_

The name of the map variable.
string N
MaxValue The upper limit value the Randomize command will generate. number N
EntityValueSet

2007-08-14


Changes the value accordingly.
Name Prefix:
ev_

The name of the entity variable.
string N
Value Just a simple value, meaning depends on context. number N
EntityValueAdd

2007-08-14


Changes the value accordingly.
Name Prefix:
ev_

The name of the entity variable.
string N
Value Just a simple value, meaning depends on context. number N
EntityValueSubtract

2007-08-14


Changes the value accordingly.
Name Prefix:
ev_

The name of the entity variable.
string N
Value Just a simple value, meaning depends on context. number N
EntityValueIncrease

2007-08-14


Increases the value by one, shorthand for Add with Value 1.
Name Prefix:
ev_

The name of the entity variable.
string N
EntityValueDecrease

2007-08-14


Decreases the value by one, shorthand for Subtract with Value 1.
Name Prefix:
ev_

The name of the entity variable.
string N
EntityValueRandomize

2007-08-14


Changes the value accordingly.
Name Prefix:
ev_

The name of the entity variable.
string N
MaxValue The upper limit value the Randomize command will generate. number N
MapTimerStart

2007-08-14

Verified
Starts a Timer. Also re-starts a timer from 0
Name Prefix:
mt_

The name of the map timer.
string N
MapTimerStop

2007-08-14


Stops a Timer.
Name Prefix:
mt_

The name of the map timer.
string N
EntityTimerStart

2007-08-14


Starts/Stops a Timer.
Name Prefix:
et_

The name of the entity timer.
string N
EntityTimerStop

2007-08-14


Starts/Stops a Timer.
Name Prefix:
et_

The name of the entity timer.
string N
MapValueSetToVarValue

2008-03-01


Changes the value accordingly.
Name Prefix:
mv_

The name of the map variable.
string N
VarName Prefix:
mv_

The name of the map variable to use in the computation.
string N
MapValueAddVarValue

2008-03-01


Changes the value accordingly.
Name Prefix:
mv_

The name of the map variable.
string N
VarName Prefix:
mv_

The name of the map variable to use in the computation.
string N
MapValueSubtractVarValue

2008-03-01


Changes the value accordingly.
Name Prefix:
mv_

The name of the map variable.
string N
VarName Prefix:
mv_

The name of the map variable to use in the computation.
string N
MapValueMultiplyByVarValue

2008-03-01


Changes the value accordingly.
Name Prefix:
mv_

The name of the map variable.
string N
VarName Prefix:
mv_

The name of the map variable to use in the computation.
string N
MapValueDivideByVarValue

2008-03-01


Changes the value accordingly.
Name Prefix:
mv_

The name of the map variable.
string N
VarName Prefix:
mv_

The name of the map variable to use in the computation.
string N
EntityValueSetToVarValue

2008-03-01


Changes the value accordingly.
Name Prefix:
ev_

The name of the entity variable.
string N
VarName Prefix:
ev_

The name of the entity variable to use in the computation.
string N
EntityValueAddVarValue

2008-03-01


Changes the value accordingly.
Name Prefix:
ev_

The name of the entity variable.
string N
VarName Prefix:
ev_

The name of the entity variable to use in the computation.
string N
EntityValueSubtractVarValue

2008-03-01


Changes the value accordingly.
Name Prefix:
ev_

The name of the entity variable.
string N
VarName Prefix:
ev_

The name of the entity variable to use in the computation.
string N
EntityValueMultiplyByVarValue

2008-03-01


Changes the value accordingly.
Name Prefix:
ev_

The name of the entity variable.
string N
VarName Prefix:
ev_

The name of the entity variable to use in the computation.
string N
EntityValueDivideByVarValue

2008-03-01


Changes the value accordingly.
Name Prefix:
ev_

The name of the entity variable.
string N
VarName Prefix:
ev_

The name of the entity variable to use in the computation.
string N
Barrier
BarrierBuildOrRepair

2008-04-19


Builds the specified BarrierSet and gives it to the Player, or repairs it if the Player owns that BarrierSet.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
BarrierGateToggle

2008-01-22


Opens or closes all Gates of the BarrierSet, depending on their current state.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
BarrierGateOpen

2008-01-22


Opens all Gates of the BarrierSet.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
BarrierGateClose

2008-01-22


Closes all Gates of the BarrierSet.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
BarrierVanish

2007-10-05


Removes the Barrier from the map.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
BarrierDestroy

2007-10-05


Destroys the Barrier.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Mission
MissionEventInfo

2007-09-26


Puts a message into the EventQueue.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
TargetTag The ScriptTag of the 'target' entity. string N
Summary A short summary for the MissionGoal or EventQueue message. string N
Description The detailed text for the MissionGoal or EventQueue message. string Y <no description>
MissionEventWarning

2007-09-26


Puts a message into the EventQueue.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
TargetTag The ScriptTag of the 'target' entity. string N
Summary A short summary for the MissionGoal or EventQueue message. string N
Description The detailed text for the MissionGoal or EventQueue message. string Y <no description>
MissionEventSuccess

2007-09-26


Puts a message into the EventQueue.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
TargetTag The ScriptTag of the 'target' entity. string N
Summary A short summary for the MissionGoal or EventQueue message. string N
Description The detailed text for the MissionGoal or EventQueue message. string Y <no description>
MissionEventFailure

2007-09-26


Puts a message into the EventQueue.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
TargetTag The ScriptTag of the 'target' entity. string N
Summary A short summary for the MissionGoal or EventQueue message. string N
Description The detailed text for the MissionGoal or EventQueue message. string Y <no description>
MiniMapAlert

2007-09-19


Show an Alert on MiniMap at the specified TargetTag location.
TargetTag The ScriptTag of the 'target' entity. string N
AlertType The type of a MiniMap Alert (determines gfx & color). number N
MissionOutcry

2007-10-23

Verified
Displays a (voiced) text outside a Cutscene. Several Outcries can be queued as a conversation.
*Careful! If you want to use this as Debug-Information, use a DurationSeconds of 0, otherwise you won't see new messages for 5 seconds
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Tag A ScriptTag or ScriptGroup. *What does that do? string Y GetScriptTag()
TextTag The Tag of a Text (+Voice) from database.
If the Tag does not exist in the database, the outcry will only be shown as Text, without any sound:
[Outcry]: [TextTag] Text.
If you dont want the [TextTag] (including Brackets) visible, leave TextTag empty (TextTag = "")
string N
Text The text to show if the TextTag text does not exist. (In the database) string N
DurationSeconds Duration for the outcry in integer seconds, default is 5. number Y 5
PortraitFileName File name number of the portrait. string Y
Log

2020-08-23


(NEW) As opposed to MissionOutcry, which relies on the chat, Log directly logs to the log files in Documents/BattleForge/Diag.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TextTag The Tag of a Text from database. string N
Text The text to show if the TextTag text does not exist. string N
DurationSeconds Duration for the outcry in integer seconds, default is 5. number Y 5
PortraitFileName File name number of the portrait. string Y
MissionTaskSetActive

2007-09-26


Adds, removes or modifies a Mission Task.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
TaskTag The 'tag' of the MissionTask to be modified. string N
TargetTag The ScriptTag of the 'target' entity. string N
Summary A short summary for the MissionGoal or EventQueue message. string N
Description The detailed text for the MissionGoal or EventQueue message. string Y <no description>
MissionTaskSetSolved

2007-09-26


Adds, removes or modifies a Mission Task.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
TaskTag The 'tag' of the MissionTask to be modified. string N
TargetTag The ScriptTag of the 'target' entity. string N
Summary A short summary for the MissionGoal or EventQueue message. string N
Description The detailed text for the MissionGoal or EventQueue message. string Y <no description>
MissionTaskSetFailed

2007-09-26


Adds, removes or modifies a Mission Task.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
TaskTag The 'tag' of the MissionTask to be modified. string N
TargetTag The ScriptTag of the 'target' entity. string N
Summary A short summary for the MissionGoal or EventQueue message. string N
Description The detailed text for the MissionGoal or EventQueue message. string Y <no description>
MissionTaskRemove

2007-09-26


Adds, removes or modifies a Mission Task.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
TaskTag The 'tag' of the MissionTask to be modified. string N
MissionTaskOnlyTransferXP

2009-02-12


Adds, removes or modifies a Mission Task.
TaskTag The 'tag' of the MissionTask to be modified. string N
MissionCounterShow

2008-03-07


Shows a Mission Counter onscreen (eg 'Bosses Killed: 0/3').
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
CounterTag A unique Tag for the Mission Counter. string N
LocaTag A LocaTag from database, if LocaTag does not exist it's simply the Text displayed. string N
MaxValue The upper limit for the Mission Counter. number N
MissionCounterHide

2008-03-07


Hides the Mission Counter from display (the counter's value itself can still be queried/modified).
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
CounterTag A unique Tag for the Mission Counter. string N
MissionTimerStart

2008-03-07


Adds a Mission Timer displayed onscreen.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
TimerTag A unique Tag for the Mission Timer. string N
LocaTag A LocaTag from database, if LocaTag does not exist it's simply the Text displayed. string N
Seconds Number, in Seconds. Fractions are also allowed, in 0.1 increments. number Y 0
Minutes Number, in Minutes. Fractions are also allowed. number Y 0
MissionTimerChange

2008-05-30


Changes the text of an existing Mission Timer without changing the timer.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
TimerTag A unique Tag for the Mission Timer. string N
TimerTagOld The TimerTag of the existing timer whose text should be changed. string N
LocaTag A LocaTag from database, if LocaTag does not exist it's simply the Text displayed. string N
MissionTimerStop

2008-03-07


Removes the Mission Timer from onscreen display and stops it.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
TimerTag A unique Tag for the Mission Timer. string N
MissionTimerPause

2008-03-07


Pauses the Mission Timer if not already paused. NOT YET IMPLEMENTED - please ask if needed!
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
TimerTag A unique Tag for the Mission Timer. string N
MissionTimerResume

2008-03-07


Resumes a Mission Timer if it is currently paused. NOT YET IMPLEMENTED - please ask if needed!
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
TimerTag A unique Tag for the Mission Timer. string N
MissionCounterSet

2008-03-07


Changes the value accordingly.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
CounterTag The name of the Mission Counter. string N
Value Just a simple value, meaning depends on context. number N
MissionCounterIncrease

2008-03-07


Increases the value by one, shorthand for Add with Value 1.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
CounterTag The name of the Mission Counter. string N
MissionCounterDecrease

2008-03-07


Decreases the value by one, shorthand for Subtract with Value 1.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
CounterTag The name of the Mission Counter. string N
MissionCounterSetToHealthPercent

2008-05-06


Sets the Mission Counter to the entity's health percent.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
CounterTag The name of the Mission Counter. string N
MiniMapAlertPerPlayer

2023-01-24


(NEW) Show an Alert on MiniMap at the specified TargetTag location for the specified Player.
TargetTag The ScriptTag of the 'target' entity. string N
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
AlertType The type of a MiniMap Alert (determines gfx & color). number N
MissionTimerSet

2024-03-10


(NEW) Changes the value accordingly.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
TimerTag A unique Tag for the Mission Timer. string N
Seconds Number, in Seconds. Fractions are also allowed, in 0.1 increments. number Y 0
MissionTimerAdd

2024-03-10


(NEW) Increases the value by set amount.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
TimerTag A unique Tag for the Mission Timer. string N
Seconds Number, in Seconds. Fractions are also allowed, in 0.1 increments. number Y 0
MissionTimerSubtract

2024-03-10


(NEW) Decreases the value by set amount.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
TimerTag A unique Tag for the Mission Timer. string N
Seconds Number, in Seconds. Fractions are also allowed, in 0.1 increments. number Y 0
MissionTimerMultiply

2024-03-10


(NEW) Multiplies the value by set amount.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
TimerTag A unique Tag for the Mission Timer. string N
Value Just a simple value, meaning depends on context. number N
MissionTimerDivide

2024-03-10


(NEW) Divides the value by set amount.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
TimerTag A unique Tag for the Mission Timer. string N
Value Just a simple value, meaning depends on context. number N
MissionCounterAdd

2024-03-10


(NEW) Increases the value by set amount.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
CounterTag The name of the Mission Counter. string N
Value Just a simple value, meaning depends on context. number N
MissionCounterSubtract

2024-03-10


(NEW) Decreases the value by set amount.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
CounterTag The name of the Mission Counter. string N
Value Just a simple value, meaning depends on context. number N
MissionCounterMultiply

2024-03-10


(NEW) Multiplies the value by set amount.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
CounterTag The name of the Mission Counter. string N
Value Just a simple value, meaning depends on context. number N
MissionCounterDivide

2024-03-10


(NEW) Divides the value by set amount.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
CounterTag The name of the Mission Counter. string N
Value Just a simple value, meaning depends on context. number N
MissionCounterCopy

2024-03-14


(NEW) Copies from a mission counter to another mission counter
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
FromCounterTag The name of the Mission Counter. string N
ToCounterTag The name of the Mission Counter. string N


Conditions[]

Parameter Parameter Explanation Type Optional
Tutorial
TutorialEntityPvETypeIsSelected

2008-09-25


TutorialEntityPvETypeIsNotSelected
Checks if any entity with the specified PvE Type is in the current selection.
PvEType The name of a PvE Type. string N
TutorialEntityIsSelected

2008-10-07


TutorialEntityIsNotSelected
Checks if any entity with the specified ScriptTag is in the current selection.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
AudioVisual
AudioAmbientIsPlaying

2007-10-05


AudioAmbientIsNotPlaying
Checks if the respective audio file is currently playing.
Ambient file relative to 'bf1/sound/streams/', no extension! string N
AudioMusicIsPlaying

2007-10-05


AudioMusicIsNotPlaying
Checks if the respective audio file is currently playing.
Music file relative to 'bf1/sound/streams/', no extension! string N
AudioSoundFXIsPlaying

2007-10-05


AudioSoundFXIsNotPlaying
Checks if the respective audio file is currently playing.
Sound file relative to 'bf1/sound/ram/', no extension! string N
AudioSoundUIIsPlaying

2007-10-05


AudioSoundUIIsNotPlaying
Checks if the respective audio file is currently playing.
Sound file relative to 'bf1/sound/ram/', no extension! string N
AudioVoiceIsPlaying

2007-10-05


AudioVoiceIsNotPlaying
Checks if the respective audio file is currently playing.
Sound file relative to 'bf1/sound/ram/', no extension! string N
Building
BuildingWasJustHit

2008-05-20


BuildingWasNotJustHit
Checks if the Building has just been hit by an attack or any other form of damage.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
BuildingIsAlive

2007-08-18


BuildingIsDestroyed
Checks intact/destroyed status of Buildings.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
BuildingIsInRange

2008-02-26


BuildingIsNotInRange
Checks if *any* Building is in range. Used as basis for filtered 'in range' checks, eg. 'PlayerBuildingIsInRange'.
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
BuildingModeIsActive

2008-04-19


BuildingModeIsNotActive
Checks if the currently active Mode has the specified ModeId.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
ModeId The DB ID of a Mode number N
BuildingModeIsEnabled

2008-04-19


BuildingModeIsDisabled
Checks if the currently active Mode is an 'enabled' or 'disabled' Mode.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
ScriptGroup
ScriptGroupIsEmpty

2008-03-02


ScriptGroupIsNotEmpty
Checks if the ScriptGroup contains tags or wether it is empty.
Group A ScriptGroup. string N
ScriptGroupAliveAmountIsEqual

2008-03-09


ScriptGroupAliveAmountIsNotEqual
Checks the amount/percentage of living/dead members of the ScriptGroup.
Group A ScriptGroup. string N
Value Just a simple value, meaning depends on context. number N
ScriptGroupAliveAmountIsGreater

2008-03-09


ScriptGroupAliveAmountIsLessOrEqual
Checks the amount/percentage of living/dead members of the ScriptGroup.
Group A ScriptGroup. string N
Value Just a simple value, meaning depends on context. number N
ScriptGroupAliveAmountIsLess

2008-03-09


ScriptGroupAliveAmountIsGreaterOrEqual
Checks the amount/percentage of living/dead members of the ScriptGroup.
Group A ScriptGroup. string N
Value Just a simple value, meaning depends on context. number N
ScriptGroupAlivePercentIsEqual

2008-03-09


ScriptGroupAlivePercentIsNotEqual
Checks the amount/percentage of living/dead members of the ScriptGroup.
Group A ScriptGroup. string N
Percent A percentage from 0-100 (do not write the % sign). number N
ScriptGroupAlivePercentIsGreater

2008-03-09


ScriptGroupAlivePercentIsLessOrEqual
Checks the amount/percentage of living/dead members of the ScriptGroup.
Group A ScriptGroup. string N
Percent A percentage from 0-100 (do not write the % sign). number N
ScriptGroupAlivePercentIsLess

2008-03-09


ScriptGroupAlivePercentIsGreaterOrEqual
Checks the amount/percentage of living/dead members of the ScriptGroup.
Group A ScriptGroup. string N
Percent A percentage from 0-100 (do not write the % sign). number N
ScriptGroupDeadAmountIsEqual

2008-03-09


ScriptGroupDeadAmountIsNotEqual
Checks the amount/percentage of living/dead members of the ScriptGroup.
Group A ScriptGroup. string N
Value Just a simple value, meaning depends on context. number N
ScriptGroupDeadAmountIsGreater

2008-03-09


ScriptGroupDeadAmountIsLessOrEqual
Checks the amount/percentage of living/dead members of the ScriptGroup.
Group A ScriptGroup. string N
Value Just a simple value, meaning depends on context. number N
ScriptGroupDeadAmountIsLess

2008-03-09


ScriptGroupDeadAmountIsGreaterOrEqual
Checks the amount/percentage of living/dead members of the ScriptGroup.
Group A ScriptGroup. string N
Value Just a simple value, meaning depends on context. number N
ScriptGroupDeadPercentIsEqual

2008-03-09


ScriptGroupDeadPercentIsNotEqual
Checks the amount/percentage of living/dead members of the ScriptGroup.
Group A ScriptGroup. string N
Percent A percentage from 0-100 (do not write the % sign). number N
ScriptGroupDeadPercentIsGreater

2008-03-09


ScriptGroupDeadPercentIsLessOrEqual
Checks the amount/percentage of living/dead members of the ScriptGroup.
Group A ScriptGroup. string N
Percent A percentage from 0-100 (do not write the % sign). number N
ScriptGroupDeadPercentIsLess

2008-03-09


ScriptGroupDeadPercentIsGreaterOrEqual
Checks the amount/percentage of living/dead members of the ScriptGroup.
Group A ScriptGroup. string N
Percent A percentage from 0-100 (do not write the % sign). number N
ScriptGroupSquadSpawnCounterIsGreater

2008-03-09


ScriptGroupSquadSpawnCounterIsLessOrEqual
Checks the ScriptGroups current SquadSpawnCounter value. Requires that ScriptGroup count has been registered via RegisterSquadSpawnCounter{Group = }
Group The name of the ScriptGroup for which a SquadSpawnCounter is registered. string N
Value Just a simple value, meaning depends on context. number N
ScriptGroupSquadSpawnCounterIsLess

2008-03-09


ScriptGroupSquadSpawnCounterIsGreaterOrEqual
Checks the ScriptGroups current SquadSpawnCounter value. Requires that ScriptGroup count has been registered via RegisterSquadSpawnCounter{Group = }
Group The name of the ScriptGroup for which a SquadSpawnCounter is registered. string N
Value Just a simple value, meaning depends on context. number N
ScriptGroupSquadDeathCounterIsGreater

2008-03-09


ScriptGroupSquadDeathCounterIsLessOrEqual
Checks the ScriptGroups current SquadDeathCounter value. Requires that ScriptGroup count has been registered via RegisterSquadDeathCounter{Group = }
Group The name of the ScriptGroup for which a SquadDeathCounter is registered. string N
Value Just a simple value, meaning depends on context. number N
ScriptGroupSquadDeathCounterIsLess

2008-03-09


ScriptGroupSquadDeathCounterIsGreaterOrEqual
Checks the ScriptGroups current SquadDeathCounter value. Requires that ScriptGroup count has been registered via RegisterSquadDeathCounter{Group = }
Group The name of the ScriptGroup for which a SquadDeathCounter is registered. string N
Value Just a simple value, meaning depends on context. number N
Barrier
BarrierIsPreview

2008-03-12


BarrierIsBuilt
Checks if the Barrier is in prebuilt state or not.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
BarrierIsMirrored

2008-09-25


BarrierIsNotMirrored
Checks if the Barrier is in mirrored state or not.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
BarrierIsMounted

2008-10-08


BarrierIsNotMounted
Checks if the Barrier is mounted by any Squad.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
BarrierIsMountedByPlayer

2008-10-08


BarrierIsNotMountedByPlayer
Checks if the Barrier is mounted by a Squad owned by the given Player.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
BarrierIsAlive

2007-10-01


BarrierIsDestroyed
Checks intact/destroyed status of Barriers.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
BarrierGateIsOpen

2008-01-21


BarrierGateIsNotOpen
Checks if the BarrierGate is open or not.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
BarrierGateIsClosed

2008-01-21


BarrierGateIsNotClosed
Checks if the BarrierGate is closed or not.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
BarrierModuleAmountIsAlive

2007-10-06


BarrierModuleAmountIsDead
Compares the remaining (alive) number of Barrier Modules in the BarrierSet.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Amount Just a simple value, meaning depends on context. number N
BarrierModulePercentageIsAlive

2007-10-06


BarrierModulePercentageIsDead
Compares the remaining (alive) number of Barrier Modules in the BarrierSet.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Percent A percentage from 0-100 (do not write the % sign). number N
Player
PlayerIsHuman

2008-09-05


PlayerIsNotHuman
Checks if Player is a human player (== connected?).
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
PlayerHasJustPlayedCardId

2007-09-24


PlayerHasNotJustPlayedCardId
Checks if the Player has just played the specified Card, or any Card if CardId = AnyCard
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
CardId The DB ID of a Card number N
PlayerHasJustPlayedCardPvEType

2008-07-24


PlayerHasNotJustPlayedCardPvEType
Checks if the Player has just played a Card whose entity has the specified PvE Type.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
PvEType The name of a PvE Type. string N
PlayerSquadAmountIsEqual

2008-03-12


PlayerSquadAmountIsNotEqual
Checks if the Player(s) own the specified amount of the given entity type.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Amount Just a simple value, meaning depends on context. number N
PlayerSquadAmountIsGreater

2008-03-12


PlayerSquadAmountIsLessOrEqual
Checks if the Player(s) own the specified amount of the given entity type.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Amount Just a simple value, meaning depends on context. number N
PlayerSquadAmountIsLess

2008-03-12


PlayerSquadAmountIsGreaterOrEqual
Checks if the Player(s) own the specified amount of the given entity type.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Amount Just a simple value, meaning depends on context. number N
PlayerBuildingAmountIsEqual

2008-03-12


PlayerBuildingAmountIsNotEqual
Checks if the Player(s) own the specified amount of the given entity type.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Amount Just a simple value, meaning depends on context. number N
PlayerBuildingAmountIsGreater

2008-03-12


PlayerBuildingAmountIsLessOrEqual
Checks if the Player(s) own the specified amount of the given entity type.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Amount Just a simple value, meaning depends on context. number N
PlayerBuildingAmountIsLess

2008-03-12


PlayerBuildingAmountIsGreaterOrEqual
Checks if the Player(s) own the specified amount of the given entity type.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Amount Just a simple value, meaning depends on context. number N
PlayerMonumentAmountIsEqual

2008-03-12


PlayerMonumentAmountIsNotEqual
Checks if the Player(s) own the specified amount of the given entity type.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Amount Just a simple value, meaning depends on context. number N
PlayerMonumentAmountIsGreater

2008-03-12


PlayerMonumentAmountIsLessOrEqual
Checks if the Player(s) own the specified amount of the given entity type.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Amount Just a simple value, meaning depends on context. number N
PlayerMonumentAmountIsLess

2008-03-12


PlayerMonumentAmountIsGreaterOrEqual
Checks if the Player(s) own the specified amount of the given entity type.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Amount Just a simple value, meaning depends on context. number N
PlayerGeneratorAmountIsEqual

2008-03-12


PlayerGeneratorAmountIsNotEqual
Checks if the Player(s) own the specified amount of the given entity type.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Amount Just a simple value, meaning depends on context. number N
PlayerGeneratorAmountIsGreater

2008-03-12


PlayerGeneratorAmountIsLessOrEqual
Checks if the Player(s) own the specified amount of the given entity type.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Amount Just a simple value, meaning depends on context. number N
PlayerGeneratorAmountIsLess

2008-03-12


PlayerGeneratorAmountIsGreaterOrEqual
Checks if the Player(s) own the specified amount of the given entity type.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Amount Just a simple value, meaning depends on context. number N
PlayerOrbAmountIsEqual

2008-03-12


PlayerOrbAmountIsNotEqual
Checks the amount of Orbs on Monuments of a specific color. Use PowerAll to count all Power Orbs together.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Amount Just a simple value, meaning depends on context. number N
Power Can be any of: PowerShadow, PowerNature, PowerFrost, PowerFire, PowerAll, ... number N
PlayerOrbAmountIsGreater

2008-03-12


PlayerOrbAmountIsLessOrEqual
Checks the amount of Orbs on Monuments of a specific color. Use PowerAll to count all Power Orbs together.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Amount Just a simple value, meaning depends on context. number N
Power Can be any of: PowerShadow, PowerNature, PowerFrost, PowerFire, PowerAll, ... number N
PlayerOrbAmountIsLess

2008-03-12


PlayerOrbAmountIsGreaterOrEqual
Checks the amount of Orbs on Monuments of a specific color. Use PowerAll to count all Power Orbs together.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Amount Just a simple value, meaning depends on context. number N
Power Can be any of: PowerShadow, PowerNature, PowerFrost, PowerFire, PowerAll, ... number N
PlayerOrbBuildInProgressAmountIsEqual

2008-09-25


PlayerOrbBuildInProgressAmountIsNotEqual
Checks the amount of Orbs of a specific color that are currently being built. Use PowerAll to count all in progress.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Amount Just a simple value, meaning depends on context. number N
Power Can be any of: PowerShadow, PowerNature, PowerFrost, PowerFire, PowerAll, ... number N
PlayerOrbBuildInProgressAmountIsGreater

2008-09-25


PlayerOrbBuildInProgressAmountIsLessOrEqual
Checks the amount of Orbs of a specific color that are currently being built. Use PowerAll to count all in progress.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Amount Just a simple value, meaning depends on context. number N
Power Can be any of: PowerShadow, PowerNature, PowerFrost, PowerFire, PowerAll, ... number N
PlayerOrbBuildInProgressAmountIsLess

2008-09-25


PlayerOrbBuildInProgressAmountIsGreaterOrEqual
Checks the amount of Orbs of a specific color that are currently being built. Use PowerAll to count all in progress.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Amount Just a simple value, meaning depends on context. number N
Power Can be any of: PowerShadow, PowerNature, PowerFrost, PowerFire, PowerAll, ... number N
PlayerHasGameLost

2008-03-01


PlayerHasNotGameLost
Checks if the Player is GameOver man, GameOver!
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
PlayerHasGameWon

2008-03-01


PlayerHasNotGameWon
Checks if the Player has won the Game (match).
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
PlayerPowerAmountIsEqual

2011-12-05


PlayerPowerAmountIsNotEqual
Checks if the Player(s) own the specified amount of Power.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Amount Just a simple value, meaning depends on context. number N
PlayerPowerAmountIsGreater

2011-12-05


PlayerPowerAmountIsLessOrEqual
Checks if the Player(s) own the specified amount of Power.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Amount Just a simple value, meaning depends on context. number N
PlayerPowerAmountIsLess

2011-12-05


PlayerPowerAmountIsGreaterOrEqual
Checks if the Player(s) own the specified amount of Power.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Amount Just a simple value, meaning depends on context. number N
PlayerVoidPowerAmountIsEqual

2011-12-05


PlayerVoidPowerAmountIsNotEqual
Checks if the Player(s) own the specified amount of Power.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Amount Just a simple value, meaning depends on context. number N
PlayerVoidPowerAmountIsGreater

2011-12-05


PlayerVoidPowerAmountIsLessOrEqual
Checks if the Player(s) own the specified amount of Power.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Amount Just a simple value, meaning depends on context. number N
PlayerVoidPowerAmountIsLess

2011-12-05


PlayerVoidPowerAmountIsGreaterOrEqual
Checks if the Player(s) own the specified amount of Power.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Amount Just a simple value, meaning depends on context. number N
!Functions
DifficultyIsEqual

2007-11-15


DifficultyIsNotEqual
Checks the mission's current difficulty level.
Difficulty One of: DifficultyStandard, DifficultyAdvanced, DifficultyExpert number N
DifficultyIsLess

2007-11-15


DifficultyIsGreaterOrEqual
Checks the mission's current difficulty level.
Difficulty One of: DifficultyStandard, DifficultyAdvanced, DifficultyExpert number N
DifficultyIsGreater

2007-11-15


DifficultyIsLessOrEqual
Checks the mission's current difficulty level.
Difficulty One of: DifficultyStandard, DifficultyAdvanced, DifficultyExpert number N
Object
ObjectIsOnMap

2007-08-18


ObjectIsNotOnMap
Checks wether Objects are existent on the map.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Squad
SquadIsAlive

2007-08-18


SquadIsDead
Checks living/dead status of Squads.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SquadIsIdle

2007-08-30


SquadIsBusy
Checks if the Squad is Idle (has nothing to do) or is somehow busy (fighting, walking, etc.).
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SquadIsInGotoMode

2007-10-03


SquadIsNotInGotoMode
Checks if the Squad is in Goto mode, eg on the way to some target location.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SquadIsSpellCasting

2007-10-03


SquadIsNotSpellCasting
Checks if the Squad is casting a Spell.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SquadHasAbility

2007-08-31


SquadHasNotAbility
Checks if (any member of) the Squad has the given Ability.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
AbilityId The DB ID of an Ability number N
SquadHasAbilityLine

2007-11-12


SquadHasNotAbilityLine
Checks if (any member of) the Squad has an Ability based on the given AbilityLine.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
AbilityLineId The DB ID of an AbilityLine number N
SquadHasHate

2008-04-28


SquadHasNotHate
Checks if the Squad has Hate (eg. it would like to or is about to attack something).
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SquadIsFighting

2008-04-28


SquadIsNotFighting
Checks if the Squad is fighting.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SquadIsInRange

2008-02-26


SquadIsNotInRange
Checks if *any* Squad is in range. Used as basis for filtered 'in range' checks, eg. 'PlayerSquadIsInRange'.
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
SquadModeIsActive

2008-04-19


SquadModeIsNotActive
Checks if the currently active Mode has the specified ModeId.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
ModeId The DB ID of a Mode number N
SquadModeIsEnabled

2008-04-19


SquadModeIsDisabled
Checks if the currently active Mode is an 'enabled' or 'disabled' Mode.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SquadWasJustHit

2008-09-05


SquadWasNotJustHit
Checks if the Squad has just been hit by an attack or any other form of damage.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SquadWasJustHitByPlayer

2008-09-05


SquadWasNotJustHitByPlayer
Checks if the Squad has just been hit by a specific Player entity's attack/spell.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
SquadWasJustHitByTeam

2008-09-05


SquadWasNotJustHitByTeam
Checks if the Squad has just been hit by a specific Team entity's attack/spell.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
SquadIdleTimerIsElapsed

2008-05-30


SquadIdleTimerIsNotElapsed
Checks if the Squad was (continuously) idle for (at least) the given time.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Seconds Number, in Seconds. Fractions are also allowed, in 0.1 increments. number Y 0
Minutes Number, in Minutes. Fractions are also allowed. number Y 0
ConsiderDeadAsIdle Dead Squads are considered idle. Idle timer is immediately elapsed when unit dies!!! boolean Y false
SquadHasMeleeAttackerInRange

2007-10-02


SquadHasNotMeleeAttackerInRange
Checks if there are any Melee units attacking this Squad in Range.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
SquadMemberAmountIsAlive

2007-09-07


SquadMemberAmountIsDead
Compares the remaining (alive) number of Squad members with the original amount.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Amount Just a simple value, meaning depends on context. number N
SquadMemberPercentageIsAlive

2007-09-07


SquadMemberPercentageIsDead
Compares the remaining (alive) number of Squad members with the original amount.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Percent A percentage from 0-100 (do not write the % sign). number N
SquadIsMountedOnBarrier

2008-04-24


SquadIsNotMountedOnBarrier
Checks if the Squas has mounted a Barrier.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Entity
EntityHealthPercentIsLowest

2007-10-04


EntityHealthPercentIsNotLowest
Checks if the entity has the lowest/greatest health among the other entities.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
EntityHealthPercentIsGreatest

2007-10-04


EntityHealthPercentIsNotGreatest
Checks if the entity has the lowest/greatest health among the other entities.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
EntityIsAlive

2007-09-25


EntityIsDead
Checks living/dead status of Entity, means different things for different Entity types.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
EntityHealthIsGreater

2007-09-05


EntityHealthIsLessOrEqual
Checks the health (lifepoints) status of entities.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Percent A percentage from 0-100 (do not write the % sign). number N
EntityHealthIsLess

2007-09-05


EntityHealthIsGreaterOrEqual
Checks the health (lifepoints) status of entities.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Percent A percentage from 0-100 (do not write the % sign). number N
EntityIsInPlayableArea

2008-06-30


EntityIsNotInPlayableArea
Checks if the entity is inside the map's playable area.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
EntityIsInVisibleArea

2008-06-30


EntityIsNotInVisibleArea
Checks if the entity is inside the map's visible area.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
EntityIsInRange

2007-08-24


EntityIsNotInRange
Checks if an Entity/Group (with the given Tag) is in Range to (any of) the Target(s).
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
EntityIsOwnedByPlayer

2008-02-25


EntityIsNotOwnedByPlayer
Checks if the entity is owned by the specified Player.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
EntityIsOwnedByTeam

2008-02-25


EntityIsNotOwnedByTeam
Checks if the entity is owned by the specified Player.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
EntitySpellCastIsBlocked

2007-10-03


EntitySpellCastIsNotBlocked
Checks if casting of this Spell is currently blocked (Recast-Time, already casting Spell, etc.).
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SpellId The DB ID of a Spell number N
DoGotoCheck Additionally checks if entity is in Goto mode. boolean Y true
EntityHasJustCastedSpell

2008-04-19


EntityHasNotJustCastedSpell
Checks if the Entity has just casted the specified Spell, or any Spell if SpellId = AnySpell
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SpellId The DB ID of a Spell number N
EntityWasJustKilledByPlayer

2024-02-04


EntityWasNotJustKilledByPlayer
(NEW) Checks if the Squad has just been killed by a specific Player entity's attack/spell.
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
Variable
PlayerFlagIsTrue

2007-08-14


PlayerFlagIsFalse
Checks if the flag has the desired value.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Name Prefix:
pf_

The name of the player variable.
string N
PlayerValueIsEqual

2007-08-14


PlayerValueIsNotEqual
Checks if the value satisfies the condition.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Name Prefix:
pv_

The name of the player variable.
string N
Value Just a simple value, meaning depends on context. number N
PlayerValueIsGreater

2007-08-14


PlayerValueIsLessOrEqual
Checks if the value satisfies the condition.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Name Prefix:
pv_

The name of the player variable.
string N
Value Just a simple value, meaning depends on context. number N
PlayerValueIsLess

2007-08-14


PlayerValueIsGreaterOrEqual
Checks if the value satisfies the condition.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Name Prefix:
pv_

The name of the player variable.
string N
Value Just a simple value, meaning depends on context. number N
PlayerTimerIsElapsed

2007-08-14


PlayerTimerIsNotElapsed
Checks if the given amount of time has passed since Timer was started.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Name Prefix:
pt_

The name of the player timer.
string N
Seconds Number, in Seconds. Fractions are also allowed, in 0.1 increments. number Y 0
Minutes Number, in Minutes. Fractions are also allowed. number Y 0
PlayerTimerIsRunning

2008-03-14


PlayerTimerIsNotRunning
Checks if the Timer is running or not.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
Name Prefix:
pt_

The name of the player timer.
string N
MapFlagIsTrue

2007-08-14


MapFlagIsFalse
Checks if the flag has the desired value.
Name Prefix:
mf_

The name of the map variable.
string N
EntityFlagIsTrue

2007-08-14


EntityFlagIsFalse
Checks if the flag has the desired value.
Name Prefix:
ef_

The name of the entity variable.
string N
NetworkFlagIsTrue

2008-09-01


NetworkFlagIsFalse
Checks if the flag has the desired value.
Name Prefix:
nf_

The name of the network variable.
string N
MapValueIsEqual

2007-08-14


MapValueIsNotEqual
Checks if the value satisfies the condition.
Name Prefix:
mv_

The name of the map variable.
string N
Value Just a simple value, meaning depends on context. number N
MapValueIsGreater

2007-08-14


MapValueIsLessOrEqual
Checks if the value satisfies the condition.
Name Prefix:
mv_

The name of the map variable.
string N
Value Just a simple value, meaning depends on context. number N
MapValueIsLess

2007-08-14


MapValueIsGreaterOrEqual
Checks if the value satisfies the condition.
Name Prefix:
mv_

The name of the map variable.
string N
Value Just a simple value, meaning depends on context. number N
EntityValueIsEqual

2007-08-14


EntityValueIsNotEqual
Checks if the value satisfies the condition.
Name Prefix:
ev_

The name of the entity variable.
string N
Value Just a simple value, meaning depends on context. number N
EntityValueIsGreater

2007-08-14


EntityValueIsLessOrEqual
Checks if the value satisfies the condition.
Name Prefix:
ev_

The name of the entity variable.
string N
Value Just a simple value, meaning depends on context. number N
EntityValueIsLess

2007-08-14


EntityValueIsGreaterOrEqual
Checks if the value satisfies the condition.
Name Prefix:
ev_

The name of the entity variable.
string N
Value Just a simple value, meaning depends on context. number N
NetworkValueIsEqual

2008-09-01


NetworkValueIsNotEqual
Checks if the value satisfies the condition.
Name Prefix:
nv_

The name of the network variable. Value is limited to 0-255 range!
string N
Value Just a simple value, meaning depends on context. number N
NetworkValueIsGreater

2008-09-01


NetworkValueIsLessOrEqual
Checks if the value satisfies the condition.
Name Prefix:
nv_

The name of the network variable. Value is limited to 0-255 range!
string N
Value Just a simple value, meaning depends on context. number N
NetworkValueIsLess

2008-09-01


NetworkValueIsGreaterOrEqual
Checks if the value satisfies the condition.
Name Prefix:
nv_

The name of the network variable. Value is limited to 0-255 range!
string N
Value Just a simple value, meaning depends on context. number N
MapTimerIsElapsed

2007-08-14

[Show Sample]

MapTimerIsNotElapsed
Checks if the given amount of time has passed since Timer was started.
-- first attack on souls
OnOneTimeEvent
{
	Conditions =
	{
		MapTimerIsElapsed	{Name = "mt_timerName", Seconds = 5, Minutes = 0},
	},
	Actions = 
	{
		-- actions here
	},
};
Name Prefix:
mt_

The name of the map timer.
string N
Seconds Number, in Seconds. Fractions are also allowed, in 0.1 increments. number Y 0
Minutes Number, in Minutes. Fractions are also allowed. number Y 0
EntityTimerIsElapsed

2007-08-14


EntityTimerIsNotElapsed
Checks if the given amount of time has passed since Timer was started.
Name Prefix:
et_

The name of the entity timer.
string N
Seconds Number, in Seconds. Fractions are also allowed, in 0.1 increments. number Y 0
Minutes Number, in Minutes. Fractions are also allowed. number Y 0
MapTimerIsRunning

2008-03-14


MapTimerIsNotRunning
Checks whether the Timer is running or stopped.
Name Prefix:
mt_

The name of the map timer.
string N
EntityTimerIsRunning

2008-03-14


EntityTimerIsNotRunning
Checks whether the Timer is running or stopped.
Name Prefix:
et_

The name of the entity timer.
string N
MapValueIsEqualComparedTo

2008-03-01


MapValueIsNotEqualComparedTo
Checks if the value satisfies the condition.
Name Prefix:
mv_

The name of the map variable.
string N
CompareTo Prefix:
mv_

The name of the map variable to compare with.
string N
MapValueIsGreaterComparedTo

2008-03-01


MapValueIsLessOrEqualComparedTo
Checks if the value satisfies the condition.
Name Prefix:
mv_

The name of the map variable.
string N
CompareTo Prefix:
mv_

The name of the map variable to compare with.
string N
MapValueIsLessComparedTo

2008-03-01


MapValueIsGreaterOrEqualComparedTo
Checks if the value satisfies the condition.
Name Prefix:
mv_

The name of the map variable.
string N
CompareTo Prefix:
mv_

The name of the map variable to compare with.
string N
EntityValueIsEqualComparedTo

2008-03-01


EntityValueIsNotEqualComparedTo
Checks if the value satisfies the condition.
Name Prefix:
ev_

The name of the entity variable.
string N
CompareTo Prefix:
ev_

The name of the entity variable to compare with.
string N
EntityValueIsGreaterComparedTo

2008-03-01


EntityValueIsLessOrEqualComparedTo
Checks if the value satisfies the condition.
Name Prefix:
ev_

The name of the entity variable.
string N
CompareTo Prefix:
ev_

The name of the entity variable to compare with.
string N
EntityValueIsLessComparedTo

2008-03-01


EntityValueIsGreaterOrEqualComparedTo
Checks if the value satisfies the condition.
Name Prefix:
ev_

The name of the entity variable.
string N
CompareTo Prefix:
ev_

The name of the entity variable to compare with.
string N
Boolean
AND

2007-08-14


NotAND
All/NotAll contained Conditions must be true.
UpdateInterval How often Condition is updated, default is 0 (== update every GD step). number Y 0
OR

2007-08-14


NotOR
Any/No contained Condition must be true.
UpdateInterval How often Condition is updated, default is 0 (== update every GD step). number Y 0
Mission
MissionDifficultyIsEqual

2008-03-12


MissionDifficultyIsNotEqual
Checks the game's current difficulty. Note: difficulty NEVER changes during a match!
Difficulty One of: DifficultyStandard, DifficultyAdvanced, DifficultyExpert number N
MissionDifficultyIsGreater

2008-03-12


MissionDifficultyIsLessOrEqual
Checks the game's current difficulty. Note: difficulty NEVER changes during a match!
Difficulty One of: DifficultyStandard, DifficultyAdvanced, DifficultyExpert number N
MissionDifficultyIsLess

2008-03-12


MissionDifficultyIsGreaterOrEqual
Checks the game's current difficulty. Note: difficulty NEVER changes during a match!
Difficulty One of: DifficultyStandard, DifficultyAdvanced, DifficultyExpert number N
MissionCounterIsEqual

2008-03-07


MissionCounterIsNotEqual
Checks if the value satisfies the condition.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
CounterTag The name of the Mission Counter. string N
Value Just a simple value, meaning depends on context. number N
MissionCounterIsGreater

2008-03-07


MissionCounterIsLessOrEqual
Checks if the value satisfies the condition.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
CounterTag The name of the Mission Counter. string N
Value Just a simple value, meaning depends on context. number N
MissionCounterIsLess

2008-03-07


MissionCounterIsGreaterOrEqual
Checks if the value satisfies the condition.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
CounterTag The name of the Mission Counter. string N
Value Just a simple value, meaning depends on context. number N
MissionTimerHasRunOut

2008-03-07


MissionTimerHasNotRunOut
Checks if the Mission Timer has run out of time (reached 00:00).
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
TimerTag The name of the Mission Timer. string N
MissionTimerIsElapsed

2008-03-07


MissionTimerIsNotElapsed
Checks if the (forward running) Mission Timer has elapsed.
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
TimerTag The name of the Mission Timer. string N
Seconds Number, in Seconds. Fractions are also allowed, in 0.1 increments. number Y 0
Minutes Number, in Minutes. Fractions are also allowed. number Y 0
MissionTimerIsDisplayed

2008-03-07


MissionTimerIsNotDisplayed
Checks if the Mission Timer is displayed (running but could also be paused).
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
TimerTag The name of the Mission Timer. string N
MissionStartTimerIsElapsed

2007-10-29


MissionStartTimerIsNotElapsed
Checks if the given amount of time has passed since the Mission started.
Seconds Number, in Seconds. Fractions are also allowed, in 0.1 increments. number Y 0
Minutes Number, in Minutes. Fractions are also allowed. number Y 0

FilterActions[]

Parameter Parameter Explanation Type Optional
Squad
SquadVanishInRange

2008-10-08


Removes Squads of the given ScriptGroup in range.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
TeamSquadTeleportInRange

2007-12-10


Teleports Squads in Range of the specified Team to the TargetTag location.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
TargetTag The ScriptTag of the 'target' entity. string N
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
PlayerSquadTeleportInRange

2007-12-10


Teleports Squads in Range of the specified Player to the TargetTag location.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
TargetTag The ScriptTag of the 'target' entity. string N
Player The name of a Player or a ScriptGroup of Players or 'All'/'Any'/etc. string Y ALL
SquadRangedBarrierMount

2008-03-14


Only ranged Squads try to mount the TargetTag Barrier.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
SquadIdleBarrierMount

2008-03-14


Only idle Squads try to mount the TargetTag Barrier.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
SquadRangedIdleBarrierMount

2008-03-14


Only ranged idle Squads try to mount the TargetTag Barrier.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
SquadIdBarrierMount

2008-03-14


Only Squads with specified database ID try to mount the TargetTag Barrier.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
SquadId The DB ID of a Squad. The default Upgrade-Level is 2 (2.000.000 is automatically added).
If you need any other Upgrade-Level, you need to subtract 2.000.000 from your desired DB ID.
You can also use the function UpgradeLevel_(DB ID)
number N
SquadIdIdleBarrierMount

2008-03-14


Only idle Squads with specified database ID try to mount the TargetTag Barrier.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
SquadId The DB ID of a Squad. The default Upgrade-Level is 2 (2.000.000 is automatically added).
If you need any other Upgrade-Level, you need to subtract 2.000.000 from your desired DB ID.
You can also use the function UpgradeLevel_(DB ID)
number N
SquadIdleGoto

2008-01-15


Only Squads that are currently idle execute the Goto command.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
SquadIdleGotoRandom

2008-03-14


Only Squads that are currently idle execute the Goto command.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
SquadIdleGotoFight

2008-01-17


Only Squads that are currently idle execute the Goto command.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
SquadRandomGoto

2008-03-14


Only a random amount of Squads execute the Goto command.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
Percent A percentage from 0-100 (do not write the % sign). number N
SquadIdleRandomGoto

2008-03-14


Only a random amount of Squads that are currently idle execute the Goto command.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
Percent A percentage from 0-100 (do not write the % sign). number N
SquadRandomGotoRandom

2008-03-14


Only randomly picked Squads that are execute the Goto command.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
Percent A percentage from 0-100 (do not write the % sign). number N
SquadIdleRandomGotoRandom

2008-03-14


Only randomly picked Squads that are execute the Goto command.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
Percent A percentage from 0-100 (do not write the % sign). number N
SquadAmountPatrol

2008-01-15


Only the specified amount of Squads in the ScriptGroup execute the Goto command.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
Amount Just a simple value, meaning depends on context. number N
SquadIdleAmountPatrol

2008-01-16


Only the specified amount of Squads and if they are idle execute the Goto command.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
Amount Just a simple value, meaning depends on context. number N
SquadGotoClosestPlayerMonumentOrGenerator

2008-03-15


Squad(s) go towards closest M/G owned by Player. Continues goto after being attacked.
*Careful! This method relies on FilterEntityIsOwnedByPlayer.
If a Player can't be found (eg. if playing a two-player map solo), the Filter works on Entities, that have NO Player assigned!
You can use PlayerIsHuman in combination with this function, to make sure a player is actually present.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
SearchRadius The (max.) Radius around the Tag that should be searched. number N
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
SquadGotoClosestTeamMonumentOrGenerator

2008-03-15


Squad(s) go towards closest M/G owned by Team. Continues goto after being attacked.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
SearchRadius The (max.) Radius around the Tag that should be searched. number N
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
SquadGotoClosestPlayerSquad

2008-03-15


Squad(s) go towards closest Squad owned by Player. Continues goto after being attacked.
*Careful! This method relies on FilterEntityIsOwnedByPlayer.
If a Player can't be found (eg. if playing a two-player map solo), the Filter works on Entities, that have NO Player assigned!
You can use PlayerIsHuman in combination with this function, to make sure a player is actually present.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
SearchRadius The (max.) Radius around the Tag that should be searched. number N
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
SquadGotoClosestTeamSquad

2008-03-15


Squad(s) go towards closest Squad owned by Team. Continues goto after being attacked.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
SearchRadius The (max.) Radius around the Tag that should be searched. number N
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
SquadGotoClosestPlayerBuilding

2008-03-15


Squad(s) go towards closest Building owned by Player. Continues goto after being attacked.
*Careful! This method relies on FilterEntityIsOwnedByPlayer.
If a Player can't be found (eg. if playing a two-player map solo), the Filter works on Entities, that have NO Player assigned!
You can use PlayerIsHuman in combination with this function, to make sure a player is actually present.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
SearchRadius The (max.) Radius around the Tag that should be searched. number N
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
SquadGotoClosestTeamBuilding

2008-03-15


Squad(s) go towards closest Building owned by Team. Continues goto after being attacked.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
SearchRadius The (max.) Radius around the Tag that should be searched. number N
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
SquadGotoClosestPlayerBarrier

2008-03-15


Squad(s) go towards closest Barrier owned by Player. Continues goto after being attacked.
*Careful! This method relies on FilterEntityIsOwnedByPlayer.
If a Player can't be found (eg. if playing a two-player map solo), the Filter works on Entities, that have NO Player assigned!
You can use PlayerIsHuman in combination with this function, to make sure a player is actually present.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
SearchRadius The (max.) Radius around the Tag that should be searched. number N
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
SquadGotoClosestTeamBarrier

2008-03-15


Squad(s) go towards closest Barrier owned by Team. Continues goto after being attacked.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
SearchRadius The (max.) Radius around the Tag that should be searched. number N
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
SquadGotoClosestPlayerTarget

2008-07-01


Squad(s) go towards closest attackable Target owned by Player. Continues goto after being attacked.
*Careful! This method relies on FilterEntityIsOwnedByPlayer.
If a Player can't be found (eg. if playing a two-player map solo), the Filter works on Entities, that have NO Player assigned!
You can use PlayerIsHuman in combination with this function, to make sure a player is actually present.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
SearchRadius The (max.) Radius around the Tag that should be searched. number N
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
IgnoreUnattackable Wether targets with 'Unattackable' AbilityLine will be ignored. boolean Y false
SquadGotoClosestTeamTarget

2008-07-01


Squad(s) go towards closest attackable Target owned by Team. Continues goto after being attacked.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
SearchRadius The (max.) Radius around the Tag that should be searched. number N
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
IgnoreUnattackable Wether targets with 'Unattackable' AbilityLine will be ignored. boolean Y false
TeamSquadInRangePushBack

2008-01-22


PushBack only for Squads from the specified Team.
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
Speed Speed in meters per second. Decimal places allowed. number N
MaxRadiusType Can be: RadiusType_S, .._M, .._L, .._XL (see BEE). number N
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
PlayerSquadInRangePushBack

2008-01-22


PushBack only for Squads from the specified Player.
*Careful! This method relies on FilterEntityIsOwnedByPlayer.
If a Player can't be found (eg. if playing a two-player map solo), the Filter works on Entities, that have NO Player assigned!
You can use PlayerIsHuman in combination with this function, to make sure a player is actually present.
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
Speed Speed in meters per second. Decimal places allowed. number N
MaxRadiusType Can be: RadiusType_S, .._M, .._L, .._XL (see BEE). number N
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
Building
TeamBuildingKillInRange

2008-09-08


Kills buildings in range.
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
PlayerBuildingKillInRange

2008-09-08


Kills buildings in range.
*Careful! This method relies on FilterEntityIsOwnedByPlayer.
If a Player can't be found (eg. if playing a two-player map solo), the Filter works on Entities, that have NO Player assigned!
You can use PlayerIsHuman in combination with this function, to make sure a player is actually present.
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
TeamBuildingKillableKillInRange

2008-09-11


Kills buildings in range, unless it is unkillable.
*Careful! This method relies on FilterEntityIsOwnedByPlayer.
If a Player can't be found (eg. if playing a two-player map solo), the Filter works on Entities, that have NO Player assigned!
You can use PlayerIsHuman in combination with this function, to make sure a player is actually present.
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
PlayerBuildingKillableKillInRange

2008-09-11


Kills buildings in range, unless it is unkillable.
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
Entity
EntitySpellCastOnClosestPlayerSquad

2008-03-17


Lets the Entity(s) cast the given Spell on the closest Squad. Target must be valid for the given Spell.
*Careful! This has the same requirements as if you used the spell yourself. The Spell-Cast uses energy. If the Player has not enough energy, the spell will not run. You have to make sure, that the Player has enough energy, or use NPC unit spells, which have no power cost. It also can be blocked (eg. recast-time, ...) - you can check the blocked-part with EntitySpellCastIsBlocked.
*Careful! This method relies on FilterEntityIsOwnedByPlayer.
If a Player can't be found (eg. if playing a two-player map solo), the Filter works on Entities, that have NO Player assigned!
You can use PlayerIsHuman in combination with this function, to make sure a player is actually present.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SpellId The DB ID of a Spell number N
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
EntitySpellCastOnClosestTeamSquad

2008-03-17


Lets the Entity(s) cast the given Spell on the closest Squad. Target must be valid for the given Spell.
*Careful! This has the same requirements as if you used the spell yourself. The Spell-Cast uses energy. If the Player has not enough energy, the spell will not run. You have to make sure, that the Player has enough energy, or use NPC unit spells, which have no power cost. It also can be blocked (eg. recast-time, ...) - you can check the blocked-part with EntitySpellCastIsBlocked.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SpellId The DB ID of a Spell number N
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
EntitySpellCastOnClosestPlayerBuilding

2008-03-20


Lets the Entity(s) cast the given Spell on the closest Building. Target must be valid for the given Spell.
*Careful! This has the same requirements as if you used the spell yourself. The Spell-Cast uses energy. If the Player has not enough energy, the spell will not run. You have to make sure, that the Player has enough energy, or use NPC unit spells, which have no power cost. It also can be blocked (eg. recast-time, ...) - you can check the blocked-part with EntitySpellCastIsBlocked.
*Careful! This method relies on FilterEntityIsOwnedByPlayer.
If a Player can't be found (eg. if playing a two-player map solo), the Filter works on Entities, that have NO Player assigned!
You can use PlayerIsHuman in combination with this function, to make sure a player is actually present.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SpellId The DB ID of a Spell number N
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
EntitySpellCastOnClosestTeamBuilding

2008-03-20


Lets the Entity(s) cast the given Spell on the closest Building. Target must be valid for the given Spell.
*Careful! This has the same requirements as if you used the spell yourself. The Spell-Cast uses energy. If the Player has not enough energy, the spell will not run. You have to make sure, that the Player has enough energy, or use NPC unit spells, which have no power cost. It also can be blocked (eg. recast-time, ...) - you can check the blocked-part with EntitySpellCastIsBlocked.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SpellId The DB ID of a Spell number N
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
EntitySpellCastOnClosestPlayerGenerator

2008-06-25


Lets the Entity(s) cast the given Spell on the closest Generator. Target must be valid for the given Spell.
*Careful! This has the same requirements as if you used the spell yourself. The Spell-Cast uses energy. If the Player has not enough energy, the spell will not run. You have to make sure, that the Player has enough energy, or use NPC unit spells, which have no power cost. It also can be blocked (eg. recast-time, ...) - you can check the blocked-part with EntitySpellCastIsBlocked.
*Careful! This method relies on FilterEntityIsOwnedByPlayer.
If a Player can't be found (eg. if playing a two-player map solo), the Filter works on Entities, that have NO Player assigned!
You can use PlayerIsHuman in combination with this function, to make sure a player is actually present.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SpellId The DB ID of a Spell number N
IgnoreEmpty Wether empty (no more energy left) Generators will be ignored. boolean Y false
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
EntitySpellCastOnClosestTeamGenerator

2008-06-25


Lets the Entity(s) cast the given Spell on the closest Generator. Target must be valid for the given Spell.
*Careful! This has the same requirements as if you used the spell yourself. The Spell-Cast uses energy. If the Player has not enough energy, the spell will not run. You have to make sure, that the Player has enough energy, or use NPC unit spells, which have no power cost. It also can be blocked (eg. recast-time, ...) - you can check the blocked-part with EntitySpellCastIsBlocked.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SpellId The DB ID of a Spell number N
IgnoreEmpty Wether empty (no more energy left) Generators will be ignored. boolean Y false
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
EntitySpellCastOnClosestPlayerTarget

2008-04-23


Lets the Entity(s) cast the given Spell on the closest attackable Target. Target must be valid for the given Spell.
*Careful! This has the same requirements as if you used the spell yourself. The Spell-Cast uses energy. If the Player has not enough energy, the spell will not run. You have to make sure, that the Player has enough energy, or use NPC unit spells, which have no power cost. It also can be blocked (eg. recast-time, ...) - you can check the blocked-part with EntitySpellCastIsBlocked.
*Careful! This method relies on FilterEntityIsOwnedByPlayer.
If a Player can't be found (eg. if playing a two-player map solo), the Filter works on Entities, that have NO Player assigned!
You can use PlayerIsHuman in combination with this function, to make sure a player is actually present.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SpellId The DB ID of a Spell number N
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
IgnoreUnattackable Wether targets with 'Unattackable' AbilityLine will be ignored. boolean Y false
EntitySpellCastOnClosestTeamTarget

2008-04-23


Lets the Entity(s) cast the given Spell on the closest attackable Target. Target must be valid for the given Spell.
*Careful! This has the same requirements as if you used the spell yourself. The Spell-Cast uses energy. If the Player has not enough energy, the spell will not run. You have to make sure, that the Player has enough energy, or use NPC unit spells, which have no power cost. It also can be blocked (eg. recast-time, ...) - you can check the blocked-part with EntitySpellCastIsBlocked.
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SpellId The DB ID of a Spell number N
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
IgnoreUnattackable Wether targets with 'Unattackable' AbilityLine will be ignored. boolean Y false
EntityPvETypeKillInRange

2008-09-08


Kills entities with specified PvEType in range.
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
PvEType The name of a PvE Type. string N
TeamEntityPvETypeKillInRange

2008-09-08


Kills entities with specified PvEType in range.
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
PvEType The name of a PvE Type. string N
PlayerEntityPvETypeKillInRange

2008-09-08


Kills entities with specified PvEType in range.
*Careful! This method relies on FilterEntityIsOwnedByPlayer.
If a Player can't be found (eg. if playing a two-player map solo), the Filter works on Entities, that have NO Player assigned!
You can use PlayerIsHuman in combination with this function, to make sure a player is actually present.
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
PvEType The name of a PvE Type. string N

FilterConditions[]

Parameter Parameter Explanation Type Optional
Squad
SquadAliveIsIdle

2008-03-14


SquadAliveIsBusy
Checks if the living Squads are idle or busy (avoids trap if one squad of group is dead but check is for all).
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
SquadIdleIsInRange

2008-01-16


SquadIdleIsNotInRange
Checks if an idle Squad is in Range to (any of) the Target(s).
For Determines when the condition is satisfied if multiple entities are used. string Y ALL
Tag A ScriptTag or ScriptGroup. string Y GetScriptTag()
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
SquadPvETypeIsInRange

2008-06-13


SquadPvETypeIsNotInRange
Checks if a Squad with given PvE Type is in Range to (any of) the Target(s).
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
PvEType The name of a PvE Type. string N
SquadPvETypeAmountIsInRange

2008-06-13


SquadPvETypeAmountIsNotInRange
Checks if amount Squads with PvE Type are in Range to (any of) the Target(s).
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
PvEType The name of a PvE Type. string N
Amount Just a simple value, meaning depends on context. number N
SquadFlyingIsInRange

2008-10-28


SquadFlyingIsNotInRange
Checks if a flying Squad is in Range to (any of) the Target(s).
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
SquadOnGroundIsInRange

2008-10-28


SquadOnGroundIsNotInRange
Checks if a Squad that is NOT flying is in Range to (any of) the Target(s).
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
PlayerSquadIsInRange

2008-02-26


PlayerSquadIsNotInRange
Checks if a Squad of a specified Player is in Range to (any of) the Target(s).
*Careful! This method relies on FilterEntityIsOwnedByPlayer.
If a Player can't be found (eg. if playing a two-player map solo), the Filter works on Entities, that have NO Player assigned!
You can use PlayerIsHuman in combination with this function, to make sure a player is actually present.
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
PlayerSquadFlyingIsInRange

2008-10-28


PlayerSquadFlyingIsNotInRange
Checks if a Squad of a specified Player is in Range to (any of) the Target(s).
*Careful! This method relies on FilterEntityIsOwnedByPlayer.
If a Player can't be found (eg. if playing a two-player map solo), the Filter works on Entities, that have NO Player assigned!
You can use PlayerIsHuman in combination with this function, to make sure a player is actually present.
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
PlayerSquadOnGroundIsInRange

2008-10-28


PlayerSquadOnGroundIsNotInRange
Checks if a Squad of a specified Player is in Range to (any of) the Target(s).
*Careful! This method relies on FilterEntityIsOwnedByPlayer.
If a Player can't be found (eg. if playing a two-player map solo), the Filter works on Entities, that have NO Player assigned!
You can use PlayerIsHuman in combination with this function, to make sure a player is actually present.
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
TeamSquadIsInRange

2008-02-26


TeamSquadIsNotInRange
Checks if a Squad of a specified Team is in Range to (any of) the Target(s).
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
TeamSquadFlyingIsInRange

2008-10-28


TeamSquadFlyingIsNotInRange
Checks if a Squad of a specified Team is in Range to (any of) the Target(s).
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
TeamSquadOnGroundIsInRange

2008-10-28


TeamSquadOnGroundIsNotInRange
Checks if a Squad of a specified Team is in Range to (any of) the Target(s).
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
SquadIdIsInRange

2008-03-01


SquadIdIsNotInRange
Checks if a Squad with the specified ID is in Range to (any of) the Target(s).
SquadId The DB ID of a Squad. The default Upgrade-Level is 2 (2.000.000 is automatically added).
If you need any other Upgrade-Level, you need to subtract 2.000.000 from your desired DB ID.
You can also use the function UpgradeLevel_(DB ID)
number N
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
Building
PlayerBuildingIsInRange

2008-02-26


PlayerBuildingIsNotInRange
Checks if a Building of a specified Player is in Range to (any of) the Target(s).
*Careful! This method relies on FilterEntityIsOwnedByPlayer.
If a Player can't be found (eg. if playing a two-player map solo), the Filter works on Entities, that have NO Player assigned!
You can use PlayerIsHuman in combination with this function, to make sure a player is actually present.
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
TeamBuildingIsInRange

2008-02-26


TeamBuildingIsNotInRange
Checks if a Building of a specified Team is in Range to (any of) the Target(s).
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
PlayerBuildingKillableIsInRange

2008-09-24


PlayerBuildingKillableIsNotInRange
Checks if a Building of a specified Player is in Range to (any of) the Target(s).
*Careful! This method relies on FilterEntityIsOwnedByPlayer.
If a Player can't be found (eg. if playing a two-player map solo), the Filter works on Entities, that have NO Player assigned!
You can use PlayerIsHuman in combination with this function, to make sure a player is actually present.
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
TeamBuildingKillableIsInRange

2008-09-24


TeamBuildingKillableIsNotInRange
Checks if a Building of a specified Team is in Range to (any of) the Target(s).
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
BuildingIdIsInRange

2008-03-01


BuildingIdIsNotInRange
Checks if a Building with the specified ID is in Range to (any of) the Target(s).
BuildingId The DB ID of a Building. The default Upgrade-Level is 2 (2.000.000 is automatically added).
If you need any other Upgrade-Level, you need to subtract 2.000.000 from your desired DB ID.
You can also use the function UpgradeLevel_(DB ID)
number N
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
BuildingPvETypeIsInRange

2008-08-24


BuildingPvETypeIsNotInRange
Checks if a Building with given PvE Type is in Range to (any of) the Target(s).
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
PvEType The name of a PvE Type. string N
BuildingPvETypeAmountIsInRange

2008-09-05


BuildingPvETypeAmountIsInRange
Checks if amount Buildings with PvE Type are in Range to (any of) the Target(s).
TargetTag The ScriptTag of the 'target' entity. string N
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
PvEType The name of a PvE Type. string N
Amount Just a simple value, meaning depends on context. number N

Filters[]

Parameter Parameter Explanation Type Optional
Filter
FilterEntityHasAbility

2007-11-12


FilterEntityHasNotAbility
Filters based on entity's ability.
AbilityId The DB ID of an Ability number N
FilterEntityHasAbilityLine

2007-11-12


FilterEntityHasNotAbilityLine
Filters based on entity's abilityline.
AbilityLineId The DB ID of an AbilityLine number N
FilterEntityIsAlive

2008-03-14


FilterEntityIsDead
Filters entity by alive/dead status.
FilterEntityAmountIsLess

2008-01-15


FilterEntityAmountIsGreaterOrEqual
Filters for a specific number of entities.
Amount Just a simple value, meaning depends on context. number N
FilterEntityAmountIsGreater

2008-01-15


FilterEntityAmountIsLessOrEqual
Filters for a specific number of entities.
Amount Just a simple value, meaning depends on context. number N
FilterEntityAmountIsEqual

2008-01-15


FilterEntityAmountIsNotEqual
Filters for a specific number of entities.
Amount Just a simple value, meaning depends on context. number N
FilterEntityIsAttackable

2008-04-16


FilterEntityIsNotAttackable
Filters entity by attackable status (includes check for 'unattackable' abilities).
FilterEntityCanProducePower

2008-06-27


FilterEntityCanNotProducePower
Filters for power production (mostly generators).
FilterEntityIsBuilding

2007-11-08


FilterEntityIsNotBuilding
Filters entity by category Building.
FilterEntityIsObject

2007-11-08


FilterEntityIsNotObject
Filters entity by category Object.
FilterEntityIsSquad

2007-11-08


FilterEntityIsNotSquad
Filters entity by category Squad.
FilterSquadIsFlying

2008-10-28


FilterSquadIsNotFlying
Filters Squad by flying ability.
FilterEntityIsInRange

2008-03-14


FilterEntityIsNotInRange
Filters entity wether it is in range to any of the TargetTag entities.
TargetTag The ScriptTag of the 'target' entity. (It should exist!) string Y GetScriptTag()
Range The Radius around the TargetTag(s) that is considered to be 'in range'. number Y 10
FilterSquadIsIdle

2007-11-12


FilterSquadIsBusy
Filters idle squads.
FilterEntityIsOwnedByPlayer

2007-11-12


FilterEntityIsNotOwnedByPlayer
Filters entity by player pwnage.
*Careful! If a Player can't be found (eg. if playing a two-player map solo), the Filter works on Entities, that have NO Player assigned!
You can use PlayerIsHuman in combination with this function, to make sure a player is actually present.
Player Prefix:
pl_

The name of a Player. Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
FilterSquadIsPrimaryRanged

2008-03-14


FilterSquadIsMelee
Filters Squads based on wether they are Melee or PrimaryRanged.
FilterEntityHasPvEType

2008-06-13


FilterEntityHasNotPvEType
Filters for PvE Type of an entity.
PvEType The name of a PvE Type. string N
FilterIsRandomPercent

2008-03-14


FilterIsNotRandomPercent
Filters entities by a random-percent chance.
Percent A percentage from 0-100 (do not write the % sign). number N
FilterEntityHasResId

2007-11-12


FilterEntityHasNotResId
Filters based on entity ResId.
Id The DB ID of an entity. number N
FilterEntityIsOwnedByTeam

2007-11-12


FilterEntityIsNotOwnedByTeam
Filters entity by team pwnage.
Team Prefix:
tm_

The name of a Team from the map's TeamSetup.
string N
FilterEntityThreatValueIsLess

2008-05-08


FilterEntityThreatValueIsGreaterOrEqual
Filters for threatvalue of an entity.
Value Just a simple value, meaning depends on context. number N
FilterEntityThreatValueIsGreater

2008-05-08


FilterEntityThreatValueIsLessOrEqual
Filters for threatvalue of an entity.
Value Just a simple value, meaning depends on context. number N

Events[]

Parameter Parameter Explanation Type Optional
Events
OnEvent


Event that is being executed continuously as long as the conditions are true.
As events are checked 10 times a second, this could mean that an event is executed 10 times a second if the conditions block stays "true" the whole time.
The conditions block of an OnEvent must be written in a way, that it is not permanently true!
EventName The name of the event (for debugging purposes). string Y
Conditions The conditions which need to be satisfied to execute the event. function[] Y *empty*
Actions The actions that are to be executed. function[] Y *empty*
GotoState Change to this state, after executing Actions. string Y self
OnOneTimeEvent


Event that is only executed once, when the conditions become true for the first time.
There is a hidden flag attached to that event, that is checked in the conditions block and set true when executed for the first time.
EventName The name of the event (for debugging purposes). string Y
Conditions The conditions which need to be satisfied to execute the event. function[] Y *empty*
Actions The actions that are to be executed. function[] Y *empty*
GotoState Change to this state, after executing Actions. string Y self
OnKeyPressEvent


CURRENTLY NOT IMPLEMENTED!
Event that is being executed when a key combo is pressed.
Player Prefix:
pl_

The name of a Player.
string N
Key The type of key as string. string N
Shift Wether Shift key must also be pressed. boolean Y false
Ctrl Wether Ctrl key must also be pressed. boolean Y false
Alt Wether Alt key must also be pressed. boolean Y false
Conditions The conditions which need to be satisfied to execute the event. function[] Y *empty*
Actions The actions that are to be executed. function[] Y *empty*
GotoState Change to this state, after executing Actions. string Y self
OnOneTimeKeyPressEvent


CURRENTLY NOT IMPLEMENTED!
Event that is being executed once when a key combo is pressed.
Player Prefix:
pl_

The name of a Player.
string N
Key The type of key as string. string N
Shift Wether Shift key must also be pressed. boolean Y false
Ctrl Wether Ctrl key must also be pressed. boolean Y false
Alt Wether Alt key must also be pressed. boolean Y false
Conditions The conditions which need to be satisfied to execute the event. function[] Y *empty*
Actions The actions that are to be executed. function[] Y *empty*
GotoState Change to this state, after executing Actions. string Y self
OnToggleEvent


This event can be "on" or "off" and can toggle between those two phases. By default it is "off"
EventName The name of the event (for debugging purposes). string Y
OnConditions Conditions to switch to Phase: on. Only checked in Phase: off. Default: AND function[] Y *empty*
OnActions Actions that are executed, once Phase switched to: on. function[] Y *empty*
OffConditions Conditions to switch to Phase: off. Only checked in Phase: on. Default: AND function[] Y *empty*
OffActions Actions that are executed, once Phase switched to: off. function[] Y *empty*
OnTimerEvent


Starts a timer, once TimerStartConditions are met. As soon as Time (Minutes,Seconds) is elapsed, TimerElapsedActions are executed
Event that starts anytime and ends after some time has elapsed, then restarts the timer.
Not well documented..
"They enable you to set conditions for when to first start the timer, and which actions to execute, as well as the conditions for every execution starting with the second, and its respective actions. As well, you may enter a minimum time until the 2nd execution happens."
EventName The name of the event (for debugging purposes). string Y
Minutes How much time must pass before the event fires again. number Y 0
Seconds How much time must pass before the event fires again. number Y 3
TimerStartConditions When these Conditions are satisfied, the timer will be started. function[] Y *empty*
TimerStartActions These Actions will be executed when the timer is started. function[] Y *empty*
TimerElapsedConditions The timer must be elapsed AND these Conditions must be satisfied to stop the timer. function[] Y *empty*
TimerElapsedActions These Actions will be executed when the timer is stopped. function[] Y *empty*
OneTime number Y
OnIntervalEvent


Event that is checked/executed only every x seconds.
Useful for Filtered Actions or time-consuming conditions.
EventName The name of the event (for debugging purposes). string Y
Seconds How much time must pass before the event fires again. number Y 3
Conditions The conditions which need to be satisfied to execute the event. function[] Y *empty*
Actions The actions that are to be executed. function[] Y *empty*
OnOneTimeTimerEvent


Functions the same as OnTimerEvent, is only executed once.
EventName The name of the event (for debugging purposes). string Y
Minutes How much time must pass before the event fires again. number Y 0
Seconds How much time must pass before the event fires again. number Y 3
TimerStartConditions When these Conditions are satisfied, the timer will be started. function[] Y *empty*
TimerStartActions These Actions will be executed when the timer is started. function[] Y *empty*
TimerElapsedConditions The timer must be elapsed AND these Conditions must be satisfied to stop the timer. function[] Y *empty*
TimerElapsedActions These Actions will be executed when the timer is stopped. function[] Y *empty*
OneTime number Y
OnRespawnEvent


Respawns an entity or group and executes Actions on every respawn.
IMPORTANT: This event is only working in Member Scripts of units and squads. It doesn't work in the Main script.
If a unit was killed, it keeps on checking the *Conditions* of its respawn event. (but only if this respawn event is in the state the unit was in when it was killed).
StartDespawned Determines if entity is to be vanished first (aka SpawnOnlyWhen).
Unit will be killed in the first Frame. It will only re-spawn, once *Conditions* are met. SquadIsDead() will be true!
boolean Y false
TargetTag 'WhereDied' for position of death or 'StartPos' for startposition. string Y StartPos
RespawnDelayMinutes Wait at least this many minutes before respawning. number Y 0
RespawnDelaySeconds Wait at least this many seconds before respawning. number Y 0
HealthPercent The amount of health in percentage of max. health. number Y 100
Conditions The conditions which need to be satisfied to execute the event. function[] Y *empty*
Actions The actions that are to be executed. function[] Y *empty*
OnDeathActions These actions will be executed when the entity dies. function[] Y *empty*
GotoState Change to this state, after executing Actions. string Y self
OnIdleGoHomeEvent


Sends unit *Tag* to Homepoint: *TargetTag* when unit is idle (when *Conditions* are met)
If units are not in range of a hostile unit which would draw them into combat and also do not have any task to fulfil (like a "goto" command), for code they are "idle".
Please note: The "OnIdleGoHome" does not mean that the unit won't run to an enemy when it sees one. It just means that the unit will come back to its homepoint after it killed the enemy.
*Careful! you can only use StartPos as a TargetTag once (per Tag)!
EventName The name of the event (for debugging purposes). string Y
Tag Entity to be sent home (Can be left out, if Event is inside an Entity-Script) string Y GetScriptTag()
TargetTag Home-Point
*Careful! you can only use StartPos as a TargetTag once (per Tag)!
string N
HomeRange If Squad is not within HomeRange to Target it will return. number Y 8
Run Changes WalkSpeed, running is default. Walking may look dull for large figures. boolean Y true
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
Conditions The conditions which need to be satisfied to execute the event. function[] Y *empty*
GoActions The actions that are to be executed. function[] Y *empty*
HomeActions Actions that are executed, every time unit *Tag* returns to its Home-Point *TargetTag*. function[] Y *empty*
OneTimeHomeActions Actions that are executed, when the unit *Tag* returns to its Home-Point *TargetTag* for the very first time. function[] Y *empty*
OnIdleContinueAttackEvent


If the Squad is Idle it will attack the next valid Target from the TargetTag ScriptGroup.
EventName The name of the event (for debugging purposes). string Y
Tag Entity to be sent. string Y GetScriptTag()
TargetTag Target to be attacked string N
AttackGroupSize Squads will attack all available Targets in Groups of this size. number Y 0
Conditions The conditions which need to be satisfied to execute the event. function[] Y *empty*
Actions The actions that are to be executed. function[] Y *empty*
OnDeadEvent


This event is only active as long as the entity is dead.
IMPORTANT: This event is only working in Member Scripts of units and squads. It doesn't work in the Main script.
This event is only executed if and when:
- the unit dies in the State that contains the DeadEvent
- there is a RespawnEvent in that state
- the conditions of the DeadEvent are TRUE
EventName The name of the event (for debugging purposes). string Y
Conditions The conditions which need to be satisfied to execute the event. function[] Y *empty*
Actions The actions that are to be executed. function[] Y *empty*
OnOneTimeDeadEvent


This event is only active as long as the entity is dead. It will only be executed once.
TODO: test if the Conditions mentioned in OnDeadEvent also apply to this event
EventName The name of the event (for debugging purposes). string Y
Conditions The conditions which need to be satisfied to execute the event. function[] Y *empty*
Actions The actions that are to be executed. function[] Y *empty*
OnBuildingNotUnderAttackEvent


Event that only executes if the Building is not under attack.
EventName The name of the event (for debugging purposes). string Y
Conditions The conditions which need to be satisfied to execute the event. function[] Y *empty*
Actions The actions that are to be executed. function[] Y *empty*
GotoState Change to this state, after executing Actions. string Y self
Tag Tag of the Building string Y GetScriptTag()

Warfare Patterns[]

Parameter Parameter Explanation Type Optional
Warfare Patterns
WP_AttackAndPatrolArea

2008-01-15


Basically a fancy version of the Action: SquadPatrol().
Seems to be used in conjunction with WP_Respawn or WP_SpawnWave. But it can be used standalone aswell - your units will not respawn of course.

This works differently than WP_SpawnWave.
This Pattern takes units that already exist on the map and works with them.

Sends the ScriptGroup of squads to the TargetTag location. They then wait at the TargetTag for 3 seconds and continue moving between the first and the last point defined in PatrolPoints.
It also considers the Goto-Grid.
It works internally with the Action: SquadPatrol
TargetTag should be a single script tag. If you want to (initially) send the Group along a path towards the TargetTag, rather than the TargetTag directly, simply use a SquadGoto command in the StartActions with the path as TargetTags of the Goto command.

Be careful with the placement of your squads. They either need to be completely within 16m of the TargetTag, or be completely outside of the 16m radius of the TargetTag. If they are partially inside the 16m radius (one squad is, another not), they will not move initially.
StateName Warfare Patterns are considered to be a state. this is the name of that state string N
StartConditions These conditions must be satisfied to Start the Event/Pattern. function[] Y *empty*
StartActions The actions that are to be executed. function[] Y *empty*
FinishActions FinishActions will be executed if WP can 'complete' its task and has completed it. function[] Y *empty*
ExitConditions If these Conditions are true the WP will exit/change to the WP's GotoState. function[] Y *empty*
ExitActions ExitActions will only be executed if ExitConditions are given. function[] Y *empty*
FinishState If the WP can implicitly 'finish' this is the State/WP it will go to. string Y self
ExitState If Exit conditions are true pattern will change to this State. string Y self
DeathState Change to this State on death. Only use to link with a respawn pattern! string Y self
AllowExitBeforeStart Allows ExitConditions to exit WP before it has even started. boolean Y false
TargetTag Initial location for the Squads string N
PatrolPoints A ScriptGroup of points the squad will patrol
Squads will move between the first and last patrolpoint.
; OPTIONAL?!
string N
NumPatrolSquads I have no idea what that parameter does.
; OPTIONAL?!
number N
WP_Respawn

2008-01-16


Respawns the SquadGroup (all at once) after a specified delay. (If all are dead)

This works differently than WP_SpawnWave.
This Pattern takes units that already exist on the map and works with them.

You want the units to be dead when entering this state. Otherwise they will respawn instantly without considering the RespawnDelay.
StateName Warfare Patterns are considered to be a state. this is the name of that state string N
StartConditions These conditions must be satisfied to Start the Event/Pattern. function[] Y *empty*
StartActions The actions that are to be executed. function[] Y *empty*
FinishActions FinishActions will be executed if WP can 'complete' its task and has completed it. function[] Y *empty*
ExitConditions If these Conditions are true the WP will exit/change to the WP's GotoState. function[] Y *empty*
ExitActions ExitActions will only be executed if ExitConditions are given. function[] Y *empty*
FinishState This is the State, we will go to, once everything is respawned.
This is the usual way to exit this pattern.
This can be eg. a WaitForDeath-State or a WP_AttackAndPatrolArea
string Y self
ExitState If Exit conditions are true pattern will change to this State. string Y self
DeathState Change to this State on death. Only use to link with a respawn pattern! string Y self
AllowExitBeforeStart Allows ExitConditions to exit WP before it has even started. boolean Y false
TargetTag Where the Squads will respawn string N
RespawnDelayMinutes Wait at least this many minutes before respawning. number Y 0
RespawnDelaySeconds Wait at least this many seconds before respawning. number Y 0
WP_SpawnWave

2008-02-12


Spawns Waves of Squads based on _SpawnGroups definitions.
StateName Warfare Patterns are considered to be a state. this is the name of that state string N
StartConditions These conditions must be satisfied to Start the Event/Pattern.
Check here if the Spawn Building is still alive (only needed if WP_SpawnWave is not referencing a Building), or similar (re)spawn Conditions.
The spawn delay is set in _spawngroups

Careful, your StartConditions will not be checked while eg. the RespawnDelay is running!
That could result in Squads being spawned even if your SpawnConditions are no longer true.
You need to set ExitConditions aswell!

Default: AND
function[] Y *empty*
StartActions These actions are executed, when *StartConditions* are met.
the actions will get called once for every SpawnWaveTemplate instance in _spawngroups.
So if you have 2 waves coming with different delays in _spawngroups, these actions will get called 2 times.
It runs everytime, the StartConditions are checked, so basically everytime the script prepares for spawning a wave
function[] Y *empty*
FinishActions FinishActions will be executed if WP can 'complete' its task and has completed it.
Once all Units (of that wave) are spawned, these Actions are executed.
Eg. you can send your units somewhere with SquadGridGoto
After that, the script will switch to *FinishState*
function[] Y *empty*
ExitConditions If these Conditions are true the WP will exit/change to the WP's GotoState.
Conditions after which the script will go to the ExitState

They are necessary, if you already entered the WP_SpawnWave-State (StartConditions are true) and the (Re)spawn-Timer already started.

Exit is only evaluated while waiting for units to be spawned (If AllowExitBeforeStart is not set).

They are the only way to check if Spawning Conditions are still true, right before actually spawning the Squads.

In the background, an ExitCondition for BuildingIsDestroyed will be added! Keep that in mind, when programming your ExitConditions, since everything added here AND BuildingIsDestroyed will need to be true (AND!!) (You can circumvent that by setting the TargetTag to NOT a building and manually adding your BuildingIsAlive/Destroyed conditions)
function[] Y *empty*
ExitActions Actions that are executed before the script goes to ExitState function[] Y *empty*
FinishState Cannot be "self"!
Switches to a state where the script either waits for the wave to die, or to send the units somewhere else, based on other conditions
string Y self
ExitState If Exit conditions are true pattern will change to this State. string Y self
DeathState Change to this State on death. Only use to link with a respawn pattern!
*I have not yet found a way to enter this state.
string Y self
AllowExitBeforeStart Allows ExitConditions to exit WP before it has even started. boolean Y false
TargetTag Where this Wave will spawn.
If this is not a Building, you can set the Parameter: SpawnBuilding
string N
Direction Direction in degrees (0-360°). 0 means 'south' (down), 90 means 'east' (right), etc. number Y -180
Team Prefix:
tm_

The name of a Team from the map's TeamSetup (of the spawned units).
string N
Player Prefix:
pl_

The name of a Player (of the spawned units). Must not be a ScriptGroup and not 'All'/'Any'/etc.
string N
AfterSpawnGotoTargetTag Use this parameter to let the individual spawned squads go to a location right after spawning.
Intended to avoid that the spawn location is blocked by squads and new squads spawn on the outer "ring" of existing squads.
Basically it just looks better when squads move a couple meters after spawn. Don't use with long walkways, it has a limited range -> so more of a meeting place nearby to not block the spawnpoint
string Y
SpawnWaveTemplate Can be used to spawn different SpawnWaveTemplate squads for each WP_SpawnWave.
Overrides the default Template from the SpawnWaveEmitter.
Makes it possible to, for example, switch the same wave from spawning infantry to cavalry by using two WP_SpawnWave with appropriate SpawnWaveTemplates.
string Y
InitialSpawnDelaySeconds The delay for the very first spawn of the wave.
If 0: wave will begin spawning from the start of the map, otherwise the first Spawn is delayed appropriately and independently from the regular RespawnDelay
string Y
InitialSpawnDelayMinutes The delay for the very first spawn of the wave.
If 0: wave will begin spawning from the start of the map, otherwise the first Spawn is delayed appropriately and independently from the regular RespawnDelay
string Y
SpawnBuilding The tag of the SpawnBuilding.
If TargetTag is the SpawnBuilding you don't need this parameter.
SpawnBuilding is necessary if you spawn to a TargetTag near the SpawnBuilding, but still want the SpawnBuilding to control the spawning
(eg. only spawn if it's alive, don't spawn while building is under attack).
string Y

See also[]

General

Community MapsMap CreationMap EditorFiles & Structure

Map Editor Functions

Basics ▪ Camera ▪ Map Settings ▪ Render Filter ▪ View

Tools

Blocking & VisualizationCutscene EditorDebuggingEntity ListEntity PropertiesGoto Grid ToolGrid ManagerHeight ToolMap Patch ToolPerformance LightsScript Group EditorScripting ToolSound ToolTerrain CliffsTexture ToolWater Tool

Map Scripting Functions

Basics ▪ States ▪ Events ▪ Actions & Conditions ▪ Script Information - Full Reference ▪ Examples

ID Lists

Card IDsBuilding IDsSpell IDsUnit IDsAbility IDsAbilityLineIDs

Advertisement