Wait for main setup start to finish running before running others

The situation: I am loading some text files/XML and have to use a coroutine. However, when the coroutine is started, other components have their start() ran.

As such, other components have their start() ran before the XML files have been loaded and processed. Is there anyway to made all components wait for the XML to finish loading first?

Script execution order doesn’t work here - I can have the file loading component o run first, but once it hits a co-routine, other components will have their start() invoked, and I cannot load the XML files in Awake() because Awake() doesn’t support co-routines.

You can have a boolean value in your XML loader. All other components will check this value and wait until it is true.

Or you can wait for completion before instantiating other game objects.