Focused reference · Unreal Engine 5.8

System selector

unreal-blueprint-architecture/references/system-selector.md

Choose by ownership and lifetime before convenience.

NeedUseAvoid when
Placed/spawned world entity with transform, collision, replication, or independent lifetimeActorIt is only a reusable capability of another Actor
Reusable capability attached to actorsActor ComponentIt needs its own transform; use Scene Component or Actor as appropriate
Reusable transform-bearing subobjectScene ComponentIt must exist independently or replicate as an Actor
Service lasting for one engine processEngine SubsystemState should reset per game instance/world/player
Service lasting across map travel in one game instanceGameInstance SubsystemData is world-specific or per local player
Service scoped to one WorldWorld SubsystemIt must survive world replacement
Service scoped to one local humanLocalPlayer SubsystemState is shared by all local players
Immutable authored definitionData AssetThe value mutates during play
Rich definition needing Asset Manager identity/load controlPrimary Data AssetNormal direct loading is sufficient
Stateless reusable operationBlueprint Function LibraryThe function needs state, lifecycle, authority, or polymorphism
Shared behavior contract across unrelated object typesBlueprint InterfaceThe caller has no target reference

Placement procedure

  1. Name the state owner.
  2. Name the destruction/reset event: component removal, actor destroy, pawn respawn, world teardown, map travel, local player removal, or process exit.
  3. Choose the class whose lifetime matches that reset event.
  4. Decide whether the state is authoritative, predicted, cosmetic, saveable, or authored.
  5. Keep authored definitions in assets and mutable instances in runtime objects.

Blueprint versus C++

Prefer C++ for stable shared contracts, custom replication, high-frequency loops, complex math, low-level engine integration, and code that many binary Blueprints would otherwise duplicate. Prefer Blueprint for content assembly, presentation, designer-facing variation, and event-driven orchestration. Profile before converting solely for speed.