QUOTE(spinesheath @ Feb 8 2007, 04:11 PM)
Hmm, where did I read about it...
Wiki as alwaysShould give you enough information to get it. It's a simple, heuristical pathing algorithm that is mostly useful for plain graphs (2D-terrain).
For single unit movements it is a nice algorithm, but for lots of units there should be way better ones... Then again I only know Dijksta and Floyd-Warshall pretty well, and I guess there are better algorithms for the planar case...
[right][snapback]624741[/snapback][/right]
There are other variations on A*, however in most applications a well implemented A* is the best choice. The problem with starcraft's pathfind is not that it uses A*, but that it's a poor (perhaps basic is a better word) implementation.
After re-reading your post and for completeness it's worth mentioning that A* is also a great algorithm for 3d pathfinding - you just have the added step of getting a movement graph beforehand.
edit #2:
QUOTE(DiscipleOfAdun @ Feb 8 2007, 02:38 PM)
PM me the addresses, please? I wanna see how SC does this. Also, do you think there's a more optimal algorithm that can be applied?
[right][snapback]624706[/snapback][/right]
Just read this - I'll find them again when I'm on my computer that has starcraft installed.
As for a better algorithm just cleaning and optimizing the A* would make great strides. Without having looked too closely I'd say that generating some basic paths from the map as its loaded would have been a good idea.
However, I have to qualify with this that it would be no small feat to change anything as intrinsic to the game as pathfinding without screwing something up. I wouldn't want to try it.