About
This page serves as a hub and overview for each of the projects that I am or have been working on.
My primary focus for personal projects is game development as that is what I am passionate about. However, I have dabbled with tooling for other fields that I am interested in as well. See the 40K list builder application below as an example. I was initially working with JavaScript and TypeScript since I use JS at work. I attempted to create 2D game engines in both languages, ended up enjoying it too much to waste time creating such a tool that would ultimately under-perform due to language constraints, and so opted to restart in C# and OpenGL. This quickly led to a C++ and OpenGL restart, and then slowly the realisation that I would end up spending too many years creating a basic engine when I could just start making games with an existing one.
These days I primarily work with Godot. Being a free and open-source game engine means I can just experiment with it and figure out what I can do and how well I can do it wihtout having to worry about expenses until I feel I have something good enough to port to consoles.
Projects
Night Wave Tower Defence
Status: Complete
A game that Imade in the Godot engine.
Nightwave is a tower defence game inspired by the Kingdom Rush games, sans the heroes.
The twist with this variation is that monsters are obscured by darkness and so the player must first build towers that illuminate
the path so that other towers may shoot at them.
Unamed Soulsvania Platformer
Status: On Hold
A game that I am making in the Godot engine.
This is a 2D, souls-like, metroidvania, single player game set in a dark fantasy world.
Inspired by the likes of Hollow Knight and Salt & Sanctuary.
Project is currently on hold while I work on the precision platformer mentioned below.
Unamed Precision Platformer
Status: In Progress
A game that I am making in the Godot engine.
This is a 2D platformer with a focus on platforming puzzles and speed.
This project's purpose is to refine my 2D movement system for the soulsvania project mentioned above.
Warhammer 40K 8th Edition List Builder
Status: On Hold
Currently this project is not getting any love as I haven't been playing 40K.
I started this project for two reasons:
- Paging back and forth through multiple rule books composing your army and hoping that you got all of the costs and special rules/dependencies correct is a real pain.
- The list building applications that already exist are unstaisfactory (to me at least). The official app - Command Roster - is disgustingly under-featured and the best free contender - BattleScribe - is not the easiest/nicest to use.

Try it now on GitHub Pages
CodePen Account
Status: Updated only when experimenting
I started using CodePen at one point to play around with some of the simpler physics challenges and 2d game mechanics. For example the below code pen is a work-in-progress attempt at detecting and resolving collisions between different shapes:
See the Pen 2D Physics Module by Connor (cp-pens) on CodePen.
My CodePen pageDiscarded Projects
Every developer is going to have tons of discarded projects. I am no different. Some noteworthy examples in my case are:
- 2D game engine - I attempted this a few times, first in JavaScript (what I use at work) and then again in TypeScript. I got quite far, developing from scratch a complete ECS architecture, asset management, audio manager, scene manager, etc. What I did not complete was the renderer or physics. At first I used the built in canvas renderer, but that is nowhere near good enough for games, so I started working on a custom WebGL2 renderer. I enjoyed myself so much that I decided to write a proepr 3D renderer instead. Which is where this project lost steam.
- 3D game engine - Once I learned how to use OpenGL I started working on a 3D game engine. This was done while following along with an excellent YouTube series by The Cherno that was teaching how to make a 2D game engine using C++ and OpenGL. I was planning to use that as a base and extend it to 3D. It ended up taking too long and the scope of what I was wanting to do made me decide it would be more worthwhile to use an existing engine if I actually wanted to create games before I retired.
- 3D arena shooter - Had an idea of a simple, parkour-based, multi-player shooter. Started development on that in Godot, but other projects became a priority and so I dropped it.