# How can I properly override C++ Tick event in blueprint?

**URL:** <https://forums.unrealengine.com/t/how-can-i-properly-override-c-tick-event-in-blueprint/298200>\
**Category:** Programming & Scripting\
**Tags:** unreal-engine\
**Created:** [November 5, 2014, 6:01am UTC](https://forums.unrealengine.com/t/how-can-i-properly-override-c-tick-event-in-blueprint/298200 "2014-11-05T06:01:30Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![nopunintendo](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@nopunintendo](https://forums.unrealengine.com/u/nopunintendo)\
**Post date:** [November 5, 2014, 6:01am UTC](https://forums.unrealengine.com/t/how-can-i-properly-override-c-tick-event-in-blueprint/298200/1 "2014-11-05T06:01:30Z")

</div>

I’ve created a character in C++ inheriting from ACharacter, and I’ve overridden the virtual Tick function.

```
virtual void Tick(float DeltaSeconds) override;

```

I then created a blueprint inheriting from my character class, and in the event graph created an “Event Tick” node which is connected to a “Parent: Tick” node created by right clicking on the event.

However, the Event Tick node won’t execute (wire turns gray during play).

I’ve tried using the macro UFUNCTION(BlueprintImplementableEvent), but with the same result.

Commenting out the C++ Tick function makes the blueprint Event Tick node work again.

I’ve read that it may have to do with the fact that Tick doesn’t return anything, in which case, how can I properly override a void function in blueprint?

Thanks!

---

<div class="post-metadata">

**Author:** ![nopunintendo](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@nopunintendo](https://forums.unrealengine.com/u/nopunintendo)\
**Post date:** [November 5, 2014, 8:16am UTC](https://forums.unrealengine.com/t/how-can-i-properly-override-c-tick-event-in-blueprint/298200/2 "2014-11-05T08:16:31Z")

</div>

I discovered a workaround.

I gave the blueprint the Tick function, and had a C++ function acting as Tick be UFUNCTION(BlueprintCallable), and then I called it in the blueprint tick.

---

<div class="post-metadata">

**Author:** ![ProWakizashi](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@ProWakizashi](https://forums.unrealengine.com/u/ProWakizashi)\
**Post date:** [January 4, 2017, 2:43pm UTC](https://forums.unrealengine.com/t/how-can-i-properly-override-c-tick-event-in-blueprint/298200/3 "2017-01-04T14:43:49Z")

</div>

You probably forgot to call `Super::Tick(DeltaSeconds)` in your parent (c++) class from your overriding Tick method.
