How do I return damage from Apply Damage?

Event Any Damage is how you “return damage” which like you said is how it gets caught, when an actor takes damage.

That return value on Apply Damage can be used for various things though (continue using Event Any Damage for its intended use). Like, if you wanted to keep track of all the damage that this particular actor caused in the game, you could continue adding this to some stored value each time it occurs.

You say that “return that value right there would probably simplify things”, but I don’t understand how it would. Or rather, what would YOUR usecase would be?

How do I report back to this node?

It clearly has return value that is supposed to be the damage actually taken but, as far as I know that damage is caught by Event AnyDamage, and from events you cannot(?) have return values.

Just to be clear, I am not interested in workarounds, I have my own, just curious how this is supposed to work as return that value right there would probably simplify couple things.

I am sorry I do not think you got the question. The node I linked has a return value, how do I specify the value that is returned to the linked node? For example after armor reduction and stuff like that.

The return value in ApplyDamage is calculated by the TakeDamage function in the Actor class.
The TakeDamage function does not seem to be overridable through blueprints so you would have to override TakeDamage in a c++ class and do your damage calculations inside the TakeDamage function if you want the return value to match the actual modified damage value.

You could create a new blueprint overridable function that calculates the damage and then call that function from the TakeDamage function.
That way you could have different damage calculations for different actors.