Friday, 22 April 2016

How to create a game app

 This series of articles are written exclusively for people who have never done any Android game programming before but would like to learn how to create your own game app. I will explain how you can create an app for free, which tools to use and how to use them. Where to get your graphics and sound assets and how to create them yourself, if that's what you want, for free or on a small budget.

Welcome to the first of many articles that will take you by the hand and teach you how to get started with app development and the art of Android game programming and app development, I can't include Apple's iOS in these articles as it would become overly complicated, if Apple is your preferred platform then you'll have to look elsewhere, sorry.

I will answer a lot of questions you might have about mobile game development, where to start and how to proceed on the right footing. The app advice I'm about to offer is taken from years of experience, trial and error and many sleepless nights, you are going to owe me big time for this!

You will not need any previous programming experience but what you will need is a lot of patience. Programming an Android game is a long and often tedious process involving a lot of trial and error, the emphasis is on error as you will come to see. If you're the type of person that has a very low attention span and must get everything done quickly or you get bored easily then this is not a job you should be taking on. Ergo, mobile game development is suited to people with artistic tendencies, inventors, entrepreneurs and people with good problem solving skills.

A decent understanding of basic mathematics is preferable but not essential as this can be learned on the fly, however, if you find basic maths confusing then you are really going to struggle and I would recommend you use an app builder tool. If mathematics fills you with dread then reading the rest of my articles would be a waste of your precious time, clicking on this link will help you to find what you need List of App Makers. Thanks for visiting and good luck with creating your app, I honestly wish you all the best and I know you will have fun doing it.

Learning a programming language is not a trivial task but in my honest opinion it is the only way you are going to make any type of game you can possibly imagine. Once you know the language and you've got the experience the skies the limit to what you can create, you can't say that with App maker tools so read on.

Creating an App


 First thing first. Let me tell you my background and how I started. Back in the eighties I bought myself a Commodore 64 home computer, the 64 stood for 64 Kilobytes, that was it's memory. To put things in perspective this article is already bigger than that. In those days home computers came with a manual that showed you how to program them in BASIC (Beginner's All-Purpose Symbolic Instruction Code) and I would sit at my TV until the early hours creating simple games at first then progressing on to creating more complex ones, the first noteworthy game I remember making was Asteroids. Not my invention by the way.


 I didn't know how to write machine code, that was something you had to go to university to learn and I was far too busy earning a living doing a 9-5 job to pay the rent at that time. But with the simplicity of BASIC I was hooked immediately and bought other home computers, read their manuals, learnt their BASIC language and made games on those, it was very easy to do!

Here's a sample of what BASIC looked like in those days.

10 a$="hello world! "
20 PRINT a$;
30 GOTO 20

You don't have to be a genius to figure out that hello world would be displayed on the screen over and over to infinity, until you hit the break button on the keyboard that is.

Android Game Programming


As computers became more and more powerful and they were able to do more complex things BASIC was just too simplified to accomplish what you see in modern day games. A new breed of programming language was needed that could handle the many thousands of lines of code in a more modular way and compile and run them at far greater speeds. This is where Object Orientated Programming came into play, the way Java works and ultimately the backbone of the Android operating system. Don't panic! You are not going to have to learn any of those very complex languages which would take many years to master, frankly your every day Joe like me is not going to be able to achieve this level of expertise. Thankfully for us some very clever people have taken all of them and packaged them into a relatively easy to learn basic style of programming language. We can now accomplish what would have taken years to learn, and even more years to code, and do it in a matter of weeks or months depending on the complexity of the game we want to make.

Here's a video montage of what is achievable when you learn the language I am going to teach you.

 

I would not be doing you any justice if we just dive into programming at this point. It's important to do the preparation and  research first, after all if you have no idea where to start then how can we start to program it?

Mobile Game Development


I trust you have read this far because you have an idea for an Android game that you would like to make. Even if you don't it's important that we progress in an orderly fashion starting with an idea, putting it to paper to get the layout right and do some research first.

Create your own Game App


Let's start with an idea.
Has this Android game already been made? Go to Google Play and search for it now.
How many variants of this game exist? None I hope. If not then why are you trying to make yet another one? I hope it's not because you think you can make some money from it because somebody else is doing so. Or do you think you can do better? If this is what you think then I strongly suggest you download the game and play it first. Have a pen and paper in front of you and take notes on what fundamental flaws you find in the game and what ideas you have to improve upon it. If you can't write down anything then don't do it, you are only going to waste months of your life creating a game app to see it fail, I'm not going to list all of the reasons just take my word for it.

If there are many variants of this game and you are adamant that you can do better then you must play the other games too and take notes. You never know, one of the less popular similar games might have done just what you have been thinking but haven't gained popularity yet, but they will have by the time you've made your version. Are you willing to work for hundreds of hours on a hunch?

Listen to me. If you can't think of an original game idea don't worry about it for now, first of all let's learn how to make a simple Android game. Once you start the learning process and start making things happen on the screen your brain is going to become more active and those creative juices will start flowing.

If you have an original idea for a game then congratulations you're half way there but first we have to start with the basics of Android game design which we are going to cover in the next article.

 About the Author


Martin is the chief programmer for Magical Games the creator of the general knowledge quiz game - Game Show Adventure a game designed for Android tablets and mobile phones. If you're following these articles then please leave comments below, this will give us the incentive to keep on writing and more frequently. These articles take many hours to write and feedback makes it all worthwhile.