Skip to content

Gameplay Tags: State and event routing (Blueprint) โ€‹

What/Why: Use tags as a shared language for state, queries, gating, and lightweight events.

Prereqs

  • Gameplay Tags plugin enabled; define your tag list in Project Settings

Steps

  1. Scheme
  • Use namespaces: State.*, Ability.*, UI.*, Cooldown.*, Interact.*
  1. Adding/removing
  • On Pawn/Subsystem, add/remove tags via Add Loose Gameplay Tag and Remove
  • For scoped tags, add on enter; remove on exit (timers or events)
  1. Queries
  • Has Tag, Has Any, Has All for gating input/abilities
  • Switch on Tag for simple state machines
  1. Events
  • Treat add/remove as one-frame events (set then clear) to broadcast
  • Use with MVVM to toggle UI visibility

Data

  • Store tag lists in DataAssets for loadouts, UI states, interactions

Networking

  • Replicate tag containers for Pawns; avoid spamming add/remove

Performance

  • Prefer Has Tag checks over booleans spread across Blueprints

Testing

  • Add/remove sequences update UI and block abilities as expected

Suggested prompts โ€‹

  • โ€œDesign a tag scheme for my game and show where each tag is set/cleared.โ€
  • โ€œConvert boolean flags to tags and update checks in Blueprints.โ€
  • โ€œShow how to use tag adds/removes as one-frame events.โ€

Prompts for this example

  • โ€œWrite nodes to toggle UI.HUD.Visible with a tag and bind the result to widget visibility.โ€
  • โ€œProvide a Switch-on-GameplayTag flow for a simple State machine.โ€

โš™๏ธ Core Systems

4 of 7 completed