I want to control the order of initialization of my extensions manually. So far my only idea is to disable the bases they belong to and then re-enable them one by one, which I think is not the cleanest and bug-free way of doing it. Another way would be to keep __ init __ method empty, but I don’t want to do it because it would mean I would have to create method with same idea behind it but different name like myInit or something Maybe there are other ways?
I think a second init type method is probably the cleanest. Maybe calling it “Setup” would feel better, haha. You could keep whatever timing dependent stuff you needed in that function. I assume that not everything needs to be there… for example I imagine you can set self.ownerComp in init
Disabling bases sounds dangerous.
One other thing you could try is filling the extension parameter when you want to initialize the extension. Obviously a bit weird, but better than disabling.
1 Like
I second Ivan’s opinion, that’s also how I do this in my projects.
Disabling/enabling cooking of COMPs during runtime could lead to cooking ripples in your network which could very well mean stuttering and freezes, and I would def not recommend that approach.