Cooperative Pathfinding (4.1.13 branch) and a Networking Context

Hello, all! I bought A* Pathfinding a couple of days ago. It’s a fantastic asset and its local avoidance solution came as a big, big relief for me, as I’ve had past experience implementing RVO solutions and they always take a while to optimize (to say the least).

Though Local Avoidance was a big plus, I was disapointed (but not surprised, as I know how Unity makes deterministic solutions hard to achieve) to find out that the RVO simulations are not deterministic. This makes them inviable for our project, as it works with client side predictions to take some load off of the server/master client. So now I’m downgrading our A* Pathfinding package to 4.1.13, Cooperative branch, to use Cooperative pathfinding rather than local avoidance in order to minimize collisions.

Now on to the question: has anyone been through a similar use case? Am I losing a lot by downgrading to 4.1.13? I’m listing my main requirements below so that “losing a lot” becomes less subjective.

My main requirements:

  • A* Pathfinding over navmesh;
  • Navmesh cuts (and undoing them, ofc);
  • Handling 100 moving entities at all times (we target PCs, mobile and older consoles are not a source of concern) with ~5 path updates per second.

Never mind! Couldn’t get 4.1.13 to work with Unity 2021 and rewriting the main script to work would probably be as time consuming as writing my own deterministic solution :joy:

1 Like