This repository demonstrates work completed as part of the CS4303 Video Games module for Practical 3. The purpose of this practical was to use the various concepts learnt relating to game physics, AI, and procedural content generation to create an interesting and original game from scratch.
An open-world, top-down, single-player, action-adventure pirate/naval-combat game has been developed using Processing. The developed game, referred to as ‘Flagship’, uses a variety of technical concepts related to video games, which were explored both within the module and through further reading.
The following techniques are of particular note: 2D Perlin noise thresholding for random but persistent map terrain generation, camera view-point panning for infinite open-world exploration, force-based steering mechanics and decision trees for complex AI behaviours (i.e., seek, pursue, wander, and flocking), bin-lattice spatial sub-division for optimised collision detection, and sound effects for player immersion.
This work has been documented extensively in the provided Report, and is explained for curious players in the provided Game Guide.