university projects

all projects below are from my first year of university.
more will be added as time goes on!

legend*

games programming module

thinking like a programmer module

game science module

requirements analysis and design module

programmed from scratch

programmed from template

fruit ninja

c++

available from: 17th november, 2020
submitted: 18th november, 2020
grade: 100% | 10/10

In this assessment we had to complete a half finished project file called "fruitninja". Our task was to implement additional sprites, make them randomly fall from the top of the screen, add a game over condition, add sound effects and reset all variables and objects on the "F2" key press.

video

asteroids

c++

available from: 1st december, 2020
submitted: 5th december, 2020
grade: 100% | 40/40

Another assessment where we had to complete a half finished project. For this one we had to implement randomly spawning asteroids, a "wrap around" effect (so the asteroids don't leave the screen), object collisions, a win conidtion, explosion effects, another level and asteroids breaking apart.

video

2d games development

c++

available from: 16th december, 2020
submitted: 26th january, 2021
grade: 90% | 90/100

This was our first attempt at creating a unique game in C++ using the GFC game engine. We were allowed to build from the ground up or use existing project examples as a starting point, I used the previous "asteroids" project as a foundation for my game. In summary, my game is a space shooter/fighter game. You survive 3 rounds of UFO enemies before the final boss round, items can be collected between rounds. This game was really enjoyable for me to develop, debug and play! The background music I used in this game was given to me by the discord user Baby Driver#1879. I named this game "Space Attack!".

what we were marked on:
Game Complexity - new mechanics, new features, new levels.
Game Coding - sprite lists, game logic, animations, use of functions.
Game Appearence - art work, polish, animation, sound effects.

video

c++ assessment cwk1

c++

available from: 25th january, 2021
submitted: 6th february, 2021
grade: 95% | 95/100

This assessment was quite difficult, it took me a few tries and hours of debugging to come to the final result. It was my first time attempting inheritance in C++, which is what this assessment is testing us on, so there was a load of trial and error all throughout the development of this project.

Our task was to create a property management "game", where the player can choose to play as the seller or buyer. The buyer is competing with other buyers who are after the same property as you, you must pay the highest price while also managing your money. The winner is the one with the most properties (out of 5). The seller is selling 5 properties, their aim is to make the most money. Each property's price is decided by the player, aim too high and it wont sell, aim too low and you won't make profit. The task required that we display and keep track of all propety information, such as property type, price, years remaining of lease etc.

video

bouncy ball

c++

available from: 13th february, 2021
submitted: 17th february, 2021
grade: 70% | 70/100

This project was small and very straight forward, it surprisingly didn't take me long to finish it. We had to make a ball bounce off the floor and walls, applying math and physics to get the bounce and rebound elements performing correctly.

video

3d games task

c++

available from: 23rd february, 2021
submitted: 23rd february, 2021
grade: 100% | 50/50

Another assessment where we had to complete a half finished project, however, this time it was a 3D games project. After being introduced to a new but very similar game engine, GTEC, we were tasked with completing this project into a playable state while also meeting all the listed requirements. Those requirements were:

• Adding a box model | • Adding random patches of grass to the world
• Adding coins and animating them | • Collecting and delivering coins
• Adding cobras and animating them | • Hiding cobras until collided with
• Making cobras attack when in range | • Adding a python that chases the player
• Restarting the game properly on "F2" key press.

video

c++ assessment cwk2

c++

available from: 26th february, 2021
submitted: 16th march, 2021
grade: 94% | 94/100

This assessment was also quite difficult, and again, took me a few tries and hours of debugging to come to the final result. This time it was due to confusion of what the task was and how I was supposed to approach it. I ended up giving it my best guess and attempt, thankfully it all worked out.

Our task was to create a virtual pet "game" where the player is able to choose their own pet from a range of available pets. the pets can then be interacted with by feeding and playing with it. The player can buy more then one pet and is able to switch between interacting with them. The system should create an account for every customer and keep a record of their name, address, age and all their pet information. The system should also give the customer a discount based on their age. For example, if they were younger than the age of 14, they qualified for 25% off, if they were older than 70, than they qualified for 50% off.

video

2nd small game project

c++

available from: 6th march, 2021
submitted: 18th march, 2021
grade: 70% | 70/100

This project was also small and quite straight forward. The project was already partially complete, we just had to complete the rest of it and get it fully functioning. We could choose from a variety of incomplete projects, I chose "Cannons". My task for this project was to make it so two opposing cannons can aim and shoot at each other, with a wall being in-between them. I had to make sure the turns, the cannon ball's physics and the wall were all setup correctly.

video

3rd small game project

c++

available from: 6th march, 2021
submitted: 22nd march, 2021
grade: 75% | 75/100

This project was the most difficult (but fun) one of this module. The project was "Platform games" and my task was to make a platformer game, this project was also less pre-developed than others, so I had to almost start from scratch. I had to make the player move, jump, climb, die from fall damage and have particle effects. Also had to add in game objectives, consumables and hazards, like rolling enemies and spikes. The whole project was quite challenging for me but it paid off as it was a huge help in my next game science project.

video

games group coursework

c#

available from: 25th march, 2021
submitted: 5th april, 2021
grade: 90% | 90/100

For our group project, we decided on making a card-based game, similar to "Slay the Spire". We planned out the story, characters, art and how the game would play. As this was only a prototype, we were only required to complete a single level for the assignment. Unfortunately, we had issues with one of our members (the programmer), so I had to fill in for him and code the game to a playable state with the time we had left. I was allowed to use Unity (C#) to create our game, something I was thankfully already familiar with. We called our game "Toxis".

video

download!

game science project

c++

available from: 11th march, 2021
submitted: 8th april, 2021
grade: 89% | 89/100

I used the "3rd Small Game" project as a starting point for this one. I'm very happy with how this game turned out, it's actually really fun to play (in my experience) and has interesting gameplay mechanics behind it. Very interested in fully developing this game in the future.

In the game I named "DELIVERYBOT", you play as a little robot who's purpose is to deliver packages to customers on time. Failure to deliver the package before the "expected delivery time" will result in a fail, restarting the level. Each level starts you off some distance away from the package, you first have to collect the package then deliver it. Once you've picked up the package, your movement speed and jump height will drastically be reduced, making completing the level harder or near impossible without some strategy. You can choose to throw the package to gain your speed and jump height back, or to defend yourself from enemies. This may all sound quite confusing on paper, but the gameplay below speaks for itself!

video

3d games development

c++

available from: 5th march, 2021
submitted: 22nd april, 2021
grade: 90% | 90/100

Our first attempt at creating a unique 3D game in C++ using the GTEC game engine. Similarly to our 2D games development assessment, we were allowed to build from the ground up or use existing project examples as a starting point. I used the "Defender3D" project as a foundation for my game. In summary, this is a survival game with rouge-like elements implemented into it. You survive waves of enemies whos aim is to break and damage the house, which you are trying to defend. However, if you get in the enemy's way, they do target and attack you instead. Each round the enemies grow stronger in speed, health and numbers. You also get a new turret to place down to help defend your home. Items are randomly dropped from enemies, each item will have a different affect on the player, for example, one item can increase your damage, and another can increase your movement speed. The background music I used for my game was given to me by the discord user Onion666#5043. I named this game "Risk of Infection".

We were marked on the same areas as the previous "2D Games Development" assessment (game complexity, game coding, game appearence).

video