On this page you can find a brief summary of my projects, in varying states of completion.
This is primarily for my technical projects as opposed to my itch.io page which includes my complete public projects.
You can find my itch.io here: itch.io
Click on the titles or thumbnails for each card to be taken to a relevant page (either GitHub or itch.io) for a more comprehensive breakdown through a README.md for a write-up or a gameplay demo.
A bullet-hell game with a custom game engine. It is written in C++ and supports Direct3D11, OpenGL, and a multithreaded software renderer through a graphics abstraction that simplifies the porting process. As usual, assets are all produced by hand, and this time LUA is used as the choice of scripting language for stages.
Technologies Used: C++ Direct3D11 OpenGL SDL2
Date: October 2023 - Present
A software rendered tactics JRPG game and engine. It is written in C completely from scratch with SDL2 as it's only dependency, and features a multithreaded software renderer optimized to allow for real time postprocessing. There is also an integrated level editor, and many more features! All assets exempting music and font are self-created.
Technologies Used: C99 Emscripten SIMD SDL2
Date: June 2022 - September 2023
A custom statically typed programming language compiler with a handwritten recursive descent parser. The current frontend is written in C++, and the language compiles into C++, and supports an FFI. The frontend does all the parsing and static analysis before it ever reaches the C++ compiler!
Technologies Used: C++
Date: April 2023 - Late May 2023
This was a dungeon crawler made for the Dungeon Crawler Jam 2023. It was my first time learning Unity, and combining this with midterms whilst being a full-time student, and a solo developer was very challenging! It was designed as a surreal survival horror dungeon crawler under the jam theme "Duality".
Technologies Used: Unity C#
Date: April 2023 - (4 days)
A metroidvania platformer in vain of Hollow Knight style with a monochromatic visual style. Custom engine made from scratch in C99 with components from the 2D Games Framework. Features typical metroidvania movement mechanics such as wall jumping, dashing, and Hollow Knight style bouncing. Basis of some of the technologies that would appear in Legends.
Technologies Used: C99 OpenGL
Date: February 2022 - March 2022
A small 2D games framework with a plugin-based system that allows for quickly setting up 2D games in C, on Windows there are no dependencies! Features hot-reloading and a debug console. This project is intended to be used for game jams and features a high performance sprite batcher.
Technologies Used: C99 OpenGL
Date: July 2021 - October 2021
A small wave-based survival game. This game was made in one week for minijam83 and was a take on the theme restriction which required dice. The main gameplay mechanic is the level layout which is randomized according to a dice as well as various player buffs or debuffs which are applied based on a set of randomly rolled adjectives.
Technologies Used: Godot Game Engine GDScript
Date: June 2021 - (7 Days)
A roguelike take on Left 4 Dead made in the Godot Game Engine in one week for the 7 Day Roguelike Challenge. This game effectively created a custom ASCII roguelike engine within Godot and features: raycast based visibility, Dijkstra map based pathfinding for mass actor support, and a simple map generation scheme. The 4 survivors of L4D are also present and have reasonably intelligent AI (they follow the player and know how to heal themselves.) This game features interpretations of all L4D1 special infected.
Technologies Used: Godot Game Engine GDScript
Date: March 2021 - (7 Days)
An environmentalist tower defense game written in C++ with SDL2 in a weekend. The game features four different enemy types and three different types of turret units. The game is complete with a main menu and tutorial/instruction menu to learn how to play the game.
Technologies Used: C++ SDL2
Date: April 2020 - (2 days)
This is a slideshow program written in Rust. It is resolution and aspect ratio independent, and utilizes a custom text based format along with a handwritten parser vaguely inspired by MarkDown.
Technologies Used: Rust SDL2
Date: November 2020 - December 2020
KillBot was an arena survival platformer, and was made with a custom game engine in C++, with a web-based UI powered by the Chromium Embedded Framework (CEF). The web-based UI was cool at the time, although it's just a novelty of a by-gone era (since I don't know of any game that still uses HTML for their actual UI anymore). The engine is simple but supports event-driven animations, and the game itself has 3 bosses with several stages. This was my first publically released game.
Technologies Used: C++ SDL2 CEF OpenGL
Date: 2018
An isometric RPG game/engine written in C. It uses OpenGL for rendering graphics and features a dialogue system that supported conditionals. There was also an grid-based inventory system, and a basic combat system. Inspired by Baldur's Gate/Infinity Engine era RPGs.
Technologies Used: C99 SDL2 OpenGL
Date: 2018 - (3 months)
This is mistakenly called an ASCII roguelike despite not being a roguelike, though ASCII it is. It was a small game to do with PDCurses, and it was kind of cool to make. It's not very complicated and rather simplistic. Would be repeated again in various different projects like Wanderer. It is a short dungeon crawling adventure where you beat the Orc "Gorbalt the Cruel!"
Technologies Used: C++ PDCurses
Date: 2016 - (1 month)
SDL Pong
This was my first 2D game project, which is a polished game of Pong, there is a main menu and an AI driven player.
Technologies Used: C++ SDL2
Date: 2015
This portfolio site is one of my web development projects, and has it's main defining feature being the fact it is made using a custom static site generator! It's changed a lot over the years, finally ending up like this. There's also a neat bash-based custom CMS for a blog system!
Technologies Used: Common Lisp HTML5 CSS3
Date: 2015 - Forever?