The spawn is a transaction
A character spawn is not justSetEntityCoords followed by a fade-in. Several asynchronous things can happen:
RSG Core
The important compatibility boundary for normal gameplay scripts remains the RSG loaded lifecycle. Creator performs its appearance/spawn work first, then finalizes the expected RSG loaded sequence once the character is actually ready in the world. For integrations that previously waited for the standard RSG player-loaded events (HUD, inventory, jobs), keep using the framework contract rather than moving everything to a private Creator event.Health / death
On RSG, Creator preserves the character’s persisted health/death meaning through the spawn transaction. A dead character must reach the final world state physically dead so the medical ecosystem sees coherent metadata and ped health. If a custom medic needs special presentation logic for a persisted dead character, use the documented custom bridge instead of patching Creator’s core lifecycle. See Custom medical.VORP Core
On VORP,vorp_core remains the authority for character data, death/status behavior and its normal spawn lifecycle.
Creator replaces the stock selection UI/resource, but it does not duplicate VORP’s core-owned events or become a second death/status system.
The important principle is exactly once behavior: character selection and final spawn should not cause duplicate SelectedCharacter/init/spawn completions because multiple entry points happened close together.
HUD / inventory guidance
If your HUD currently starts on the normal framework loaded/spawned event, keep it there first. UseIsSelectionSceneActive() when you specifically need to know whether the player is still inside RCO’s selection/creation scene and should keep a UI hidden.
What not to do
Do not fix lifecycle issues by:- firing RSG/VORP loaded events a second time from your own script;
- triggering revive commands during character selection;
- forcing health/core values before the final ped/world is ready;
- retrying framework init events blindly after timeouts;
- treating the selection ped as the gameplay ped.

