Modifying a Delay runtime

I’ve ran into an issue that doesn’t really make much sense to me atm.

The blueprint shown is an example made for this question, in the form of a gun that should fire at a certain fire-rate and the longer the trigger is held, the higher the fire-rate gets.

For some reason the delay does nothing when giving it a variable float that is decreasing at tick.

I tried using a ‘set timer by function name’ but this too is not being run when given the variable float.

I’m currently unable to wrap my head around why this happens, i figured someone from a different perspective might be able to see why.


What event triggers this?

Ok then this explains everything, Delay is not a timer, Delay will delay all calls you make it does not reset or gate the calls, so your set up still runs on same frequency as tick just with delay. Use looped timer instead.

this is run from an event tick

I’m usually able to delay a tick signal using a delay even if the delay is set to something like 0.005.

The Sound Delay variable never varies beyond 0.05-2. If the delay was set to 0.05 it would still go through.

This one does not pass the delay node however when using a variable float plugged in

I hope this picture shows what i mean. The delay node is not counting at all, it stops the signal dead

I found the culprit.

For whatever reason the delay node refused to run if the float was not clamped. The float variable couldn’t have been able to go below or above 0.05-2 anyway, but clamping the value to force it not to be able made the delay node run as expected.