▊ Duality (2018 - present)
Solo development of an original FPS game created using the Godot Engine
- Game design (original mechanics/concepts that I’ll write about soon!)
- Gameplay and netcode programming
- Shaders, models, maps and sounds
Elevator pitch: round-based Quake
-style duel gameplay split between two parallel worlds. Trying to bring the bite-size time commitment of fighting games to the arena FPS genre without boring everyone to tears.
Yes, there’s another game called Spectre Divide
with a mechanic named Duality. I started work on my project in 2018 long before that was announced. This is still slowly progressing even though there’s a big risk of looking like a copycat!
With this project, I’ve taken what I learned from working on si
and blended it with my software engineering and DevOps skills developed in the workplace.
- The technical side of this involved learning
Godot
andGDScript
, along with dabbling in many game development topics such as shader programming and netcode. - The majority of the work has been to think really hard about the game’s design. The “arena FPS” genre has been oversaturated for a few years now with a large number of games that are a bit too similar to
Quake 3
.- I created several original item, weapon and movement mechanics, and tried to develop an original (if a bit abrasive) art style.
- I created the game’s art assets as well
- The initial 3D models (for items, weapons and projectiles) were made using the Spaceship Generator tool which drives
Blender
viapython
.- Later, I moved to using Dilay instead
- I did a lot of prototyping using imported
Quakeworld
maps (bsp-to-Godot mesh conversion)- Later, I moved to making my own (bad) maps in Trenchbroom and bringing them into the Godot side using Qodot
- The sound side of the game has not received as much attention. Frankly, I used a bunch of freely available clips from sites like freesound, short snippets made with DAWs like LMMS and placeholder sounds taken from
Quake
andHalf-Life
.
- The initial 3D models (for items, weapons and projectiles) were made using the Spaceship Generator tool which drives