Drill Planet: How I developed and released a game to the App store in 69 hours

 

Yesterday I uploaded Drill Planet to the iOS app store. If the review gods are on my side, Drill Planet should be available before the end of July. This is how I got it out on time and with minimal monetary investment.

Note: You can play an HTML-5 version of the game I describe in this article on itch.io

Who are you and what is this about?

I am a part-time indie game developer with a full-time job outside the industry. From 2011- 2014 I release 3 games. I slogged through development with a few downloads and very little bit of press recognition.

For 2015 I am done making big games that take a long time and have set the goal to release a game every month in 2015. I want to experiment, learn, and get my name out there with a dozen tiny, exciting experiments.

Goals for Drill Planet

  1. Release a game on the ios app store instead of just a web portal
  2. Make it a platformer game based on this level in Mario Galaxy https://www.youtube.com/watch?v=p2tLdTE8mOQ
  3. Make a game with an “oh-shoot-one-more-time” play style such as flappy bird and jump car
  4. Get an early version on itch.io for early feedback.
  5. Build some infrastructure that will speed up development  in future games (such as mailing list integration and reusable scripts)

Instead of doing an tick-tock description of May, I made this fancy chart.

 

baseTemplate

Each colored bar represents one hour. I was very strict about those hours and used a pomodoro-style timer app and only recorded time in which I was productive for the full hour.
The labels are the top are the weeks I spent on the game.

“WAIT A MINUTE I thought you were doing this game in a month? That thing goes to 10 weeks!”

That is true! But! I got a base playable version of the game done in 3 weeks and posted it on itchio the last day in May. In order to get this game ready for the app store I had to return to it in July.

How I Saved Development Time

I wanted to focus on getting a minimal viable product released that looked good. These are some time savers:

Playtesting

 

Chart2

I didn’t do enough of it. For future games I want to submit an itchio build every Friday and post on Reddit’s “feedback friday”
I also plan to continue live playtesting with friends and at the monthly IGDA meetings.
Building up My Base

I was really proud of how much base reusable code I got into this game. All of these features will be need in my future games and I am glad I got them working now:

  1. Advertisement platform integration (ad colony)
  2. Using state machines (a really handy architecture that makes coding faster)
  3. A built in mailing list nag page. Getting lots of mailing list is a major goal.
  4. Documented and streamlined the app store workflow such as making a trailer, getting provisioning profiles and uploading it to the right channel.
  5. A splash screen with cool eagle sound effects.

Everything in orange is code that can be reused in my next game:

Chart3
To Be Improved

I still think this game too long to develop. If I am going to keep up a game-a-month pace I need to cut some things. Here is what took too long:

  • I can fix this in the next month by relying on bigger code base that will handle more of the rote tasks such as touch controls and level progression. I am looking at this one:  https://marketplace.yoyogames.com/assets/1707/platformer-engine
  • Spend more time per week coding. I need to set daily goals and be more productive during that time.
  • Circular platformer is WAY too ambitious to do in a month. I had to re-teach myself high school level trig, and churned for 8 hours just getting the controls to feel right and fix control bugs.As you can see, everything in orange is time I spent working on the touch-control scheme. Way too much.

Chart4

The Future of Drill Planet

I want to keep up with this, depending on initial reception possibly add more monster types, different world scenarios such as harder surfaces, different terrains, bigger circles.