How to use "Event Dispatcher" in Parent/Child related blueprints?

Hello,

I have just started using event dispatchers in UE4, and carefully studied the Child Blueprints tutorial here: https://docs.unrealengine.com/latest/INT/Resources/ContentExamples/Blueprints_Advanced/2_5/index.html

Unfortunately, I can not make it work in the simple example that I’ve implemented below :frowning:

I have two blueprints:

  • BP_DoorTrigger_Parent - (PARENT)
  • BP_DoorTrigger_Child_Crane - (CHILD)

Parent BP has the following component list, plus a very simple blueprint. When the player overlaps the trigger volume, Parent BP displays a message.

Child BP is also very simple.

It catches Parent BP’s BeginOverlap event, and then prints something else.

What is the expected output, when I place a Child BP into the scene and my character overlaps it again and again? Each overlap should be generating a “Parent String” first, and then a “Child String”, right?

Output on BeginOverlap #1:

  • Parent String, Child String

Output on BeginOverlap #2:

  • Parent String, Child String

Output on BeginOverlap #3:

  • Parent String, Child String

Well, something strange happens in my case!

During the first overlap event, only “Parent String” is displayed, no “Child String”. During and after the second overlaps, both strings get displayed as expected. Here is the output:

Output on BeginOverlap #1:

  • Parent String - (missing Child String here!)

Output on BeginOverlap #2:

  • Parent String, Child String

Output on BeginOverlap #3:

  • Parent String, Child String

Question: Results above indicate that Child BP’s binded event is not called during the first overlap. Why?

Kind Regards,

OK, I got it.

I thought I should be binding Child BP’s event during BeginOverlap event… My mistake!

Binding the event just for once during BeginPlay is enough. Once binded, it is automatically called on each overlap.

Here is the fixed Child BP: