In this series of posts, I will be reviewing more in depth many of the design decisions I made when creating my first game, Run Hobo Run. I will look at the initial design as well as the reasons behind redesigning it and will continue with an in-depth look at specific game mechanics, why I chose them, and how they were implemented.
The Decision to Redesign
After several months of struggling through programming my first game I finally thought I was done. The game was working with no discernible bugs, the real question though, was it something people would enjoy playing? My primary goal for my first game had always been along the lines of "get this one done so you can learn the process and worry about making a great game as the second one". This fit well because my original plan was to finish the game in 2-3 months. Well, 7+ months and a lot of learning later I was still finishing it.
And here lies the problem, with all this work and energy put into making it did I really want to release something that I wasn't proud of?
The decision really boiled down to three options:
- Release it in its current state (which was mediocre at best)
- Don't release it and chalk it up to a 7 month learning experience
- Redesign it and release it in a more polished state
I wasn't in love with the idea of releasing it in it's current state, call it a bit of self-consciousness but I didn't really want to show my friends and family a half-baked game that wasn't very good. I gave up a lot to start out on my own, and honestly didn't want to look like a fool. Not releasing it was an option I wasn't in love with either, my budgeting plan and personal savings allowed for between 1.5 and 2 years of operating with very little income, but not releasing anything meant I would be banking essentially everything on the next game being a financial success. Since I've been living with my parents my expenses are relatively low, but I still needed to start bringing in some income to prevent burning through all my savings. So it looked like option 3 might be the best, but I was not without some trepidation.
Designing the first iteration had taken me so much longer than anticipated (mostly due to inexperience with OpenGL and not sticking closely to a design plan), so I was worried doing a redesign that would involve new features would just be another time consuming disaster. However, I decided that with the other two options in mind, a redesign was the most viable.
One of my major pitfalls with the first design is I only had a loose list of features and game mechanics that I wanted to implement so I kept changing things on myself costing a lot of time. For the redesign I knew I needed to go in with a plan of what I wanted to achieve. I started by creating a list of major features and gameplay changes I wanted to implement. I spent two days brainstorming and detailing everything that I wanted to do and putting together milestones and detailed tickets in Unfuddle.
The major concepts I wanted to implement were:
- Make the gameplay more entertaining
- Adding a store for costumes and other in-game items
- Adding objectives and missions to drive play
The original gameplay got very stale quickly (I'll be discussing it in detail in the next post), it was just out and out boring after you had played a few times. The controls within the gameplay were also a major problem, whenever I would hand my phone to someone to have them test it, they had no idea how to control the character. I learned (the hard way) that people have certain expectations when it comes to controls of mobile games. Don’t be fooled and think that an instructions page is going to make a difference (no one reads them), so I had to take a hard look at how a change in controls could also fit with more exciting gameplay.
There were also no external drivers for a player to keep playing, there weren’t any kinds of goals, no social interaction or leaderboards, and nothing to reward the player for playing for a long time. I decided the best way to address this would be through an in-game store where the user could purchase costumes and upgrades with an in-game currency that was earned during runs (rewards for playing) as well as adding in a series of missions/challenges for the player to complete (goals), and finally connecting to Google Play Games to manage leaderboards (social interaction). In the end I think some of the resulting implementations fell short of what I would have liked, but it’s better than nothing, right?
I gave myself a timeline of two months to complete everything and got to it.
Download Run Hobo Run from the Google Play Store