Links

GitHub

Engine: GTEC 3D Library provided by Kingston University

Programming Tool: Visual Studio

Language: C++

Role: Designer & Programmer

Team size: 1

Development Time: 2 ½ months

Synopsis:

"Aorus" is a single-player space fighter game heavily inspired by Star Fox 64, where the player controls a ship to shoot down an invasion army of hostile ships to protect the planet.

 

Project Components:

  • Design Focus:

    • Create a fun space-fighter game with increasingly challenging types of AI enemies

  • In-Game Objective:

    • Defeat waves of enemies and stop the moon from crashing into the planet before you run out of health

  • Project Objective:

    • Learn more about C++ programming for 3D games and deliver an engaging space-fighter game

Design Breakdown:

This game was developed within the in-house 3D game engine at the university, with models and most textures imported from external sources. Some textures were manually painted onto models, such as the ship textures, to achieve a preferred appearance for these models. Programming focused more on basic types of AI which would serve as enemies in game. Designs for the game focused on creating a suitable space environment for the player to fly around in, including making the game-world encapsulated. As the game takes place in a sphere-like space, when a player or enemy fly far enough away from the main arena and reach the perimeter, they will be teleported to the other side of the sphere to keep everything restricted to within the sphere.

Asteroids are spawned randomly within the sphere, with the player and planet that they are protecting being spawned in at fixed points. Colliding with asteroids reduces the player's health and destroys the asteroids, although the 2D sprite for the explosion is displayed on a point on the screen rather than in the 3D game world. Enemies also begin from fixed points every wave.

The enemies come in 3 waves: the first wave of enemies are a small number of ships that fly within the asteroids of the game world that will flee upon the player coming close enough to them. Destroying them spawns in the second wave of enemies, which come in greater numbers and are harder to catch up to, but require fewer hits to destroy.

 

The last wave brings out the boss & the final wave of enemies. These will focus on heading towards the planet but if the player gets close enough to the ships they will attempt to kamikaze into the player and force a game over. The boss is a large moon that will crash into the planet and cause the game to end, unless the player reduces its health to zero, then the game is won.