Odd Knight, a game developed in three days.

Is it possible to develop a game in just three (yes, you read that right) three days? Well, Juan Alfonso the man behind “Odd Knight” explains us how it’s done.

What the game is about?

The main concept: Fast paced ARCADE Rogue-Like game.
Fight your way through an endless dungeon, levelling up your character by picking up the Loot drops of the Enemy Minions you destroy!

How did you build it in 3 days?

First, came the inspiration. I was in a RPG mood and also really missed playing really hard Arcade games that were absolutely unforgiving to the mistakes you would make, “mis-timed your attack?, mis-timed your special power? engaged a certain enemy in the wrong way?…. Bamm! you are Dead. No worries though, there are no loading screens, no press Ok to start again bla bla bla, you go right back into the action so you can try again”

Second, the “Design Document”….. yes that is it… there is no point on wasting time for something that is just for me and no one will ever see…. What matters is THE GAME!, hehe.

Third, I constructed a very simple moc Scene, only using 1 Cube (Scaled accordingly) per Game element, Floor, Player, Enemies, etc. Why? This allows me to determine the size of the objects that will be in the game, test Camera Angles, Lighting and the Feeling of the game in general.

From here I just make a copy of this moc and start to replace each placeHolder asset, with the actual game pieces.

For example for the Character you play, initially it was just a capsule (functionally it still is). Add some code to make it move, make the camera follow it, and here comes the magic (or maybe I’m just crazy), I start to imagine as if the game is already done, and I start playing with this moving capsule pretending that the it can hit with his the sword, using magic, enemies attacking(cubes standing still), etc. AND most importantly taking notes (in this case mentally) on the key ideas that come up.

Due that I have 8+ years of experience programming video games I have gained the ability to foresee what aspects of a game I can HardCode and what needs to be Generic(Programming Design Patterns, READ UP! if you’re planning to develop/program games someday)

And from here it’s just a iteration process:

1) Define Task (game mechanic / element) ->

2) Does it need to be well Programmed or can it be HardCoded? ->

3) Develop ->

4) Test (this usually takes 2-8 times more time than the Develop time) ->

5) Happy with it?

  – Yes -> Repeat from step (1)

  – No -> sit still staring at screen thinking, trying to specifically define WHY I don’t like it -> Repeat from step (1)

Tip: If you are stuck in step 5 in “No” for too long, stand up, go for a walk, or in my case a Longboard Ride, the answer comes to me and I rush back home.

The most important thing for me is to truly know/understand what it is I’m trying to achieve.

The wrong way would be something like: “what color should I paint my house?” and you start painting the wall without even asking yourself first “what is my favorite colour?”.

Working without a clear goal is the number one reason why projects fail, even simple ones like this. (I know… trust me)

What did you use to develop the game?

Unity3D, I even made all the graphics for only using Unity3D’s Cube, and animated them by code.

Screen Shot 2014-01-04 at 11.10.59 PM

What was the biggest obstacle and  how you solved it?

Due that this was a simple project for me, technically-wise, the biggest obstacle was forgetting to eat for 16 hours the first day of development… Don’t do that… Mr. Brain needs food to work properly.

And as always controlling impulses such as “Wouldn’t it be awesome if I added THIS THIS THIS THIS???…..”.  Take step back, determine what is the most important thing, determine that the develop time is not personally overwhelming, ok develop that (know your limits). Still have energy/will power? Ok we can do more things.

If you want to keep in touch with Juan Alfonso, you can follow him on twitter (@ClairvoyanceDev) and you can also check this link to give Odd Knight a try!

Published by

Pablo Farias Navarro

Pablo is an educator, developer and entrepreneur. Founder of Zenva, Pablo has published over 30 online courses that teach game, app and web development. Pablo has also created educational content for companies such as Amazon and Intel.

Share this article