About the project

This was a solo project made for the course CS380 at Digipen, the goal of the project was to implement an A* pathfinding algorithm for a 2D grid-based map. Apart from the basic algorithm I implemented other features such as:

  • Path computation divisible over time instead of computing in a single frame
  • Rubber bandingand Smoothing post processing to improve the path.
  • Different heuristic functions such as: Euclidean, Chebyshev, Manhattan and Octile
  • Variable node weight.

In addition to this, I made a little demo that uses influence maps as part of the pathfinding algorithm for weighting, which I found very interesting.

Video legend:

Orange represents the danger areas identified by the player. A danger area is defined as an area where an enemy is spotted. The player will compute a path trying to avoid as much as possible danger areas.

Green represents the search space for all the enemies that are alerted. Enemies will cooperate to ‘clear’ those areas.