One Button Blaster (2018)
Project Type: Solo
Features I Implemented:
- Vector Movement for space-like feel - Enemy AI and Projectile Mechanics - Leaderboard and Scoring Mechanics |
Technical Details:
- Programmed in C# using Visual Studio for Windows. - Using Unity Engine. - Created for Windows, Mac and Linux |
Summary:
One Button Blaster is my entree into the 1 Button Game Jame on Itch.IO (Currently still in progress).
My entree is a fast paced Space shooter with a voxel like style. The aim of the game is simple, play until you lose. As you progress and kill more and more enemies, the number of that type of enemy that can be on screen at any time, increases. As you kill enemies or lure them into each other's shots and mines, then the more score you earn.
The brief of the game jam was quite open where the aim was to create a game that works by using one and only one button. This excludes using the mouse as input alongside that button. Extra points in the brief is to use as little as text as possible so it could be played by anyone and having the menus work by using the same button too.
My entry was able to match this brief by giving the player two controls. Shooting and Rotating the ship which is accomplished by clicking and holding the left mouse button respectively. The menus also use single clicks or holds on the mouse too, such as the leaderboard which allows you to single click to restart or hold to quit.
One Button Blaster is my entree into the 1 Button Game Jame on Itch.IO (Currently still in progress).
My entree is a fast paced Space shooter with a voxel like style. The aim of the game is simple, play until you lose. As you progress and kill more and more enemies, the number of that type of enemy that can be on screen at any time, increases. As you kill enemies or lure them into each other's shots and mines, then the more score you earn.
The brief of the game jam was quite open where the aim was to create a game that works by using one and only one button. This excludes using the mouse as input alongside that button. Extra points in the brief is to use as little as text as possible so it could be played by anyone and having the menus work by using the same button too.
My entry was able to match this brief by giving the player two controls. Shooting and Rotating the ship which is accomplished by clicking and holding the left mouse button respectively. The menus also use single clicks or holds on the mouse too, such as the leaderboard which allows you to single click to restart or hold to quit.
Q-Tile (2018)
Project Type: Solo
Features I Implemented:
- Level Editor which uses Unity's XML Serialisation. - Programming based animation and movement. - Player Settings can be saved and loaded |
Technical Details:
- Programmed in C# using Visual Studio for Windows. - Using Unity Engine. - Created for Windows, Mac and Linux |
Summary:
Q-Tile is a short, cute and simple puzzle game about clearing all the available tiles on a level to complete it. The main feature is the level editor to create and play through your own and others levels which are easy to share with friends, family and more.
The included level editor is easy and simple to use, simply draw out your level, select specific tiles to change the colour of and save it out using any name you like with a suggested difficulty setting you think may be appropriate.
Q-Tile is a short, cute and simple puzzle game about clearing all the available tiles on a level to complete it. The main feature is the level editor to create and play through your own and others levels which are easy to share with friends, family and more.
The included level editor is easy and simple to use, simply draw out your level, select specific tiles to change the colour of and save it out using any name you like with a suggested difficulty setting you think may be appropriate.
Procedural Dungeon Generator (2018)
Project Type: Solo - 3rd Year University Project
Features I implemented:
- Procedurally Generating Dungeons based on patterns and conditions to provide a designed approach to the generation. - Mini Map using a seperate camera and rendering layers - Combat and AI |
Technical Details:
- Programmed in C# using Visual Studio for Windows. - Using Unity Engine. - Created for Windows, Mac and Linux |
Summary:
This procedural dungeon generator is the result of my third year university project which explored the concept of using procedural generation to create a designed and themed dungeon consisting of multiple floors to explore.
The tool was created using the Unity 3D as a base and then built on iteratively until the desired procedural dungeon system had been achieved. The main aspect of the tool was the procedural generation however elements such as enemies, treasure and combat was added to the tool to give an aspect of how it can be used for video game development.
The tool makes use of the 'Drunken Walk' algorithm which randomly lays out a tile per frame until the specified amount of tiles have been placed and then the next floors are generated.
Once all dungeon floors have been generated, the dungeon walls are spawned on the edges of tiles where no other tiles connect and then decoration and other items are spawned depending on how many free slots are available on that tile.
Treasure, lights, chests and decorations are available to be spawned in the demo, where the column decorations only spawn in corners and chests only spawn in end corridor routes.
This procedural dungeon generator is the result of my third year university project which explored the concept of using procedural generation to create a designed and themed dungeon consisting of multiple floors to explore.
The tool was created using the Unity 3D as a base and then built on iteratively until the desired procedural dungeon system had been achieved. The main aspect of the tool was the procedural generation however elements such as enemies, treasure and combat was added to the tool to give an aspect of how it can be used for video game development.
The tool makes use of the 'Drunken Walk' algorithm which randomly lays out a tile per frame until the specified amount of tiles have been placed and then the next floors are generated.
Once all dungeon floors have been generated, the dungeon walls are spawned on the edges of tiles where no other tiles connect and then decoration and other items are spawned depending on how many free slots are available on that tile.
Treasure, lights, chests and decorations are available to be spawned in the demo, where the column decorations only spawn in corners and chests only spawn in end corridor routes.
Brink Of Escape VR (2017)
Project Type: Solo
Features I implemented:
- Interacting with objects in a new way for VR - Physical Contact - VR movement and teleportation. - Physical UI suited to VR that reduces the use of uncomforting screen UI. |
Technical Details:
- Programmed in C++ using Visual Studio for Windows. - Using Unreal Engine 4. - Primarily developed for the HTC Vive |
Summary:
Brink Of Escape VR is a Virtual Reality port of the first-person Escape the Room game called Brink of Escape which is listed below. It is my first attempt at using new and upcoming technologies in game development by using the HTC Vive for Virtual Reality game play that makes use of the controllers, headset and play space. A beta version was also created for Oculus Rift based on some feedback.
The game was written in C++ but also used the blueprints visual scripting for elements such as the UI and so the C++ classes themselves had to be able to readable from a blueprint graph, also giving practice into linking code to scripting.
The source code for this project is available on GitHub
Brink Of Escape VR is a Virtual Reality port of the first-person Escape the Room game called Brink of Escape which is listed below. It is my first attempt at using new and upcoming technologies in game development by using the HTC Vive for Virtual Reality game play that makes use of the controllers, headset and play space. A beta version was also created for Oculus Rift based on some feedback.
The game was written in C++ but also used the blueprints visual scripting for elements such as the UI and so the C++ classes themselves had to be able to readable from a blueprint graph, also giving practice into linking code to scripting.
The source code for this project is available on GitHub
Brink Of Escape (2017)
Project Type: Solo
Features I implemented:
- Line Tracing used to interact with objects up to a reasonable distance. - Objects that could interact with others using references. E.g. The light switch could interact with any number of lights. - Linking objects and pre-existing conditions together to create puzzle like elements to satisfy criteria and move forward. - Linking C++ to blueprints so that classes could be extended in the scripting language. |
Technical Details:
- Programmed in C++ using Visual Studio for Windows. - Using Unreal Engine 4. - Created for Windows & Mac |
Summary:
Brink Of Escape is a first person escape the room style game built in Unreal Engine 4 using a low poly style asset pack to create a quick and simple exploration into the escape the room scenario. It was mainly an attempt to get the environment interacting with the player and using a system that can be revisited in later games where keys unlock doors or certain sequence of actions have to be completed first to get the end result and similar concepts.
The game was written in C++ but also used the blueprints visual scripting for elements such as the UI and so the C++ classes themselves had to be able to readable from a blueprint graph, also giving practice into linking code to scripting.
The source code for this project is available on GitHub
Brink Of Escape is a first person escape the room style game built in Unreal Engine 4 using a low poly style asset pack to create a quick and simple exploration into the escape the room scenario. It was mainly an attempt to get the environment interacting with the player and using a system that can be revisited in later games where keys unlock doors or certain sequence of actions have to be completed first to get the end result and similar concepts.
The game was written in C++ but also used the blueprints visual scripting for elements such as the UI and so the C++ classes themselves had to be able to readable from a blueprint graph, also giving practice into linking code to scripting.
The source code for this project is available on GitHub
Roller Ball (2016)
Project Type: Solo
Features I implemented:
- Calculating the new direction of gravity based on the gravity pads and ball location - Incorporating the new gravity directions into the physics so movement and forces still worked correctly. |
Technical Details:
- Programmed in C++ using Visual Studio for Windows. - Using Unreal Engine 4. - Created for Windows. |
Summary:
Roller Ball is a physics platformer demo which was developed in C++ using Unreal Engine 4 and its base physics engine to create a sphere that is moved by physics in a realistic manner but also gains platforming abilities such as the ability to stick to walls and use jump pads and boost pads to help move around the level.
The main features of the project was the ability to cling to floors, walls and ceilings and use this ability along side physical movement to move about a level and complete various puzzles to complete the game. This demo was created purely to learn programming C++ using Epic's Unreal Engine 4.
Roller Ball is a physics platformer demo which was developed in C++ using Unreal Engine 4 and its base physics engine to create a sphere that is moved by physics in a realistic manner but also gains platforming abilities such as the ability to stick to walls and use jump pads and boost pads to help move around the level.
The main features of the project was the ability to cling to floors, walls and ceilings and use this ability along side physical movement to move about a level and complete various puzzles to complete the game. This demo was created purely to learn programming C++ using Epic's Unreal Engine 4.
Hover Car Racer (2015 / 2016)
Project Type: Solo - 1st Year Assignment
Features I implemented:
- Programming axis-aligned collision using 3D vectors in real-time - Programming player input, movement and race systems in C++ - Allowing variable framerates by using a frame timer for each calculation |
Project Details:
- Programmed in C++ using Visual Studio for Windows. - Using a bare bones engine supplied by the university. - Created for Windows |
Summary:
Hover Car Racer is the final assignment project for my first year of university. We had to use a basic 3D engine created in C++ and implement the rest of the features necessary to create a hover car racing game. This included collision, ship movement, vector movement, checkpoint racing system and more.
The idea was to create a game that not only worked well, but played well with optimised mathematics and collision detection as well as having various events going on at once.
The source code for this project is available on GitHub
Hover Car Racer is the final assignment project for my first year of university. We had to use a basic 3D engine created in C++ and implement the rest of the features necessary to create a hover car racing game. This included collision, ship movement, vector movement, checkpoint racing system and more.
The idea was to create a game that not only worked well, but played well with optimised mathematics and collision detection as well as having various events going on at once.
The source code for this project is available on GitHub
Other Projects
- Soda Clicker - A prototype for an idle clicker game made in Unity C# (2017)
- Freedoku - A Sudoku app for android phones built using Unity (2017)
- Video Games: The Quiz- A small quiz app built for android phones using Unity. (2016) - No longer available to download
- Freedoku - A Sudoku app for android phones built using Unity (2017)
- Video Games: The Quiz- A small quiz app built for android phones using Unity. (2016) - No longer available to download