Tick function not firing

I’m not sure why my tick function isn’t firing. I have start with tick enabled set to true, bCanAlwaysTick in parent C++ class set to true, set tick to true in the construction script, and yet the tick function won’t fire.

I’m not sure what I would have accidentally unchecked, and I couldn’t find anything similar.

Hey Wooohooo-

Does the print string fire if you connect it directly o the Tick event? If you create a new actor and set its Tick event does it function properly? Are you able to reproduce the issue in a new empty project?

The print string does not fire even when directly connected. I created a new actor and its tick function fired properly, as do all my other blueprints. I’ve haven’t attempted to recreate the problem yet, but this blueprint was reparented from a blueprint to a C++ class, if that helps.

Hey Wooohooo-

This seems to be an issue with character blueprints. I was not able to get my character’s tick to not function however I did see the reverse behavior (that my character was triggering tick when he was set not to). This has been bugged (UE-18140) for investigation. As a workaround you should be able to use a “Set Actor Tick Enabled” node and set it to true on Event BeginPlay. This will cause the character to start ticking at the start of the game.

Cheers

Sorry for the late reply, I haven’t been able to get on UE4 for the last few days. I was unable to reproduce the bug on a blank project, and setting Actor Tick Enabled to true in both the construction script and event BeginPlay did not seem to work.

As a last resort I deleted the character asset, created a new one parented from the same C++ class, copied all the code over, fixed the references, and it still does not work. Do you have any suggestions for a further workaround?

What does your C++ class look like? Did you override tick in the C++ class?

The C++ class overrides tick in its parent class

http://i.imgur.com/IFQWMw9.png?1

Which in turn overrides tick in the ACharacter class

http://i.imgur.com/IELwNXv.png?1

From what I understand the Blueprint should automatically override its parent’s class, so I don’t know why it’s not firing.

Are you calling Super::Tick(DeltaSeconds) in your C++ function?

2 Likes

I did not call it in there, but calling it seemingly has fixed my problem, thank you. If it’s not too much could I get an explanation of why calling the parent class fixed the child class?

Encountered the same problem (Tick not firing), the node Set Actor Tick Enabled resolved it, using 4.13.2

Experienced similar issue. BP tick didn’t work, but C++ was working. Forgot about super::Tick. Thanks man