I developed this project as part of the Advanced Game Technologies coursework.
It employs both Networking and AI techniques to deliver the whole experience, some of the features are as follow.
- Random maze generation using Prim’s Algorithm..
- Navmesh generation for the generated maze.
- A* Algorithm to calculate the path between two nodes.
- Server/Client architecture to synchronize client positions, broadcast maze structure, govern AI agents and handle physic simulation.
- Data-driven Finite State Machine to handle AI behaviour.
- Client movement calculations use string pulling to minimize path nodes.
- Dead Reckoning is employed to allow a smoother simulation on the client side.
This was a really fun project for me, as I am very fond of network programming, also combining our previously developed Physics Engine with networking, gave me a better understanding of how some games are actually made.