How to assign scene component to variable in editor?

I’m trying to define some spawn points for various AI actors to come in and populate my scene. The space the AI is spawning in is a Blueprint deriving from Static Mesh Actor that defines the “building”, with child static mesh components for all the props within the building (lights, chairs, etc.).

The building will be procedurally placed at runtime, and the goal is to have AI that “fit” the building wandering around nearby. For example, a landfill will have garbage trucks and garbage workers, a newspaper office will have an editor running around yelling at journalists, and an army base would have guards and soldiers on patrol.

I have an ActorComponent that is serving as a sort of “metadata” component regarding what AI will spawn inside the building, and I’ve been defining what “types” of AI to spawn via an array of structs containing essential information about the AI (the Behavior Tree to use, the class of AIController to spawn, etc.).

However, while I can select stuff from the Content Browser to populate this struct, I can’t select anything that is parented to my Blueprint. My goal is to have predefined SceneComponents that will serve as spawn points for the AI, which would allow AI to be spawned in the same place relative to the building no matter where the building winds up being placed in the world. As it stands, however, I can’t specify any kind of value for that field from the editor itself.

I’ve been doing it “manually” by giving each struct a spawn point from the Blueprint’s constructor, but this is less than ideal since it adds an extra step that doesn’t need to be there. Is this the only way to handle it, or is there a way to assign child components of a Blueprint to variables in the editor?

I’m having the same issue in 4.11.2. I can’t assign anything to the component reference variable in the details panel. The drop down list doesn’t detect any component instances in the level or on the same actor; and it only appears to be looking for component instances in the content library which doesn’t make a lot of sense given their ‘always-instanced’ nature. Is this a bug or working as intended?

Same issue! Any solutions??

What’s the problem with pre-made root billboard for example? If you are confused with that, make sure you read this properly:

135849-2222.png

In Jay’s example he is not adding components dynamically. The child components already exist and the issue is that the variable in the editor does not allow assigning pre-existing child components. Imagine you have an artist who wants to place a component in the scene manually - how do you assign that component that they placed to a variable in the editor?

you cant assign a actor to a variable unless the actor is within the level. this is done for several reasons: imagine you decide to change the actor thats referenced that would break the system, or if you try to assign a value in a blueprint but there isnt a actor that exists. what people here want and are trying to do would never work and would cause way more issues. the best thing to do in this case it to set an editable variable or create a reference in the level bp to the actor and set it on spawn.