Steps to reproduce:
- Create a new Third Person BP project.
- In ThirdPersonJump_Loop asset, create and place a new notify called "MyNotify". Turn on the "EnableRootMotion" checkbox.
- In ThirdPersonAnim_BP Anim Graph, add a Slot 'DefaultSlot' node and connect it between Default and Final Animation Pose. In the Event Graph, add an AnimNotify_MyNotify event and connect a Print String "Hello" node to it.
- In Project Settings -> Input, create a new Action Mapping called "MyAction" and bind it to the "M" key on the keyboard.
- In ThirdPersonCharacter blueprint, create a custom event called "MulticastMyAction" and set it as Multicast and Reliable. Create and connect a "Play Slot Animation as Dynamic Montage" node and set the asset to "ThirdPersonJump_Loop" and the slot to "DefaultSlot".
- Create a custom event called "ServerMyAction" and set it to Run On Server and Reliable. Call "MulticastMyAction" here.
- Create an action event node for the Input Action "MyAction" and call "ServerMyAction" here.
- Change the number of players to 2 and start Play In Editor.
- On the Client1 window, press the "M" key on the keyboard repeatedly.
- Confirm the text that appears on screen sometimes shows 2 lines of "Hello" from both Client1 and Server, but other times it frequently only shows 1 line of "Hello" from Client1 with nothing from the Server.
Above steps confirmed in a fresh project with UE4.18.3 but also happens in UE4.22 in our game. I can provide the above test project if needed.
This is the same issue mentioned here: https://answers.unrealengine.com/questions/810120/animnotify-inconsistently-doesnt-trigger-when-the.html