You have to imagine that your blueprints are dumb, and they only know what you tell them, they can’t really figure things out on their own. So you have to be very specific.
I’m not sure how you have your blueprint setup to spawn a random amount of doors.
If you have a different room static mesh, for example room_01 has 1 door, and room_02 has 2 doors, then you can read the static mesh name from your actor BP, and spawn the doors based on that. Here is a simple example
This is the room blueprint
Here is the level blueprint to check for the name of the static mesh (you need to get the static mesh component first, and then check the actual static mesh assigned to it)
A better option is to have a variable setup in the Room BP, that defines the number of doors (I am guessing you are using a variable like this somehow)
Something like this
If you have this, the only thing you need to do after spawning is read this variable, and spawn the number of doors based on this.
You can either use boolean (good if you only have 2 options, ex 1 or 2 doors, 5 or 6 etc)
Best option is to use either a Select on INT node, or as I am using here a switch on int. This basically reads the value, and does an action based on what that value is.
So in this example if the number of doors is 1 it’s going to generate 1 door, if it’s 10, it’s going to generate 10…