Child blueprint doesn't call parent event

I’m experiencing some odd behavior. I have a blueprint that’s derived from another blueprint. The parent defines a Box Collider and handles its OnComponentBeginOverlap event which fires for instances of the parent, but not for instances of the child.

The child doesn’t handle the event as well. In fact it can’t. I tried adding an event handler for the child, and the compiler tells me that it has already found a function with that name (which makes sense), and the option to “Add Call To Parent Function” is grayed out.

It seems I’m in some sort of limbo between the event handler being inherited and not. Can anyone offer any advice on how to correct this?

Thank you.

Make a backup of your project then:

  • try reparenting your child actor to Actor and then back to the Class your initially wanted it to be the child of
  • OnOverlap on the parent, call a function named “OverlapMe”, that function prints a string “Parent”, then override the “OverlapMe” function on the ChildClass and make it print “Child”, see what happens
  • check the collision settings of your child class, it might be different from the parent
  • check the collision size, it might be different and therefore mislead our bug processing

Thank you for the suggestions. I tried each one of these to no avail. It’s like the event is referencing an earlier snapshot of the blueprint, and no changes impact it. The only change that I can make is severing the event handler, in which case nothing happens, but when I hook the functionality back up, it’s the old, unchangeable version.

Hey man I know this is like 6 years old but I too had a problem with Child BPs not properly inheriting their Parent’s functionality. Specifically with OnComponentBeginOverlap. This may not be the solution to your question, but its helped me just now and perhaps can help anyone googling this and feeling infinite frustration.

I made a Child actor that was supposed to activate functionality whenever the player overlapped its inherited Box Collision, only nothing ever fired. Turns out I kept starting my player within the Box Collision, so nothing ever fired off, giving off the illusion it didn’t inherit its Parent’s Functionality. I reduced the Child’s Box Collision and my player was able to enter (overlap) it, firing off the inherited code perfectly. Like I said, might not be the solution to your problem but could be someone else’s down the line. Just make sure your player loads in OUTSIDE of any box collisions before looking for alternate solutions or giving up on code completely. :cowboy_hat_face: