Entity Lifecycle – Arma Reforger
Category: Arma Reforger/Modding/Guidelines/Scripting
Definitions
- Frame: every drawing frame (frame as in FPS)
- Fixed Frame: a fixed event happening 30 times per second
- Physics Simulation Frame: a fixed event at 60 simulations per second (frequency defined in Workbench → Options → Game Project → Modules → Physics Settings → Ticks)
Lifecycle
| Section | Mode | Method | Description | ||
|---|---|---|---|---|---|
|
WB Play |
WB Edit | Entity | Component | ||
| Instantiation | Constructor | ||||
| Constructor | |||||
| OnPostInit | |||||
| EOnInit | |||||
| EOnInit | |||||
| _WB_SetTransform | |||||
| _WB_SetTransform | |||||
| _WB_OnInit | |||||
| _WB_OnInit | |||||
| _WBMakeVisible | |||||
| Workbench
Execution loop (World Editor) |
_WB_AfterWorldUpdate | ||||
| _WB_AfterWorldUpdate | |||||
| Simulation init | EOnActivate | ||||
| Simulation loop | EOnFrame | ||||
| EOnFrame | |||||
| EOnDiag | |||||
| EOnDiag | |||||
| EOnFixedFrame | if 1/30s passed since the last execution | ||||
| EOnFixedFrame | if 1/30s passed since the last execution | ||||
| EOnSimulate | |||||
| EOnSimulate | |||||
| EOnPostSimulate | |||||
| EOnPostSimulate | |||||
| EOnPhysicsMove | if 1/60s passed since the last execution - can be executed multiple times per frame | ||||
| EOnPhysicsMove | if 1/60s passed since the last execution - can be executed multiple times per frame | ||||
| EOnPostFrame | |||||
| EOnPostFrame | |||||
| EOnPostFixedFrame | If EOnFixedFrame executed this frame | ||||
| EOnFixedPostFrame | If EOnFixedFrame executed this frame | ||||
| Destruction | OnDelete | ||||
| Destructor | Do NOT delete components in an entity's destructor - this could lead to nullpointer exceptions | ||||
| Destructor | Do NOT reference the parent entity in a component's destructor - the entity is already deleted by then | ||||