ai – Unit navigation and avoidance in an AutoBattler like game

I am not using an Engine (this is for an authoritative server in Golang). I’ve tried going with the flocking approach but got wonky and horrible movement. Looked into A* and into dijkstra, but cannot for the life of me figure out how to go about implementing it into my idea.

I’ll explain the game briefly before going into technicals. The game is an autobattler and this video explains the idea, you can just watch those 10 seconds of so of the fight. So your units start at 1 end and the opponents units at the other, you meet up at the middle and attack the closest unit while avoiding allies and colliding with foes.

I’ve looked into doing this with just raycasting but dropped that, I am now looking into grid based movement but I don’t like that, I want for the units to feel like they’re actually walking at different speeds rather than traversing the grid. But honestly I’d settle for a grid based movement as well. The units should be able to gang up on a single unit and surround it.

Any and I mean any direction or resource/ project would be mega helpful. I am stuck on this for 4 days now and it has been infuriating. I’ve gotten so far with the boids but it couldn’t work out in the end. I think that some sort of gridbased movement is the way to go, but I cannot fully incorporate avoiding units and movement speed into this. The server ticks every 200ms and thats when the updates are called.

(There are no obstacles outside of units, and maybe some spawned obstacles because of abilities or such)