How to Make a Health System in UE5 Blueprints
Every action game needs one, and it’s the classic first Blueprint: a float that goes down when things hurt you, clamps at zero, and tells the rest of the game when you die. The design decisions are where damage comes in and who gets told about death.
What it’s made of
Variables
Health and MaxHealth as floats (100/100 is the convention), optionally a RegenRate float and a bIsDead bool so death logic can’t fire twice.
Events
Event AnyDamage is the engine’s built-in entry point — anything calling Apply Damage on the actor lands here with the amount. Add a custom Heal event and an OnDeath Event Dispatcher so UI, game mode and enemies can all react without hard references.
The logic
On AnyDamage: subtract the amount, Clamp between 0 and MaxHealth, update the health bar, then Branch on Health <= 0 — if true and not already dead, set bIsDead and call the OnDeath dispatcher. Regeneration is a looping Timer that adds RegenRate × interval while below max (and stops while dead).
Key nodes you’ll wire
The mistake that breaks it
Skipping the Clamp and the bIsDead guard: health drifts negative, and OnDeath fires once per hit on a corpse — every downstream system runs its death logic repeatedly.
New to how Blueprint systems fit together? Read the anatomy of a Blueprint system first.
Or skip the wiring — generate it
BlueprintStudio builds this system from a plain-language prompt — the right nodes, exec and data pins wired, defaults set, and the graph compiled to catch errors — then applies it into your open UE5 editor. The prompt is prefilled:
Build “Health System” in BlueprintStudioPrompt variations to try
Applying into your editor happens through the free Cosindra desktop app (Windows & macOS).