Implemented a custom heap to optimize A* performance, allowing faster open list operations .
Enabled efficient navigation and decision-making for AI agents.
Used a job system to offload A* computations to worker threads, allowing multiple agents to compute paths simultaneously.
Developed state-based behaviors like patrolling and attacking.
Agent randomly selects a goal within a defined patrol range.
Agent requests a new path if it reaches the current goal.
Tracks the player's last known position.
If the player is out of sight, the agent switches back to patrol mode after a delay.
Job System Workflow:
Agent requests a pathfinding job if a new path is needed.
The job system queues the request an assigns it to a worker thread.
Worker thread executes A* and stores the result.
Agent retrieves the completed path from the job queue and starts moving along it.
AI path: Displays the agent's current planned route.
Goal Highlighting: Marks the AI's current destination.
Created mazes using loaded map designs and each time the player loas into the game, it will randomly pick a new maze.