Is my bound event supposed to fire every tick?

Hi, I have bound an event to fire when MoveFWD input event fires. Here I bind it in the pawn, with an output string that fires when the event is called from the player controller:

And here is the call event flow in the controller:
MoveFWDEventCallFlow.jpg

The question I have is why is the output string firing every frame? Shouldn’t it only be firing on MoveFWD input?

Thanks!

Events for input axis bindings will fire continuously, yes. I think one of the reasons for that behavior was that, if it stopped firing when the axis value was 0 (i.e. no input happening), anything in your Blueprint that’s reading that value would never get notified that it hit 0. So, for instance, your print string there would never be able to tell you when the axis value was 0 - it’d just give you the last value it was at before the event stopped firing.

Ohhh that is actually fantastic, I was killing myself trying to find a way to get the 0 value so I’d know when there was a possible release (or cancelling inputs = 0).

Thank you so much, huge insight.