Event Tick kinda stops executing, but also kinda doesn't.

I have a sequence of things that happen every frame, which work as intended for maybe 20 seconds before they start misbehaving.

Once they stop working, the event graph shows that there is no execution path pulse coming out of my Event Tick node, and yet the last two execution paths connected to my event tick node DO have execution path pulses coming out of them. See the attached image.

Anyone have any idea what would cause this, or how I should go about troubleshooting it?

Screenshot 2024-10-19 202641

This is kind of a difficult setup, difficult because all tasks executed by the sequence node are started again with any new frame - regardless if that tasks are completed or not. That means that completion time would built up over time.

Apart from the performance issue that this will eventually cause, you should try to avoid that the tasks are started again by the next frame, als long they are not completed.

Rather than doing condition checks in event tick, you should implement other options like event dispatcher when a certain status is changing.

Thanks. The conditions I am checking for are whether my line traces hit something, and I’m not sure how to go about doing that without executing the line traces every frame.

Well, I didn’t know that the sequence executes line traces. So tick itself is working, as the last pins are executed!?

What is the version of your Unreal editor?

I’m using 5.4.4.

The last two pins of the sequence node do appear to be executing just as indicated by the event graph, even though it doesn’t show any execution pulse coming out of the Event Tick node itself. The last pin seems to be working as intended.

The second to last pin updates the position of a SphereCollider component on my character, which my animation blueprint uses as the transform variable for an IK target. When it is working correctly, the position of the sphere collider is determined by whether the CheckForDeflection line trace hits a shield or anything else that should deflect it. Otherwise it is positioned according to player input.

When it stops working, the sphere collider just kind of twitches spastically, so it isn’t quite working as intended, but it does appear to have some kind of execution path going to it.

The line traces in the preceding pins CheckForSuccessfulAttack and CheckForDeflection do not seem to be executing at all once it stops working.

Can you help me understand what you meant about completion time building up over time? As long as the tasks aren’t using timelines or some other time based execution, shouldn’t all the tasks from the event tick be completed already before the start of the next frame?

You’re right - tasks like a line trace or changing a transform should be fine, as these are completed within a frame. So the issue might not be related to the sequence node or the executed tasks.

Could you print delta seconds to the screen to see if there are any irregularities in the tick interval? Do this before even setting the delta seconds variable.