Good Knight Story
A free to play game for Android and iOS. I had the pleasure of working on this game for my client. Not only was the client an awesome guy to work for, it was also a great learning experience for me and really humbled me with every new technique and trick and method I learned / devised to bring this game to market. I'm not going to give a full product description here as you can read that on the various stores or just download the game and play it to get the whole story... but in short, you play as a knight on a quest to save a princess. To do so you need to defeat hordes of enemies using attacks powered by chaining together sets of matching tiles. Victories gain you coins and coins can be spent on weapon purchases / upgrades or buying instant use spells. The game is filled with non stop super cheesy humor that has had reviewers comment "The dialogue is so bad it's good" or "I cracked myself". Poor old Rusty. No knight has ever endured as much as he... :D Especially in the tavern where the game takes on a slight RPG element with different paths through the dialogue and new weapon unlocks or coins only available via the correct navigation of the dialogue. Oh the bartender(s) give him hell in the most hilarious of ways... For something that, at first glance, looks like a simple game there is actually quite a lot going on under the hood. During development a lot of the data was stored online so multiple people could update it as required. Some of that data required in-game actions to be performed so I had to create a method for calling functions in Unity from data stored online. In doing so I created a means whereby anyone could change how the game worked during the development stage without ever even seeing the game's code. It all worked quite nicely but it wasn't until the client commented on it that his words made me realise what I had done... I had created "a mini programming language inside the game". It sounds quite dramatic when put that way but I liked thinking of it like that. Ego trip :P In my eyes, though, from a development point of view, what really makes this game stand out is in how it was made. Unity offers a 3D engine and the Sprites system for 2D games. Good Knight Story was made with neither of these. Instead, the entire game was made using the Unity UI (or UGUI as some like to call it). Before the latest release of Unity, the Unity UI had 9 slicing which was not available for sprites and 9 slicing came in pretty handy for dynamically changing speech bubbles, to give you but one example. Everything from tile selection to explosions and absolutely everything at all was done in Unity UI. The only exception in this entire game being the character animations which was done in Flash and then imported into the project. This was done because a lot of time and effort went into creating all of them before I started working on the project and redoing them as sprite sheets just wasn't viable. So with the exception of the characters, everything else was done using nothing but the Unity UI. This was not a restriction but a joy to work with and it is part of what made this game such a joy to work on. All and all I have nothing but good things to say about the entire production: Awesome client, fun game to code and even more fun to play. Fun fact: Since I was often required to play through all 100+ levels I built in a cheat to instantly kill any enemy (Editor only, sorry guys :P). As a result of my regular play throughs and constant use of that button I earned myself a superhero title: K-Man! :D
Jacco Jansen
Dr - Programmer