-
Notifications
You must be signed in to change notification settings - Fork 13
Setup Action RPG
Important
For demonstrating ProcHitReact implementation for a Non-Unreal Skeleton
And for adding flavour to existing hit react animations
Warning
You do not need ActionRPG, you should use this as reference only
Updating ActionRPG to UE5.3 is not covered
This guide may help you
Note
This guide assumes you have installed the HitReact plugin to ActionRPG and enabled it before starting
Create a new Data Asset from UHitReactProfile and call it HRP_EnemyCharacter.
To make it very noticeable, set BlendHoldTime to 0.3 and MaxBlendWeight to 1.0. Save the new profile.
Open Content/Blueprints/BP_EnemyCharacter and add a HitReact component.
Select the new HitReact component and add HRP_EnemyCharacter to the AvailableProfiles array.
Simulating root never makes sense, and simulating the pelvis means every single body gets simulated which is rarely what we want. Clear the existing BlacklistedBones array and add b_MF_Root and b_MF_Pelvis to this array.
Tip
If you attempt to simulate the pelvis, it will simulate the closest spine bone instead
It does not fail to apply a hit react just because its blacklisted!
Tip
The enemies have hit react animations already. We can still leverage ProcHitReact to add flavour.
Open Content/Blueprints/NPC/NPC_GoblinBP and find the Event On Damaged. We can reuse a lot of this for HitReact
After the Set Actor Rotation node, call HitReact() on the HitReact component.
We are going to apply a radial impulse slightly in front of the character's chest, to push it's body back.

And now if we PIE, we can see the extra effect of the impulse.
Important
The physics asset is very stiff so results are not pronounced
Recommend editing Content/Enemy/Enemy_Gruntling_Guardian/Enemy_Gruntling_Guardian_PhysicsAsset
Note
This project is VFX heavy with camera shake, so the result can be hard to see
Tip
We could connect the Impulse Scalar with a normalized damage amount, or force applied if that exists in our game, but it doesn't here