Eden Editor: System: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (update)
(→‎Attributes: rotation is array)
 
(7 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<div style="width:640px; margin: 0 auto 0 auto;">
{{TOC|side}}
A system is a virtual object which can expand your scenario with a new functionality.
A system is a virtual object which can help expand your scenario with a new functionality.
 


== Modules ==
A '''module''' provides complex functionality which would otherwise have to be scripted. It can usually be configured using custom attributes, and can sometimes be affected by '''synchronization''' connections. For example, many modules are activated only once all the synchronized triggers are active. To see more about the individual modules, explore their attributes.
A '''module''' provides complex functionality which would otherwise have to be scripted. It can usually be configured using custom attributes, and can sometimes be affected by '''synchronization''' connections. For example, many modules are activated only once all the synchronized triggers are active. To see more about the individual modules, explore their attributes.


== Logic Entities ==
A '''logic entity''' is simply a virtual object without any inherent functionality. It is mainly used in cooperation with modules or scripts, for example, to mark positions and their relations.


A '''logic entity''' is simply a virtual object, without any inherent functionality. It is mainly used in cooperation with modules or scripts, for example, to mark positions and their relations.
== Virtual Entities ==
 
Some '''virtual entities''' are playable. They are used in multiplayer for abstract roles such as a spectator or headless client.
 
Some '''Virtual Entities''' are playable. They are used in multiplayer for abstract roles such as a spectator or headless client.
 


Be sure to investigate all the available systems, especially modules. Because each has its own rules, do not forget to also check their attributes.


</div>
Be sure to investigate all the available systems, especially [[Modules]]. Because each has its own rules, do not forget to also check their attributes.


== Attributes ==
== Attributes ==
Line 32: Line 30:
| Type
| Type
|  
|  
| <small><tt>itemClass</tt></small>
| <small>{{hl|itemClass}}</small>
| [[String]]
| [[String]]
|-
|-
Line 38: Line 36:
| 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><tt>Name</tt></small>
| <small>{{hl|Name}}</small>
| [[String]]
| [[String]]
|-
|-
Line 44: Line 42:
| Init
| Init
| Expression called upon at start. In multiplayer, it is called on every machine and for each player who joins in the progress. The variable 'this' refers to the affected object.
| Expression called upon at start. In multiplayer, it is called on every machine and for each player who joins in the progress. The variable 'this' refers to the affected object.
| <small><tt>Init</tt></small>
| <small>{{hl|Init}}</small>
| [[String]]
| [[String]]
|-
|-
Line 50: Line 48:
| 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><tt>position</tt></small>
| <small>{{hl|position}}</small>
| [[Position3D]]
| [[Position#Introduction|Position3D]]
|-
|-
| '''Rotation'''
| '''Rotation'''
| 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><tt>rotation</tt></small>
| <small>{{hl|rotation}}</small>
| [[Number]]
| [[Array]]
|-
|-
| '''Size'''
| '''Size'''
| Transformation
| Transformation
| Area size in meters.
| Area size in meters.
| <small><tt>size2</tt></small>
| <small>{{hl|size2}}</small>
| [[Array]]
| [[Array]]
|-
|-
Line 68: Line 66:
| Transformation
| Transformation
| Area size in meters.
| Area size in meters.
| <small><tt>size3</tt></small>
| <small>{{hl|size3}}</small>
| [[Array]]
| [[Array]]
|-
|-
Line 78: Line 76:
* '''Rectangle'''
* '''Rectangle'''


| <small><tt>IsRectangle</tt></small>
| <small>{{hl|IsRectangle}}</small>
| [[Bool]]
| [[Boolean]]
|-
|-
| '''Placement Radius'''
| '''Placement Radius'''
| Transformation
| Transformation
| Placement radius in meters. The entity will start at a random position within the radius.
| Placement radius in meters. The entity will start at a random position within the radius.
| <small><tt>placementRadius</tt></small>
| <small>{{hl|placementRadius}}</small>
| [[Number]]
| [[Number]]
|-
|-
Line 90: Line 88:
| Control
| Control
| Player in singleplayer. When enabled, the character will also be available in multiplayer and team switch ('Playable' status cannot be disabled individually in such case).
| Player in singleplayer. When enabled, the character will also be available in multiplayer and team switch ('Playable' status cannot be disabled individually in such case).
| <small><tt>ControlSP</tt></small>
| <small>{{hl|ControlSP}}</small>
| [[Bool]]
| [[Boolean]]
|-
|-
| '''Playable'''
| '''Playable'''
| Control
| Control
| When enabled, the character will appear as a slot in the multiplayer scenario lobby and in the list of roles available for team switch.
| When enabled, the character will appear as a slot in the multiplayer scenario lobby and in the list of roles available for team switch.
| <small><tt>ControlMP</tt></small>
| <small>{{hl|ControlMP}}</small>
| [[Bool]]
| [[Boolean]]
|-
|-
| '''Role Description'''
| '''Role Description'''
| Control
| Control
| Multiplayer role description visible in the multiplayer lobby. When undefined, the object type name will be used by default.
| Multiplayer role description visible in the multiplayer lobby. When undefined, the object type name will be used by default.
| <small><tt>description</tt></small>
| <small>{{hl|description}}</small>
| [[String]]
| [[String]]
|-
|-
Line 108: Line 106:
| Presence
| Presence
| Probability of presence evaluated at the scenario start. When it fails, the object is not created at all.
| Probability of presence evaluated at the scenario start. When it fails, the object is not created at all.
| <small><tt>presence</tt></small>
| <small>{{hl|presence}}</small>
| [[Number]]
| [[Number]]
|-
|-
Line 114: Line 112:
| Presence
| Presence
| Condition of presence evaluated at the scenario start, must return boolean expression. When false, the object is not created at all.
| Condition of presence evaluated at the scenario start, must return boolean expression. When false, the object is not created at all.
| <small><tt>presenceCondition</tt></small>
| <small>{{hl|presenceCondition}}</small>
| [[String]]
| [[String]]
|}
|}
Line 120: Line 118:
</onlyinclude>
</onlyinclude>


[[Category:Eden Editor|Systems]]
[[Category:Eden Editor: Asset Types|Systems]]
[[Category:Eden Editor: Asset Types|Systems]]

Latest revision as of 15:04, 16 April 2023

A system is a virtual object which can help expand your scenario with a new functionality.

Modules

A module provides complex functionality which would otherwise have to be scripted. It can usually be configured using custom attributes, and can sometimes be affected by synchronization connections. For example, many modules are activated only once all the synchronized triggers are active. To see more about the individual modules, explore their attributes.

Logic Entities

A logic entity is simply a virtual object without any inherent functionality. It is mainly used in cooperation with modules or scripts, for example, to mark positions and their relations.

Virtual Entities

Some virtual entities are playable. They are used in multiplayer for abstract roles such as a spectator or headless client.


Be sure to investigate all the available systems, especially Modules. Because each has its own rules, do not forget to also check their attributes.

Attributes

Info Development
Name Category Description Property Type
Type Type itemClass String
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
Init Init Expression called upon at start. In multiplayer, it is called on every machine and for each player who joins in the progress. The variable 'this' refers to the affected object. Init 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 Array
Size Transformation Area size in meters. size2 Array
Size Transformation Area size in meters. size3 Array
Shape Transformation Area shape.

Available options:

  • Ellipse
  • Rectangle
IsRectangle Boolean
Placement Radius Transformation Placement radius in meters. The entity will start at a random position within the radius. placementRadius Number
Player Control Player in singleplayer. When enabled, the character will also be available in multiplayer and team switch ('Playable' status cannot be disabled individually in such case). ControlSP Boolean
Playable Control When enabled, the character will appear as a slot in the multiplayer scenario lobby and in the list of roles available for team switch. ControlMP Boolean
Role Description Control Multiplayer role description visible in the multiplayer lobby. When undefined, the object type name will be used by default. description String
Probability of Presence Presence Probability of presence evaluated at the scenario start. When it fails, the object is not created at all. presence Number
Condition of Presence Presence Condition of presence evaluated at the scenario start, must return boolean expression. When false, the object is not created at all. presenceCondition String