game design, code, writing, art and music

How I wrote my own 3D game engine and shipped a game with it in 20 months

My game Speebot is finally out on Steam! If you’re a fan of 3D platformers, be sure to pick it up while the launch discount is active. There’s also a free demo to try before you buy.

Speebot has been in development since January 2016, and I’ve been working on it in my spare time by myself as a hobby. I’ve done all the programming, game design, graphics and music. I’ve also written the game engine from scratch.

People often ask me why I’ve decided to write my own game engine in the year 201X, when there are multiple general use engines available for free. There are many reasons, but in retrospect I can say that “inventing my own wheel” was an even better idea than I initially thought it was.

Speebot is now available!

After 20 months of work, Speebot has been finally released! I sincerely hope that you will enjoy the game.

Here's what's on my agenda now:

  • I will monitor feedback very closely and try to release hotfixes to address bugs that I may have overseen as quickly as possible.
  • After most of the potential issues are fixed, I intend to create a Linux build of the game.
  • Steam Trading cards, emoticons and backgrounds will be added soon.

Have fun, and thanks for all your support.

Speebot is on Steam!

After more than 1.5 years of work, my game Speebot is on Steam!

The game, along with the demo, is coming out next Friday, but the store page is already up. I intend to listen to feedback very closely this weekend and push out hotfixes as required.

In about a month or so, when the potential bugs have been fixed, I intend to release a Linux version as well. I am also considering other store fronts besides Steam.

Also, check out this little album of Speebot gifs on imgur. I think it turned out to be a pretty good introduction to the game. If you'd like to support Speebot, you can help me out by sharing the Steam page and the imgur album!

Thanks for all the support! I can't wait to get started on my next game.

Second Speebot Demo

This is the second public demo of Speebot, full of improvements and fixes based on the feedback from the first demo. Below is the complete changelog.

New features:

  • A "Jump Hint" setting, which replaces top-down shadows
  • Angular deadzones, which make the analog stick way friendlier to use
  • V-Sync setting, on by default and configurable in the menu
  • Timer Mode (not available in the Demo)
  • Death counting, best times are recorded locally (for any% and 100% runs)
  • Statistics screen
  • Ability to restart previous level from the pause menu


  • Fixed crate collision bug (the "1-8 bug")
  • Fixed a collision issue with some rotated props
  • Most likely fixed a bug that would show shadow artifacts on some hardware when the shadows are off
  • Most likely fixed a bug with borderless windows having seams on some hardware


  • Added a default value for the controller deadzone
  • Rendering optimization of particles, text fields and UI elements
  • Way better analog stick handling
  • Analog stick is the default control mode for gamepad users
  • Game now asks you whether you want to use a keyboard or a gamepad before you start the first level
  • Automatic Borderless mode now fills the entire screen, and is now the default window mode
  • New bitmap font for black text on white background
  • Level 1-14 is a bit easier now

Play the first public Speebot demo!

Hi again!

After more than a year and a half, my work on Speebot is almost complete.

As it stands now, the game has 200 levels spread across 4 different worlds, a one hour soundtrack, plenty of varied gameplay mechanics to enjoy, cosmetics to unlock and extra modes to try out. For the truly dedicated player there is a post-game area that is unlike anything else in the game.

And to top it all off, there is a custom level editor built into the game to let the players create their own levels and share them with their friends.

Custom level editor in Speebot.
Custom level editor in Speebot.

The game is very close to being finished. I am currently in the final testing phase, although there are still some things that I want to add for the Steam release.

Because the game is powered by my custom game engine, it is likely that there are technical bugs that I could not find or reproduce on my hardware, and I'd like to fix them before the final release of the game.

This is why I'm releasing the first public demo of Speebot today! Play the first 20 levels of the game and let me know what you think. Report any bugs or performance issues here or through my contact page.

Update: second version of the demo is now available!

Enjoy, and thanks for all the support!