I put everything I want sorted in a family. Then give the family a family variable. Every however often, I set that variable to each object's Y coordinate. Then I run the sort command and sort it, ascending, by that value (note, the command has to use a variable and not some other value). Perfectly simple, works great so long as I have image points set up correctly. Any manual changes to the Z order are done immediately after that event.
There's my full event. I narrow it down to what's on-screen and on the layer I want, set my variable, then sort. Then I have some manual adjustments after for different object types (Spriter objects).