Any words on this? (ignore the first part of that post)
Should we only play with DefSetStateEx in the clbkPreStep call?
Ok, the next update should remedy the problem of creating vessels during clbkPostStep. But even so, depending on how you initialise the state of the new vessel, you might find that clbkPreStep is the correct location.
clbkPreStep is called at the beginning of the update phase, just after the vessels have copied their published states to their update states, so both states are in sync.
clbkPostStep is called after Orbiter has propagated the update state to the next time step, but before the new states are published. Since the new vessel is now inserted after the current update phase, it will miss the update for the state with which it was created. For example, if the new vessel was created with a copy of the spawning vessel's state, it will now be one update behind the parent vessel. If it is created in clbkPreStep, the spawning and the new vessel will go through the current update phase, and therefore remain in sync.