Workaround request: Modifying nested child actor variables from parent actors in editor

Hi Team,

After much research and desk-head-banging our team has come to the conclusion you cannot (due to the dynamic nature of child actor components) modify nested actor blueprint variables through the details view. We are looking for a workaround as our project strongly requires a nested solution.

We are attempting to create buildings out of blueprinted parts, which themselves need to be blueprints. Sections of the buildings are constructed using blueprints with controls for materials, meshes etc (a few are sourced from the unreal marketplace) i.e tileable building blocks. We need to create these in-editor (i.e not dynamically) and want to maintain their blueprint links in case of future modifications of the building parts.

Now the annoying part is (As you may know), in the blueprint editor we completely lose child blueprint variable control if we drag in these blueprint building parts. This means the part blueprints are basically useless as we’re stuck with their default variable values and thus default appearances. Alternatively from the level editor, placing, modifying and then converting our building section blueprints into a single complete building blueprint sort-of works. This has the odd and incredibly annoying effect of converting the selection to the blueprint, and all child blueprints to static meshes, meaning we again lose blueprint control and can no longer modify the existing elements of the blueprint.

So we either have to manually create our buildings with the meshes from the section blueprints and lose all of the functionality we have built into their blueprints (!?), or fight the level editor to blueprint conversion. This entails creating, duplicating and converting every building formation we wish to use, then losing all the blueprint functionality anyway.

Are we missing something?

Interestingly UMG does not suffer from this problem as it provides child variables without issue in a relatively similar structure.


Feature request for this exactly functionality (Not in 4.10): (Feature request) Change child actors variables within blueprints - UE4 AnswerHub
Post with similar issue:
Shocking workaround with structs (!?): Edit nested object variables on Actor? - UE4 AnswerHub
Recent request for functionality: How to access exposed variables of a child actor component via the details panel? - UE4 AnswerHub

I wouldn’t necessarily say that’s a fair comparison, as without this feature in UMG, Epic would be getting daily complaints (from myself, as well as others), though this definitely would be a nice thing to have.

True, and I do understand how drastic the difference is between Slate/UMG and the actor system. It is just disappointing UMG & Slate are wonderfully modular while actor blueprints are not.

No, it doesn’t seem like you’re missing something. As came out in that thread of mine, Child Actor Components aren’t the amazing modular blueprint system that everyone hoped they were. They’re just an alternative to “Spawn Actor From Class” that’s better in some circumstances. There doesn’t seem to be a way to do nested, modular blueprints out of the box. You could do whatever you want on begin-play, but that doesn’t let you continuously see what you’re building.

Can you give a specific (but reasonably simple) example of when you’d want to change the variable defaults of a child actor? I’m still not 100.00% convinced that this sort of thing isn’t doable with blueprints, but my project isn’t far enough to need it and it’s hard to think over without specific functionality in mind.

+1 this feature!!!

Child Actor with a Default section with parent parameters!!! and if parent have a Editable parameters expose this in the child blueprint, to get the same control inside of any blueprint, not only in the editor! When we make mobile games, with sub maps, or dynamic maps (like endless run games) we work with blueprints like a maps, and with this feature we can add easily features with others blueprints! like a collisions and camera transitions!.
Actually we lost control calling a child actor, only we can use like a static…