ArcRay Engine

Since graduation, Michael has been researching and experimenting with game engines and frameworks in an attempt to better understand the underlying technology behind video games, as well as to better develop his skills as a programmer.

Various projects exist for putting newfound knowledge to the test, helping to develop Michael's undertstanding of various aspects of engine design and systems such as Entity Component Systems, rendering pipelines, and editor programs, however the ultimate goal of this endeavour was to create his own game engine; the ArcRay Engine.

The ArcRay Engine represents the build up of knowledge that Michael has gained over the years and makes use of a variety of C and C++ libraries to achieve goals, including but not limited to:

Sumo Royale

During his time working with Psycho Hound, Michael helped create the underlying netcode for the fighting game Sumo Royale, ensuring that the game was properly replicated on all clients with no issues and enabling the game to have its own server browser through the Steam servers.

Michael also aided in other aspects of the game such as a variety of weapons, character customisation, and a multiplayer lobby screen with various gags keeping in line with the game's slapstick nature.

Goblin Gank

This large-scale project saw the Pen Pot Omelette team produce a dungeon-crawler action game from start to finish, with Michael taking on the role of lead programmer and boss encounter designer.

The game was created using the Unreal Engine with a mixture of blueprinting and C++ programming.

Michael's contributions here include; designing and implementing the final boss encounter, though he also helped with some class inheritance for the playable characters and debugging.

Source Code available on request

Borderlands Zero: Origin Islands

In this project, students were tasked with creating a Vertical Slice trailer based on the theme of "Origins" for the Borderlands franchise.

Working alongside fellow students in Team Seven Pixels, Michael helped with the creation of an FPS/Puzzle game using the Unreal Engine.

His personal contribution to this project includes; implementing splitscreen, adjusting physics engine, creating a respawn system, debugging and testing.

Vertical Slice trailer here

Splash of Colour

Part of a four-person team, Michael provided much of the programming for this simple top-down shooter game.

His personal contribution towards the project include; implementing controller support, menu navigation, world colouring, and stress testing.

Gameplay video on Youtube

Source Code available at Github

Project Firestick

For his Final Year Project, Michael created an FPS Rapid Prototyping Toolkit dubbed Firestick. This would act as an extension to the Unity engine and is programmed in the C# language.

This toolkit would allow developers to quickly create assets most commonly found within the FPS genre such as; weapons, NPC combatants, and basic AI paths.

The purpose of this toolkit was to remove any need for a developer to program these most common assets, instead simply inputting all the values they would need into an editor window.

A tutorial of the Toolkit in action can be found on Youtube

Source Code available on Github

Castle Game

Part of the Character, Controls, Cameras assignment, the purpose of this project was to create a basic prototype with the focus on the 3C's of game design.

A list of constraints was provided to encourage creativity when designing the game. Below is the list I had chosen:

To achieve the desired control/camera constraints I created a series of rooms for the player to move through, each room would have an individal camera that is activated when the player enters. For controls the player would use a simple point-and-click style that used the scroll down action for movement and scroll up action for interaction with objects.

I designed the control scheme so that more interactable objects could be added with ease, improving the game's extensibility, however no such objects were created as it would have extended the scope of the project beyond what the limited deadline would allow.

Unreal C++ Puzzle-Action Game

This university module saw me create a small puzzle/action game demo in the Unreal 4 engine using only the C++ language with no blueprinting.

The game's mechanics were designed in such a way to encourage using a variety of different Unreal/C++ features such as Event Dispatchers, linetracing, class inheritance, and timers.