This was an interesting case for me to discover.
There seems to be some degree of inconsistency when loading a level Async via streaming with the ORDER in which objects are created (and more importantly, their construction scripts execute).
Sometimes, my level loads fine. Other times, support beams and crossbars extend out to infinity because the actors which generate them (using a trace in the construction script to find the nearest wall/floor) load BEFORE the level geometry itself. Sometimes an actor which runs a “get all actors of class” node in its construction script (to avoid the runtime cost of executing that command) will return an incomplete reference list because it was loaded before all actors of that class had been streamed in.
Is there a way, short of duplicating every actor’s construction script at its BeginPlay node, to force certain actors to wait until the level is fully loaded to execute their own construction scripts…? If not, there really should be.