Anim notify Events not firing when animation is played from BTT Play Animation


Unreal4 anim notify “Events” seem to not trigger when I start the animation using unreal4’s Behavior Tree Task “Play Animation”.
Events do fire if I play the animation from within the AnimGraph (ie transition from a Run animation into the animation).

I’ve attached a print string in the AnimBP for debugging.

Anim notfies for “Play Sound” and “Particle” do work both cases.
So do Anim Notify States.
The animation is not being interrupted as the other notify types do fire.

Any ideas?


NOT the solution, but a work-around with the added bonus of working for networked projects *1.

*1 FYI: Behaviour Trees may be configured (by default) to only run on the Server and UE4’s PlayAnimation BTT (for some obscure reason) only plays the animation for the Server.

Youll need to make a few classes.

Make an inteface “IBTAnimationForwarder” with a method “PerformAnimation(Fname animName)”.
Make the AI controlled Pawn implement “IBTAnimationForwarder”.
Make a custom BTTask that takes an FName “animationName”.
Make BTTask cast owning Pawn to said interface and execute “PerformAnimation”.
(Only if in network game): Make receiving Pawn Srv then RPC that FName.
Switch on the FName and from there use ue4’s PlayAnimation or PlayMontage nodes on the desired mesh.