A* Pathfinding

As games grow in complexity from board games to games with characters and maps and obstacles the requirements of the program grow in complexity. Now you need more than priority maps or minimax trees (although they may be present as well). Take a simple 2d map view adventure game with npcs (Non-Player-Characters) that are controlled by the game. They need to move around logically, finding their way around the world without getting stuck on buildings or terrain or each other.

References

[1]