Edit: It looks like the Start() Awake() issue reported was caused by an editor refresh issue where it lost the reference to a script due to renaming but did not report the error until it was shutdown and reloaded. I'll update the bug accordingly. I also want to raise a long standing issue with Startup order in general: Start() being called latently in projects under high load. Having just shipped http://bowtoblood.com/index.html for the PSVR in order to run at framerate we had to instantiate all objects that would be used at scene start. We ran into an issue where if we instantiated objects and then disabled them Start would not be called on all objects (It seams unity only calls start on a set number of objects per frame), thus we had to create systems to track when Start was called on all objects() before allowing the game to proceed. Start order should be 100% deterministic in Unity.