Child Actor blueprint Component not working correctly

Hey all,

I’m making a dungeon crawler that randomly generates maps by spawning pre-built chunks. The chunks are one big blueprint which contains the geometry and other blueprints such as torches on the walls and enemies.

The problem I’m having is that enemies don’t seem to work correctly if they are spawned as child actor components inside another blueprint. If i drag them into the level they work fine (they use a controller and behavior tree) but since the blueprints they are inside of are spawned dynamically I assumed they mustn’t be getting their controller so I added an [event begin play] → [spawn default controller] inside the enemy but that didn’t seem to activate his AI.

The next thing I tried was replacing the child actor blueprints inside the chunk with a blueprint that instead spawned the enemy at [event begin play] but these simple blueprints didn’t seem to work either. If i dragged them into the level they correctly spawned an enemy but if they are a child actor inside another blueprint they seem to lose the ability to spawn (even though the node is definitely being hit since I tested by having it print screen when it got past it).

Does anyone have any ideas on how I can get my blueprints working right inside other blueprints? Thanks!

I just did some more testing on this and I’m not sure but I think this might be a bug. If i use event begin play the spawn actor does nothing but if I use event tick + do once the spawn actor node works.

So the custom event being triggered from outside the blueprint spawns the actor and prints hello. the event tick + do once spawns the actor and prints hello but the event begin play only prints hello. any ideas?

I had a similar issue here, so I’m going to file this as a bug. In the meantime, try adding a Delay after BeginPlay and it should work. Something super short like 0.005 should make the Spawn work and be short enough to appear instantaneous.