Doorway Logistics Technician

I’m currently working on this personal project in my free time, in C# with Unity 5. It’s a doorman/bouncer simulation comedy. The game is being created primarily in code alone, rather than relying on Unity’s inbuilt systems. I find it more enjoyable working at the code level and I find a project easier to manage. This demo showcases the basic functionality developed so far. I also created the art and sprite animations for this game.

House Robot 2D

House Robot is a 2D game I’ve been developing for the final year project of my degree. It’s being created to accompany a dissertation I’m writing on Dynamic Difficulty Adjustment (DDA). The dissertation has a strong emphasis on AI behaviours and pathfinding, which certain implementations of DDA concerning opponent modelling rely upon. The game was written from scratch in C++ using the DirectX9 libraries for graphics. It utilises multi-threading to optimise performance with regards to pathfinding algorithms.

I also recently converted the C++ code into Java using Android Studio and managed to get the first prototype working on my Android phone device. This was fairly straightforward given the similarities between C++ and Java. The only challenging aspect was rewriting the movement controls to use touch-screen instead of keyboard input.

GitHub: HouseRobot-2D-PC   |   HouseRobot-2D-Android

Domus (UE4)

For one of my degree modules I was tasked with developing a game in a popular game engine such as Unreal Engine 4 or Unity. This was a team project and the team voted for a horror title using UE4. My role was programmer, though due to my teammates being unable to contribute for various reasons I ended up making most of the game demo myself. For this game I wrote classes in C++ as well as utilising the blueprint scripting system.

Hangman (MASM/Assembly)


I’m currently working on a simple Hangman game using Assembly Programming, specifically MASM/WinASM. The purpose of this personal project is to develop greater familiarity with x86 architecture and low-level programming. While I would be unlikely to develop a game in Assembly in a real-world scenario, the experience will positively influence other areas of my practice, such as optimization and debugging techniques.

GitHub: Hangman-asm

House Robot 3D Prototype

For the 3D Games Programming module of my degree I wrote a basic 3D game engine in C++, using the DirectX9 libraries. I also wrote classes for basic AI behaviours such as seek, flee, hide and a flanking attack. I also wrote a basic dialogue system. I then implemented these features into a prototype game demo.

GitHub: House-Robot-3D

FPS Prototype (UE4)

In order to gain familiarity of Unreal Engine 4, I was tasked with building a prototype of some specific FPS game mechanics. To program the demo I used the engine’s blueprint scripting system. The assets used were primarily default assets included with the engine, as the demo was exclusively focused on the programming aspect of development.

Blackjack 2D

When I first started programming in C++, one of the first games I wrote was Blackjack as a text-based Windows Console Application. Back then I was eager to start learning about graphics so I could recreate the game with actual 2D images. Later on when I started learning about DirectX, I did just that and created Blackjack 2D as my very first game with 2D graphics. It had a card class, used by containers for the card deck and hands, as well as a basic AI player.

GitHub: Blackjack-2D