RequireComponent script order

does the RequireComponent metatag assure that the Required Component starts before the Requiring Component?

I don’t think RequireComponent will change anything to the calls order. It’s a little confuse in the doc, but I guess Starts are called randomly on every enabled components. If you have any object that MUST be initialized before others, use Awake. Keep in mind that awake is called even for disabled components.

There is no way to define the order of components execution in an object’s list. i think they will be executed in the order that they are added in inspector and requireComponents will be executed one by one and at the end of the chain your script will be added. the only way to test it for script components is to have a static variable that you increment on start and print it’s value with the current component’s name. for none script components, it’s not possible to test. maybe unity first starts all of them and then monoBehavriours.

You can not test weather none script components are initialized before scripts or not. Even none script components might be different based on their parent class. some of them are behaviours and some of them are not and …