Two weeks ago, I released my first Android game: Mr. Tiddles. As with any sizeable project, there was much to be learnt, both technical and non-technical.
In this post, I'll talk about the three main non-technical points I picked up along the way.
1. Just do it
Despite wanting to make a game for a long time, it was only about a year ago that I actually sat down and really started. Before that, I had a long list of reasons as to why I couldn't do it: not enough time, sub-par skills, and so on. You get the idea.
However, I soon realised that I'll never be ready enough, and that time can be taken back one website and one TV show at a time. So one day, I decided enough was enough. I sat down and started with the simple goal of getting an image displayed on the screen.
What I discovered that day is: just do it. Start with your idea, get something on the screen, move it, tweak it and slowly iterate so it becomes closer what you have in mind. You will learn a lot this way. A lot more than reading, researching and trying to learn everything. Better yet, you'll have something to play with, so you can give your ideas a reality check.
2. Test, test and test some more
Once you have something that works, even partially, ask a friend for their opinion. The graphics don't have to be perfect (or even decent), nor does the game have to work from end to end; as long as the core idea is there, that's enough. What you want is people's feedback. More than likely, you'll be surprised at how differently someone interprets what you think is super obvious or easy.
Be warned, the feedback you receive will likely frustrate you and might even go directly against what you have in mind. If this is the case, you need to ask yourself "Why?". Don't jump in with a hasty fix, but determine what the root of the problem is. Keep making improvements, keep testing and if you still receive the same feedback, it might mean the mechanic doesn't work or you still haven't got it quite down pat yet.
Even after you've got something that more or less resembles what you have in mind, you should still continue to test it. By now you probably know the game inside-out, so you need someone to provide you with a fresh perspective. Is it too hard? Too easy? Is the menu and flow of the game intuitive? Do people understand what's going on?
3. Be prepared to change and leave out stuff
Depending on the feedback, be prepared to change your initial concept of the game. Sometimes, what you think is a great idea might not be as great as you think. It might just need a small tweak, or it might need a completely different approach.
Secondly, set yourself a reasonable deadline and stick to it. This means, be prepared to leave features out. More than likely, you'll have lots of ideas and features that you would like to be in the game. But as the deadline draws near, be honest with yourself: Does the game really need that feature to work? If not, consider leaving it out.
Personally, I think one of the most important things for your first game is to actually finish and release it. In order to achieve this, don't be afraid to leave parts out of the first release. You can always release updates with more features!