I had a similar system on my robotic hand. It allowed it to skip memory cells that did not have data, while still allowing the hand play the other animations in demo mode.
However, that system is way to complex for the function you need. Instead, build a flip-flop counter. Chain flip flops in a line (two is all you need in this case) and link the activating logic to the first one. You now have a reverse counter. It will output a sequence of bits in this order= 00(off) 1 1, 0 1, 1 0, repeat, each time it is toggled.
Stacked order: D1 => D2 => D3
Release order: D3 => D2 => D1
You will then have to decode the bits to undock individual drones based on the counter. Slave an AND to the flip flops, and it will only activate when the counter hits 1 1. This will activate first, so connect this to D3.
Slave a NOT to the first flip flop, and connect it to a second AND. Then connect the other flip flop to this second AND. This will activate when the counter hits 0 1. This will activate second, so connect this to D2.
Slave a NOT to the second flip flop, and connect it to a third AND. Then connect the other flip flop to this third AND. This will activate when the counter hits 1 0. This will activate last, so connect this to D1.
For stability, I suggest you hook up a delay block to the toggle circuit, and slave all the ANDs to it. This will prevent the circuit from breaking and accidently activating multiple drones at once. However, if you don't mind the slight chance for a glitch, you can omit this feature.
I have used this circuit on my battleship before my computer caved in. From my testing, the circuit was suitable for activating circuits in a set sequence, in my case, setting the height of the docking pylons in the hangar bay with one button.
EDIT: One more thing to note, this circuit will reset if you toggle it a fourth time.