keyword
public
scene Name start public { … }
public marks a scene, layer, or event as part of the game's public surface, so its lifecycle is emitted as named events other systems and mods can react to with @On. A public scene fires scene_<Name>_enter and scene_<Name>_exit; a public layer fires layer_<Name>_show / _hide. It is the declaration-level counterpart to the @Public annotation that promotes a model or handler's lifecycle hooks. Keep it off by default and add it only where the modding surface genuinely needs the hook.
Example
program Flow {
@On(scene_Menu_enter) handler Greet { print(1) }
scene Menu start public {
on enter { print(10) } # entering Menu prints 10, then fires scene_Menu_enter
on exit { print(20) }
}
}