The Making of The Descent

5 Years of Hubris

The Descent was originally conceived in early 2010. Back then we had been experimenting a for years with many types of game engines and technologies. However our interest in gaming back then was purely academic. We knew that we wanted to experiment with games and that making games was far more interesting than building payroll applications or enterprise software. Between our college years and 2008 we had played around with Java, programming with DirectX (using DirectDraw), and even experimented with established game engines such as Valve’s Source Engine. We never really developed games to full completion, just tech demos or small games or graphics applications showcasing features. We lost interest easily in the apps we were building back then. We just liked trying some cool ideas and then moving on to the next thing. In 2008 I ported a mini game from Nintendo’s Wario Ware Inc (for the Gameboy) called DONG DONG to the Microsoft XNA platform. In my opinion that could be considered our first released game (or port). We posted the game installation file in some website and forgot about it. Shortly after that experience I opened a boxing blog called Boxing Highlights (now defunct) which I ran for 2 years. After closing down the blog in early 2010 (I lost interest in boxing), we decided to venture into working with games in smartphones.

Back then we didn’t know Objective-C. I don’t remember if we owned Mac computers (which are required for iOS development), but we made the decision to try Android game development because I already had some experience in Java so Android seemed like a sensible choice. We wanted to create a small game that we ourselves wanted to play so we decided to build a game inspired by Paper Plane (a mini-game from Wario Ware Inc.), one of the very few casual games that had stolen so many hours from our lives.

I began the core of the development during Fall of 2010 without many graphics assets until we on-boarded a freelance graphic designed into the team. There weren’t many Android game frameworks at the time so we decided to build the game using Android’s built-in canvas functionality. This proved to be a major mistake. We developed an MVP with core gameplay functionality but didn’t have a clear vision or an end in sight. We also started experiencing technical constraints with Canvas that we tried to ignore at the time (most of these were out of memory exceptions). By early 2011 we decided to release the game before summer of 2011 because I was going back to school for a Masters degree in August 2011. That was our initial target but we were still working without a clear plan, without a committed designer (a freelancer whose name will remain undisclosed but who will be referred to as Claudia Pulcher in this article) and experiencing technical flaws in our game implementation. Our technical flaws were deeply rooted in the graphics library selection. We didn’t have experience in developing real-time games for Android and we ended up picking Canvas as our de facto graphics library for development. We paid a dear price for this as we started experiencing many performance issues closer to our “imaginary release date”. We considered moving to native OpenGL (we were still thinking of doing everything ourselves instead of using a relatively established graphics framework) for graphics rendering but never did it due to the effort involved. Before going back to school I decided to fly to Bogotá (where Elioncho was residing at the time) to undertake a 3 week development crunch which we thought would complete the game. It never happened.

During those 3 weeks we started adding more features and developing a lot of new functionality ourselves (scope creep galore). We wanted to have leaderboards and achievements but we ended up developing that functionality ourselves. There was no Google Play Game Services at the time. Those features ate up around 2 weeks of our development time. But we still didn’t have the rest of the game developed (all the levels, all the small easter eggs we wanted to include in the game, and also the addition of sound effects and original music tracks). We also faced many challenges with Claudia at the time. Frustrated with all of these challenges we parted ways with Claudia and after the 3 weeks of development we still had an unfinished game under our belts and no designer.

After that we basically placed The Descent in the back-burner between the rest of 2011 and early Spring of 2014. During this 3 year hiatus Elioncho and I went our separate ways to focus on other projects (In 2011 Elioncho started developing YouOrderIt and I spent 2 years pursing a Masters degree from Carnegie Mellon University). Also, in the middle of 2012, even though we still had The Descent in our minds we developed Condor Wars for Android, a recreation of a game Elioncho had developed in Assembly language during college. There were many psychological implications behind the development of Condor Wars. During Summer of 2012 I was doing an internship close to Detroit, Michigan but was desperately seeking a side project to work on during my spare time. One day we brought up the idea of porting Condor Wars to Android “just for the heck of it” but in reality I believe we did it for the following reasons 1) to regain confidence in development after falling short with The Descent and 2) to use the port of Condor Wars to Android as a “guinea pig” to learn about the pros and cons of developing and releasing a game to Google Play. We released the game in September 2012 but shortly after removed it from Google Play. Condor Wars is now vaporware.

In 2014 something compelled us to bring back The Descent from the dead so we decided to continue where we had left off. However we decided to focus on the iOS platform. In April 2014 we on-boarded a new designer – Quintus Sertorius (his real name will remain undisclosed) to start working on the graphics for the game. We decided to develop the design elements for the game (sprites, backgrounds, etc.) from scratch. With a new designer under our wing I worked on a rough prototype for The Descent iOS using the Cocos2D framework during Spring of 2014 and handed off my work to Elioncho during before Summer of 2014.

By June 2014 Elioncho decided to continue the game by building on top of the rough prototype but switched from Cocos2D to SpriteKit since the latter is an official Apple framework that looked promising (it also shared many structural similarities with Cocos2D, which we realized lacked sufficient documentation). However we were focusing mostly on getting the graphics right this time so between April and July 2014 we worked closely with Sertorius while doing minimal development work on the new prototype. By the end of July 2014 Helldorado Team went on a 4 month hiatus again and The Descent went into hibernation mode due to personal reasons and other side projects.

In October 2014 development work on The Descent resumed but at a plodding pace as we continued to work on the graphics and tried to finalize the official assets for the game. We went back and forth too much with Sertorius regarding the finalized graphics deliverables so we decided in February 2015 to part ways with yet the 2nd The Descent designer. We were again in the same situation – we had a working prototype and no designer.

Between February 2015 and May 2015 we were swamped with other projects as well – we had to develop additional functionality for YouOrderIt which we wanted to include in our product roadmap and some prospective clients were pressuring us to deliver. But even though actual development of The Descent had stalled for a couple of months, we decided that 2015 was the year for release. We set a target for June 2015 to deliver the game or “die trying”.

We started juggling work on many fronts – YouOrderIt (web and mobile) and The Descent. Early during 2015 Elioncho did some freelance work for Carlos Forero of Milmentes and made an arrangement that would allow Forero to work with Helldorado Team as the official designer for the game. In April 2015 we on-boarded The Descent’s final designer and by end of May he had produced all the graphics that ended up carrying the real feeling of the game we had always wanted to play. The bulk of The Descent’s development work (now with SpriteKit and the integrated graphics assets) was developed between February 2015 and June 2015.

In June 22, 2015, after almost 5 years of a development schedule that we described as “half a decade of sweat and blood”, during the middle of day, Elioncho made the last code change of the The Descent, ran some unit tests to validate functionality and clicked the “Publish” button within the deployment wizard of Xcode. For 5 years we had felt like Atlas holding the Earth under his shoulders. Having been burdened by past frustrations and by 5 years of trials and tribulations, we mentally let out a long, deep sigh as a smile formed in our faces.

Leave a Reply

Your email address will not be published. Required fields are marked *