
In Flow Core, Game Object Guid serves to turn a scene object into a stable identity entity—one that can be referenced reliably, restored through persistence, and re-resolved across runtime sessions.
Its purpose is not to drive Graph execution directly, but to ensure that object references, state persistence, prefab restoration, and process-owner identification do not rely on fragile transient object pointers.
1. Giving each GameObject a unique, persistent, and searchable identity
The Game Object Guid component stores a guid. During runtime, Awake() ensures that this GUID exists and registers it with the global Game Object Registry. After that, the system can quickly locate the corresponding object through its GUID.
2. Supporting stable reference resolution instead of relying only on scene object pointers
Game Object Reference does not store a direct object reference. Instead, it stores identity information such as the GUID, Prefab GUID, and Prefab Path. During resolution, the system first checks the registry. If the object cannot be found there, it falls back to a search. If the target is a runtime instance, it can even be re-instantiated from prefab information and assigned the same runtime GUID again.
3. Supporting Save/Load and prefab lifecycle restoration
The lifecycle of prefab instances is tracked through the Game Object Guid. Before saving, Flow Core also provides FlowCore.ScanGameObjectGuids() to force registration of all GUIDs in the current scene, which helps prevent objects from being missed during persistence.
4. Providing a stable identity for Flow Core Process itself
Flow Core Process is required to have a Game Object Guid, and its initialization ensures that the GUID exists. This allows the process itself to be identified accurately during persistence and restoration, preventing snapshots from being applied to the wrong object.
5. Contributing to context semantics, not just persistence
FlowContext.Parent and FlowContext.ParentTransform do not simply return transform.parent. Instead, they search upward for the nearest parent object that has a Game Object Guid. In other words, within Flow Core, objects with GUIDs are also treated as stable context boundaries.**
6. Tagging System
Game Object Guid Tags can be understood as a lightweight semantic tagging layer in Flow Core, built on top of stable GUID-based objects to support gameplay-oriented grouping, querying, and filtering.