#FAQ
#What is the difference between Unity Tags and Gameplay Tags?
Unity Tags are a built-in Unity feature where each GameObject has one tag from a flat list.
Gameplay Tags are a gameplay-focused system where objects and containers can have multiple hierarchical tags.
Use Unity Tags when a Unity workflow or third-party asset expects them. Use Gameplay Tags for gameplay logic, Game Creator Actions and Conditions, states, factions, damage types, quests, interactions, and other design categories.
#Why not just use booleans?
Booleans are fine for small, isolated logic. They become messy when many systems need the same state.
Instead of several unrelated values:
IsStunned
IsBurning
IsEnemy
IsInteractable
you can use shared tags:
Character.State.Stunned
Character.State.Burning
Faction.Enemy
Interaction.Usable
Tags are easier to search, organize, reuse, and query across Game Creator workflows.
#What are Gameplay Tag Reactions?
Gameplay Tag Reactions allow visual scripting logic to execute automatically when GameObjects with matching tags are created, enabled/instantiated, disabled/pooled, destroyed, or when their active tags change.
Instead of writing per-frame polling loops or singleton manager scripts, you configure a GameplayTagReaction component or use native Trigger lifecycle events.
#How do Reactions handle Object Pooling?
GameplayTagComponent registers with the active component registry when enabled and unregisters when disabled:
- When an object is instantiated or pulled from a pool $\rightarrow$
Tagged Game Object Enabledfires. - When an object is disabled or returned to a pool $\rightarrow$
Tagged Game Object Disabledfires.
No scene scans or per-frame queries are needed.
#Why should I use "Next Frame" delay on Character spawns?
Game Creator Character prefabs, ragdolls, and animator controllers initialize over their first frame. Setting Timing / Delay to Next Frame ensures that the spawned character is fully initialized before your instructions run against Target.
#How does Cross-Scene Persistence prevent duplicate managers?
When Persist Across Scenes is enabled, the Reaction GameObject is marked with DontDestroyOnLoad. If the player reloads the scene containing that same Reaction, the system detects the existing instance via its stable persistent ID, keeps the existing instance, and deterministically destroys the incoming duplicate.
#Do Scene View Debug Gizmos impact build performance?
No. All Scene View debug badges and runtime overlay utilities are conditionally compiled inside #if UNITY_EDITOR || DEVELOPMENT_BUILD blocks and completely stripped from release player builds.
#Can I rename tags safely?
The tag manager supports renaming tags and renaming subtrees. Rename and reparent preserve definition GUIDs and create redirects for moved paths, so old serialized paths resolve safely at runtime.
#Can I delete tags safely?
The tag manager supports deleting a selected tag and its descendants after confirmation. Delete removes tag definitions and descendants without creating redirects; existing serialized paths should be updated or backed up prior to deletion.
#Are Gameplay Tags fast?
Tag checks are lightweight and non-allocating. Active components are tracked in indexed sets, allowing instant event dispatch without scanning all scene objects.
#Can tags be added at runtime?
Yes. Tags can be added, removed, cleared, and set at runtime through Game Creator Actions or C#.
component.AddTag(GameplayTag.FromPath("Character.State.Stunned"));
component.RemoveTag(GameplayTag.FromPath("Character.State.Stunned"));
#Should tags store numbers or values?
No. Gameplay Tags should describe identity, category, capability, or state. Use variables or properties for numbers, timers, and quantities.