ApplyDamage not firing EventAnyDamage

Here are the steps to re-create this issue. Perhaps an Epic staff member can tell me what I’m doing wrong…

  1. Create a new project using the First Person template.
  2. In the “MyProjectile” Blueprint, add an ApplyDamage node between the AddImpulseAtLocation and DestroyActor. Wire the “Other” from EventHit to “DamagedActor” in ApplyDamage. Set the “Damage” value to 10 (for example). Compile & Save.
  3. Right-Click on any cube in the level and select “Find in Content Browser” - this will find “Template Cube_Rounded”. Right-Click on this and select “Asset Actions → Create Blueprint using this” I’ll name the blueprint “BP_Cube”
  4. In the Event Graph for this new blueprint, add an EventAnyDamage node. Pull off the execution pin and add a Print String node. Compile & Save.

Now add some instances of your new “BP_Cube,” (it will be dark-grey instead of white) and press Play. The new grey cubes should print your string message every time they are hit by a projectile – but they do not – no message are printed.

I don’t get it. The cubes’ parent class is Actor. The “Other” pin from the OnEventHit is Actor, and the DamagedActor pin expects a type Actor. This should work, but it’s not.

I’ve even tried adding the GetInstigatorController to the “Event Instigator” and adding a reference to Self to the “Damage Causer” and setting the “Damage Type” to “DamageType” in the ApplyDamage node (even though they all seem optional). But still it doesn’t work.

Come on Epic, what’s going on?

Is there some sort of special requirement to use the ApplyDamage and EventAnyDamage nodes?