'Clear Timer' doesn't stop the timer

As the title says. The following level blueprint starts the timer and it increases the number. It then arrives at the ‘Clear Timer’ when the number is 10 or above but the node doesn’t actually do anything.

There is a “Pause Timer” that might do something, but I would recommend using Set Timer Delegate instead of Set Timer in this situation. I use this setup all the time without issue.

Thank you for your fast response. I tried your setup as seen below (at least that’s how I understood it) but it still doesn’t stop. It keeps printing ‘STOP’.

Try doing the same without delegate timers as i’m not sure you can even operate delegate timer same as function name timer

Same result.

Looks more and more like it could be a bug then I guess. I am using Preview 7. But it feels like a pretty huge one to not being able to stop timers :slight_smile:

That’s pretty weird because I use timers that way everywhere in my game and they start/stop correctly… I’m still on 4.6.1, hopefully they didn’t break in 4.7 or something.

For example this code below works fine. The “Continuous LOS Check” event stops firing when I execute the Set Timer Delegate node on the right.

Maybe try to delete and re-create the custom event with a different name.

Just tested identical blueprints in fresh projects on 4.6.1 and Preview 7 and the problem is only on Preview 7.

Specifically the Clear Timer node, or the Set Timer Delegates one too? Because if the delegates are broken then I need to enter a bug report since it will screw my project over pretty bad.

Problem with Set Timer Delegate too.

Also tested Pause Timer on both engine versions and it didn’t work on either. Is something wrong with my installations or do you also have that problem?

Hey looper-

Thank you for the report. I was able to reproduce the behavior you mentioned and have logged the Clear Timer bug into our internal tracking database (UE-9932).

Cheers

I’ve never used Pause Timer.

I’ll try the timer delegates tonight on 4.7.7 at home and enter a bug if it also happens to me.

Can you also check if you can reproduce the Set Timer Delegates not working (as in the screenshot below) on 4.7.7?

I do not have access to 4.7.7 at this moment (only later tonight), but looper mentioned that Set Timer Delegate no longer worked in 4.7.7 so I was just wondering if you had seen the same problem, because that will be a pretty big problem for me if its true :stuck_out_tongue:

I was able to reproduce the issue as looper posted originally, have you noticed an issue with Set Timer Delegate in 4.7 as well?

I have the same issue in a 4.8 promoted build. I’ve been using macros to fill the void.

It seems like you are only unable to stop a timer from within the timer. If you do start timer → delay 1 second → stop timer it will work. Unfortunately stopping a timer from within itself is pretty critical…

I agree this looks like a bug. I just upgraded a game with lots of functionality from 4.6.1 to 4.7 and now most is broken because I’m using timers a lot. Neither “set timer to 0.0 (by name or delegate)” nor “clear timer (by name or delegate)” seems to work for me.

I also agree that is looks like you can clear the timer from external execution paths but not from within an execution initiated by the timer event / delegate (as stated by @greynz).

I’ll have to wait with the upgrade to 4.7 until this is fixed because it’s too much work changing all the timers everywhere.

Also, I haven’t used the boolean functions “Timer exists” or “Timer active” much, but these just say “not within scope” when I run them. I might just be using them wrong though.