mylesb, I am not sure you actually understand how A* works. Can you try to elaborate what's your understanding of the algorithm. You can use A* on any level of map infrasctructure being it connecting towns and streets or simple grid. The form of the "map" doesn't matter. You simply find the fastest (understand most cost-efficient) route. In your case the map is constructed out of waypoints with first one being added as player's position and the last one is the target desired place. If your target is not directly visible, you use the A* to traverse through nodes to get the fastest route. A* would provide you with best route to the destination via waypoints (finding waypoint which has direct visibility of the target point). That's all it does. Difference in between dijkstra and A* is that while dijkstra blindly tries all ways until it finds the best, A* includes heuristical function trying to get the result faster by trying to move somewhat in the target direction first before trying other ways.