Looks easy if you aren't worried about the efficiency of the algorithm. If the bots can agree about which direction is bottom-left, they can start by drawing the smallest bounding square rectangle containing them all, each assigning themselves a unique row-major order in this square rectangle and mapping that to the row-major order in a target square disjoint from the bounding square rectangle but in some predictable position relative to it.
Then the algorithm for i = 1, 2, n is simply for the i-th bot to shuffle towards its target position one step at a time while the remaining bots do nothing until this position has been reached.
Choosing the bots in row-major order, in other words imagining that the rectangle and the target square is are each cut into rows stitched end-to-end as one long strip guarantees that no bot whose turn has started is enclosed by other bots and therefore unable to move to its target position.

