Games

Click for detail
Tap for detail
Create an RPG with intense levels of interactivity by removing the dependency on a GUI.
Quest Command
Description
I love games that let you interact with the world. Quest Command is my attempt to remove the effort needed to build a gui, so I can spend more time on deep systems and interacting with the world.
How to Play
See the readme to run the game in docker or using the java jar. All commands are typed into the console.
Iterations
Latest
My only game that lacks a gui, and not surprisingly the only game I've stuck with a single iteration. Partially also due to using a more modular event based system that requires less full system knowledge to work on.
Collect parts to battle bots
Mechamon
Description
Inspired by Pokemon and Medabots, battle other bots to acquire parts, and then fit your loadout to the task at hand. The hope is to make each part's ability unique, and also to use it to interact with the environment (swim, climb, break obstacles, etc).
How to Play
Map Screen: Arrow keys to move, Space logs the tile type, Z starts a battle on that terrain.<br />Battle Screen: Arrow keys to select an option. Space to accept that option, Esc to go back a menu.
Iterations
Latest - KorGE
Latest iteration, now written with KorGE. With this go I renamed from Automon to Mechamon, and started using KorGE, the first game engine I've really liked and not felt constrained by.
Scrappers - Spring
In this attempt I tried to go for the thinnest possible slice by just focusing on a battle, without a map. I also gave up and used spring and angular to attempt to avoid my gui woes.
Automon Suit - Zircon
Calling this version automon suit reflected my move to the idea of a wearable suit instead of an autonomous bot. Using Zircon for the front end helped me get the map part up and running quickly, but I still quickly became frustrated with building the gui.
Automon - JavaFX
My second attempt at this game idea, made in java instead of Unity. This attempt used JavaFX for the UI and played with the name 'core gear'. Also worth noting that this was built before I knew about git, and so the history is mostly lost due to a poor port from svn.
More than a pilot
Stars Between
Description
Inspired by Star Trek and FTL, I want to create a starship game that's not just focused on combat. I've likely spent over a thousand hours on different iterations of this game.
How to Play
Planet Generator: Turn off auto update on web as it can slow things down. Drag values (like seed) to change them, or double click to type/edit.<br />Ship Builder: Try different modes to place tiles and watch air flow, etc.
Iterations
Stars Between - KotlinJS
Latest iteration, now written with KotlinJs. Inspired by how nice wildermyth-legacy was to develop. I'm hoping writing html and css will help me more quickly build out the gui layers. Effectively combines the portability of Korge with the web UI I tried in the spring iteration.
Stars Between - Korge
An attempt written with KorGE. I really like Korge, but still ran into issues quickly building a UI.
Stars Between - Spring
My last commit before moving to KorGE, this version attempted to eschew gui pains by just making a terribly performant spring app and angular web page. While it was much nicer than any previous gui tool, creating controllers and services and web sockets to make it run not only was terribly non-performant, but also caught me up in loads of wiring code. While I find html and css easier to style than KorGE UI, KorGE far surpasses any other Kotlin compatible UI I've used and it's benefits far outweigh trying my ridiculous web hack.
Starship Jr - Java FX
I thought if I could reduce the scope of the game, maybe it would be easier to manage? This burnt out quickly when I still had to fight JavaFX to build a UI.
Starship Jr Ship Builder
I intended to create a separate ship building tool from the main game, but didn't get very far.
Biome Viewer
I thought breaking the project into multiple libraries would help me, and thus learned the downfall of too many micro services.
Utility
These saw my move from maven to gradle.
Play Space
I also moved some of this code to Kotlin once I started learning it.
Character
I also made an effort to convert from Swing to JavaFX.
Health Center
Ultimately all these services created a web of dependencies that I wasn't mature enough to manage, and my problem space was made no smaller.
Planet Generator
I did have fun with generating planets though.
Starship
My first iteration, made before I knew about git or even SVN. I used to copy my whole project folder every so often to make a backup. This was my first real hobby project, and I made a hundred mistakes that I now fondly look back on. Front end built with Swing.
Prototype metroidvania with a focus on swinging
Vex
Description
I really want to build a super mario world style game where the focus is on exploration, alternative exits, and swinging as a main traversal mechanic.
How to Play
Use a controller or arrow keys to move and space or A to jump. Z and X (or LB and RB) let you dash. Enter or X button let you interact. You can interact with exits. (Jump on world map to enter a level).
Iterations
Latest
A port to Korge.
LWJGL
I decided to go full Minecraft and try doing the low level graphics myself. Turns out, this was still painful. While drawing to the screen wasn't terrible, I ran into issues trying to get my collision maths working.
LibGDX
My second attempt (after a lost Unity project), Lib GDX seemed simpler than going full LWJGL, but wasn't worth fighting for when an update suddenly broke the repo.
How many can you save before you run out of fuel?
Satellite
Description
An attempt to make a game in a single day with a friend, while he also learned both Kotlin and Korge. We struggled to understand box2d, especially given the multiple levels of porting.
How to Play
Arrow keys to move and thrust. X to toggle Flight Assist. Lateral thrust with E and Q. Supports controller.
Iterations
Hackathon
What we built mostly over a one day min-hackathon, though we did prep work beforehand and hope to keep working on it afterwords.
Prototype beat maker inspired by It Takes Two
Beat Looper
Description
While playing It Takes Two with a friend we found a really neat beat maker tool in the game (in The Attic: Rehearsal), and I wanted to see if I could quickly replicate the basics of it.
How to Play
Each board is a different instrument. Columns affect timing, and rows affect pitch (different samples). Try to make an interesting beat!
Iterations
First Iteration
Used Korge to quickly be able to play sound and deploy to the web. Very rough prototype with bad sound quality and awful visuals.