Eden Editor: Trigger: Difference between revisions
m (bool → boolean) |
Lou Montana (talk | contribs) m (Text replacement - "<tt>([a-zA-Z0-9\. _"\\']+)<\/tt>" to "{{hl|$1}}") |
||
Line 46: | Line 46: | ||
| Init | | Init | ||
| Unique system name. Can contain only letters, numbers and underscore. The name is not case sensitive, so 'someName' and 'SOMENAME' are treated as the same variables. | | Unique system name. Can contain only letters, numbers and underscore. The name is not case sensitive, so 'someName' and 'SOMENAME' are treated as the same variables. | ||
| <small> | | <small>{{hl|name}}</small> | ||
| [[String]] | | [[String]] | ||
|- | |- | ||
Line 52: | Line 52: | ||
| Init | | Init | ||
| Trigger description. Players can see it in the radio menu when its activation is set to 'Radio'. Also visible in tooltip when hovering over the trigger in the editor. | | Trigger description. Players can see it in the radio menu when its activation is set to 'Radio'. Also visible in tooltip when hovering over the trigger in the editor. | ||
| <small> | | <small>{{hl|text}}</small> | ||
| [[String]] | | [[String]] | ||
|- | |- | ||
Line 58: | Line 58: | ||
| Transformation | | Transformation | ||
| World coordinates in meters. X goes from West to East, Y from South to North and Z is height above terrain. | | World coordinates in meters. X goes from West to East, Y from South to North and Z is height above terrain. | ||
| <small> | | <small>{{hl|position}}</small> | ||
| [[Position3D]] | | [[Position3D]] | ||
|- | |- | ||
Line 64: | Line 64: | ||
| Transformation | | Transformation | ||
| Local rotation in degrees. X is pitch, Y is roll and Z is yaw. | | Local rotation in degrees. X is pitch, Y is roll and Z is yaw. | ||
| <small> | | <small>{{hl|rotation}}</small> | ||
| [[Number]] | | [[Number]] | ||
|- | |- | ||
Line 70: | Line 70: | ||
| Transformation | | Transformation | ||
| Area size in meters. | | Area size in meters. | ||
| <small> | | <small>{{hl|size2}}</small> | ||
| [[Array]] | | [[Array]] | ||
|- | |- | ||
Line 76: | Line 76: | ||
| Transformation | | Transformation | ||
| Area size in meters. | | Area size in meters. | ||
| <small> | | <small>{{hl|size3}}</small> | ||
| [[Array]] | | [[Array]] | ||
|- | |- | ||
Line 86: | Line 86: | ||
* '''Rectangle''' | * '''Rectangle''' | ||
| <small> | | <small>{{hl|IsRectangle}}</small> | ||
| [[Boolean]] | | [[Boolean]] | ||
|- | |- | ||
Line 99: | Line 99: | ||
* '''Lose''' - Fail the scenario. | * '''Lose''' - Fail the scenario. | ||
| <small> | | <small>{{hl|TriggerType}}</small> | ||
| [[String]] | | [[String]] | ||
|- | |- | ||
Line 113: | Line 113: | ||
* '''Radio Alpha, Radio Bravo, Radio Charlie, Radio Delta, Radio Echo, Radio Foxtrot, Radio Golf, Radio Hotel, Radio India, Radio Juliet''' - Activated by a player using a radio command (accessible for the player by pressing 0-0 on a standard keyboard). The trigger 'Text' will be used as the command title. | * '''Radio Alpha, Radio Bravo, Radio Charlie, Radio Delta, Radio Echo, Radio Foxtrot, Radio Golf, Radio Hotel, Radio India, Radio Juliet''' - Activated by a player using a radio command (accessible for the player by pressing 0-0 on a standard keyboard). The trigger 'Text' will be used as the command title. | ||
| <small> | | <small>{{hl|ActivationBy}}</small> | ||
| [[String]] | | [[String]] | ||
|- | |- | ||
Line 125: | Line 125: | ||
* '''Any Group Member''' - Activated when anyone from the owner's group satisfies the 'Activation Condition'. | * '''Any Group Member''' - Activated when anyone from the owner's group satisfies the 'Activation Condition'. | ||
| <small> | | <small>{{hl|activationByOwner}}</small> | ||
| [[String]] | | [[String]] | ||
|- | |- | ||
Line 136: | Line 136: | ||
* '''Detected by BLUFOR, Detected by OPFOR, Detected by Independent, Detected by Civilian''' - Activated when objects are in the area and are discovered by the given side. | * '''Detected by BLUFOR, Detected by OPFOR, Detected by Independent, Detected by Civilian''' - Activated when objects are in the area and are discovered by the given side. | ||
| <small> | | <small>{{hl|activationType}}</small> | ||
| [[String]] | | [[String]] | ||
|- | |- | ||
Line 142: | Line 142: | ||
| Activation | | Activation | ||
| Repetition rules. When enabled, the trigger can be activated again once deactivated. | | Repetition rules. When enabled, the trigger can be activated again once deactivated. | ||
| <small> | | <small>{{hl|repeatable}}</small> | ||
| [[Boolean]] | | [[Boolean]] | ||
|- | |- | ||
Line 148: | Line 148: | ||
| Activation | | Activation | ||
| When enabled, the trigger will be evaluated only on server. | | When enabled, the trigger will be evaluated only on server. | ||
| <small> | | <small>{{hl|isServerOnly}}</small> | ||
| [[Boolean]] | | [[Boolean]] | ||
|- | |- | ||
Line 158: | Line 158: | ||
* thisList - list of all objects in trigger area, based on 'Activation' | * thisList - list of all objects in trigger area, based on 'Activation' | ||
* thisTrigger - trigger object | * thisTrigger - trigger object | ||
| <small> | | <small>{{hl|condition}}</small> | ||
| [[String]] | | [[String]] | ||
|- | |- | ||
Line 164: | Line 164: | ||
| Expression | | Expression | ||
| How frequently the trigger condition is evaluated in seconds. | | How frequently the trigger condition is evaluated in seconds. | ||
| <small> | | <small>{{hl|triggerInterval}}</small> | ||
| [[Number]] | | [[Number]] | ||
|- | |- | ||
Line 173: | Line 173: | ||
* thisList - list of all objects in trigger area, based on 'Activation' | * thisList - list of all objects in trigger area, based on 'Activation' | ||
* thisTrigger - trigger object | * thisTrigger - trigger object | ||
| <small> | | <small>{{hl|onActivation}}</small> | ||
| [[String]] | | [[String]] | ||
|- | |- | ||
Line 181: | Line 181: | ||
Passed variables are: | Passed variables are: | ||
* thisTrigger - trigger object | * thisTrigger - trigger object | ||
| <small> | | <small>{{hl|onDeactivation}}</small> | ||
| [[String]] | | [[String]] | ||
|- | |- | ||
Line 191: | Line 191: | ||
* '''Timeout''' - The trigger's conditions must be satisfied for the specified duration for the trigger to be activated. | * '''Timeout''' - The trigger's conditions must be satisfied for the specified duration for the trigger to be activated. | ||
| <small> | | <small>{{hl|interuptable}}</small> | ||
| [[Boolean]] | | [[Boolean]] | ||
|- | |- | ||
Line 197: | Line 197: | ||
| Timer | | Timer | ||
| Timer values in seconds, selected randomly in a range from Min to Max, gravitating towards Mid. | | Timer values in seconds, selected randomly in a range from Min to Max, gravitating towards Mid. | ||
| <small> | | <small>{{hl|timeout}}</small> | ||
| [[Array]] in format [min, mid, max] | | [[Array]] in format [min, mid, max] | ||
|- | |- | ||
Line 203: | Line 203: | ||
| Effects | | Effects | ||
| Condition for effects to be played, must return boolean expression. | | Condition for effects to be played, must return boolean expression. | ||
| <small> | | <small>{{hl|effectCondition}}</small> | ||
| [[String]] | | [[String]] | ||
|- | |- | ||
Line 209: | Line 209: | ||
| Effects | | Effects | ||
| Sound played upon activation. | | Sound played upon activation. | ||
| <small> | | <small>{{hl|sound}}</small> | ||
| [[String]] | | [[String]] | ||
|- | |- | ||
Line 215: | Line 215: | ||
| Effects | | Effects | ||
| Sound spoken by the first unit which activated the trigger. | | Sound spoken by the first unit which activated the trigger. | ||
| <small> | | <small>{{hl|voice}}</small> | ||
| [[String]] | | [[String]] | ||
|- | |- | ||
Line 221: | Line 221: | ||
| Effects | | Effects | ||
| Environment sounds played upon activation. | | Environment sounds played upon activation. | ||
| <small> | | <small>{{hl|soundEnvironment}}</small> | ||
| [[String]] | | [[String]] | ||
|- | |- | ||
Line 227: | Line 227: | ||
| Effects | | Effects | ||
| Sound effect played by the trigger upon activation. Repeats as long as the trigger is active. | | Sound effect played by the trigger upon activation. Repeats as long as the trigger is active. | ||
| <small> | | <small>{{hl|soundTrigger}}</small> | ||
| [[String]] | | [[String]] | ||
|- | |- | ||
Line 233: | Line 233: | ||
| Effects | | Effects | ||
| Music played upon activation. Replaces previously playing music track. | | Music played upon activation. Replaces previously playing music track. | ||
| <small> | | <small>{{hl|music}}</small> | ||
| [[String]] | | [[String]] | ||
|- | |- | ||
Line 239: | Line 239: | ||
| Effects | | Effects | ||
| User interface overlay shown upon activation. | | User interface overlay shown upon activation. | ||
| <small> | | <small>{{hl|title}}</small> | ||
| [[String]] | | [[String]] | ||
|} | |} |
Revision as of 23:55, 15 November 2021
A trigger is a virtual entity which executes an action once a specific condition is met.
Trigger Area
A trigger has an area. It can be scaled in all axes and it can be rotated around Z (up) axis. Some areas have unlimited height by default, but that can be changed by manually adjusting their vertical scale. Setting it to negative value will make them unlimited vertically again.
You can see it visualized both in the scene and in the map, but by default you cannot interact with it. However, when the trigger is selected, you can drag it by its area in the map.
Activation Condition
The activation condition can be based on the trigger area (e.g. no OFPOR present within a 500 m radius), but a scripted condition or combination of both can be applied as well.
Trigger Owner
Use the Set Trigger Owner connection to assign the trigger to a specific group. It will change the available activation options from the general ones (e.g. any BLUFOR character) to the group specific ones (e.g. any member of the group).
Timer
Using the Timer attribute, you can set the trigger to be activated either after a certain period of time since the condition has been met, or while the condition is met for the specified duration.
On Activation
Once the condition is met, the trigger becomes activated. Its On Activation expression is executed, and connected waypoints or modules may be activated as well.
Repeatable
If the trigger is set as repeatable, it will be deactivated once the condition is not met anymore. Afterwards, the trigger can be activated again, and this can continue until the scenario ends.
Triggers are the primary way to design the scenario flow without use of external scripts. Find out more about their configuration in the tooltips of their attributes.
Attributes
Info | Development | |||
---|---|---|---|---|
Name | Category | Description | Property | Type |
Variable Name | Init | Unique system name. Can contain only letters, numbers and underscore. The name is not case sensitive, so 'someName' and 'SOMENAME' are treated as the same variables. | name | String |
Text | Init | Trigger description. Players can see it in the radio menu when its activation is set to 'Radio'. Also visible in tooltip when hovering over the trigger in the editor. | text | String |
Position | Transformation | World coordinates in meters. X goes from West to East, Y from South to North and Z is height above terrain. | position | Position3D |
Rotation | Transformation | Local rotation in degrees. X is pitch, Y is roll and Z is yaw. | rotation | Number |
Size | Transformation | Area size in meters. | size2 | Array |
Size | Transformation | Area size in meters. | size3 | Array |
Shape | Transformation | Area shape.
Available options:
|
IsRectangle | Boolean |
Type | Activation | Trigger type, determines special behavior upon activation.
Available options:
|
TriggerType | String |
Activation | Activation | What or who can activate the trigger. Some options further depend on 'Activation Condition'.
Available options:
|
ActivationBy | String |
Activation | Activation | What or who can activate the trigger. Some options further depend on 'Activation Type'. The available options are specific to the connected trigger owner.
Available options:
|
activationByOwner | String |
Activation Type | Activation | Condition of the 'Activation' attribute.
Available options:
|
activationType | String |
Repeatable | Activation | Repetition rules. When enabled, the trigger can be activated again once deactivated. | repeatable | Boolean |
Server Only | Activation | When enabled, the trigger will be evaluated only on server. | isServerOnly | Boolean |
Condition | Expression | Repeatedly calculated condition, must return boolean expression. When true, the trigger will be activated.
Passed variables are:
|
condition | String |
Interval | Expression | How frequently the trigger condition is evaluated in seconds. | triggerInterval | Number |
On Activation | Expression | Expression executed once the trigger is activated.
Passed variables are:
|
onActivation | String |
On Deactivation | Expression | Expression executed once the trigger is deactivated.
Passed variables are:
|
onDeactivation | String |
Timer Type | Timer | Type of activation timer.
Available options:
|
interuptable | Boolean |
Timer Values | Timer | Timer values in seconds, selected randomly in a range from Min to Max, gravitating towards Mid. | timeout | Array in format [min, mid, max] |
Effect Condition | Effects | Condition for effects to be played, must return boolean expression. | effectCondition | String |
Sound | Effects | Sound played upon activation. | sound | String |
Voice | Effects | Sound spoken by the first unit which activated the trigger. | voice | String |
Environment | Effects | Environment sounds played upon activation. | soundEnvironment | String |
SFX | Effects | Sound effect played by the trigger upon activation. Repeats as long as the trigger is active. | soundTrigger | String |
Music | Effects | Music played upon activation. Replaces previously playing music track. | music | String |
UI Overlay | Effects | User interface overlay shown upon activation. | title | String |