It all works fine, but the enemy objects will overlap/stack indefinitely if you circle around. Here is a visual example, forgive my programmer graphics.

This is the enemies moving towards the player with only a little stacking.

Here, the enemies have stacked many times over.
What I need is a method to make them refuse to overlap, or preferably overlap only a little rather than completely. I tried to code a solution myself but it does not work as expected, making them jump around and avoid eachother by large margins. Here is my code (in the step event of obj_killer):
if (distance_to_object(obj_killer) > 0)
{
move_towards_point(obj_player.x,obj_player.y,3);
}
else
{
direction = point_direction(x,y,obj_killer.x,obj_killer.y) + 180
speed = 3
}











