Instead of hard-coded positions, have them calculate in real-time an ideal place to be based on the position of the rocks and other group members:
If a rock is detected within 10 meters of you. Imagine a circle around your character of radius 10 meters. Find the point on the circle that is equal to or greater than 10 meters from not only the nearest rock, but also the nearest person. But, as there will be many solutions, find the one closest to the group to improve survivability. Iterate through ${Angle}.
NewX:Set[${Math.Calc[${Me.X}+10*${Math.Cos[${Angle}]}]}]
NewY:Set[${Math.Calc[${Me.Y}+10*${Math.Sin[${Angle}]}]}]
Since there are random rocks (not those that pick your characters location specifically) that also appear in the general area of your characters after a time, when the local area becomes "saturated", just move the entire group to a new area altogether as needed.