Skip to content
Matthew edited this page Jan 28, 2019 · 7 revisions

The data lifecycle determines what we can and cannot do in scenario code.

Required reading: https://lua-api.factorio.com/latest/Data-Lifecycle.html

With factorio data lifecycle in mind, this is how we define the lifecycle in RedMew:

LIFECYCLE
1 (The settings stage)
2 (The data stage)
3 (Migrations)
4 The control stage (control.lua initialization)
5 On_init (control.lua init/loaded)
6 On_load (control.lua init/loaded)
7 (control.lua script.on_configuration_changed)
8 Runtime (control.lua runtime)

We have no access to 1-3 or 7 We mark the stages we do have access to in order to determine what can/can't be run and lock out functions that would cause errors or desyncs.

Clone this wiki locally