Want to make an Android game?
Right now, the Google Play Store is stuffed full of pay-to-win garbage, while iOS enjoys a smorgasbord of excellent indie titles. We need aspirational developers like you, and stat!
If you’ve never made a game before, it’s hard to know where to start. What tools do you need? What programming language should you learn? Will it be difficult?
Read on and let’s get you on your way to make an Android game!
Where to start – coming up with your game idea
When you make an Android game, the best place to start is with a vision for what you plan to create. It might sound obvious, but choosing the right tools and workflow will depend on the type of game you have in mind, be it a puzzle game, a 2D platformer, or a VR experience.
the best place to start is with a vision for what you plan to create
My advice is to start with something relatively simple. Indie game devs tend to choose game styles that minimize the amount of time and work they need to invest. Look at Limbo for example, which uses silhouettes — rather than detailed sprites — and an eerie, music-less soundscape.
Decisions like this not only help to set a game apart, but also allow the developers to cut down on man-hours.
Puzzle games and endless runners that let you build a simple game loop that can be played ad-infinitum take this concept even further!
Set out to make the next PUBG and you’re looking at years of development for a large team. Start with something small as a way to learn, and you’ll be able to start building a fan base and gaining experience. You can also attempt a bigger project in future, once you’ve gained some momentum!
Write down some ideas:
- What genre will this be?
- What is the hook to set it apart?
- What is your elevator pitch?
- What will the graphical style be?
- What tool will you use to make the graphics?
- What about sound? How will you create/acquire music tracks and sound effects?
For a few tips, check out this post on level design in Android Games. Or why not spend a little time browsing other games in the Play Store for inspiration?
How to make an Android game with Android Studio – and why you shouldn’t try
Once you know what you want to make, you need to decide how to make it. There are a few different options depending on your skill level and the nature of the project.
The “traditional route” as it were, is to make an Android game using Android Studio. Android Studio is the official tool for Android development, which comes directly from Google and supports a huge range of projects.
To use Android Studio, you will need to learn either Java or Kotlin – the two officially supported languages. Either way, you’ll also need to download the JDK (Java Development Kit), and familiarize yourself with the Android SDK (software development kit), and probably a little XML.
The SDK is a set of libraries and tools from Google that allows Java to interface with the Android OS, and that helps Android Studio to turn your code into a working APK file. Android Studio will provide the interface where you’ll type all of this — what’s known as an IDE or “integrated development environment.”
The SDK is a set of libraries and tools from Google that allows Java to interface with the Android OS
It’s a lot to learn, and if you want to make a platform game or something else graphically intensive, you’ll have a lot you need to create from the ground up. This tutorial will provide you with a starting point and show you how to set up a canvas and a thread to handle the graphics.
For a simple puzzle game, Android Studio is an option. For anything more complex there are much easier methods. Not even “professional” devs go with Android Studio for game development, and complete beginners face an uphill struggle in terms of the learning curve for even simple games.
Unity and Unreal – the smarter choices!
For the reasons stated above, savvy devs typically opt for either Unity or Unreal when it developing a game.
These tools combine an IDE with a game engine. In other words, they provide an interface for you to handle code, and offer a lot of ready-made physics and behavior to mess around with. Instead of needing to program how something falls through the air for instance, Unreal or Unity will simply let you tick a box saying “gravity” and it will be handled for you.
Stick with Unity for the vast majority of projects
Moreover, adding graphics to these tools is as easy as dragging and dropping them into your scene!
You’ll need a little code in both cases. Unity uses C#, which is similar to Java, but you can get by knowing very little. Unreal uses C++, but also gives you the option to use a kind of flow chart instead of actual script.
Although Unity and Unreal use the Android SDK (meaning you still need to download it), they handle it in the background.
Both these tools are free, and they’re customizable enough that you can pretty much make whatever you want. They’re also cross-platform, meaning you can easily port your game to other platforms like iOS, PC, or even Xbox One and PS4! Unity is preferred by most professional devs on the Play Store, so there’s really no limit here in terms of what you can achieve.
Unity is slightly easier to use and better suited to mobile and 2D games in particular
As to which is superior — Unity or Unreal — that depends on who you ask. To cut a long story short, Unity is slightly easier to use and better suited to mobile and 2D games in particular. Unreal is capable of slightly superior 3D graphics, though this is more likely to affect PC and console development.
Game builders – the easy way out
If you really want to keep your coding to an absolute minimum when you make an Android game, you might prefer a game “builder.” These tools let you build games by dragging and dropping various different elements into place, and potentially doing just the smallest amount of coding.
GameMaker: Studio is one such tool and it’s simpler than even Unity or Unreal 4, relying on a watered-down code called GML or “GameMaker Language” for basic scripts. While it’s not free, it won’t cost much for a basic license.
While GameMaker: Studio has been used to build some commercially successful titles, devs might encounter some performance bottlenecks and limitations in what can be accomplished. Other GameMakers will limit your options further, forcing you to adhere to templates, or use generic predefined graphics.
I think it’s better to stick with Unity for most Android game projects. The only exceptions are if you want to learn Android Studio with a basic puzzle game project, or you want to make something cross-platform with top-tier graphics via Unreal 4.
Starting your project
After familiarizing yourself with whichever set of tools you plan on using, the next step is to start your new project. Staring at that blank screen for the first time can be rather daunting, but if you keep things simple you can start seeing results pretty early on.
Most games will require a basic set of mechanics and rules first
Most games require a basic set of mechanics and rules first, so start by designing your game’s feel (how fast does the main character move, what are their skills?). During this stage you will likely use placeholder graphics and probably a kind of “sandbox” level for experimentation.
Once you have a playable game in place, the next steps will be to design levels and implement your graphics and resources.
Level design is a lot of fun, but play test things vigorously with friends and relatives. Remember: that hard doesn’t always equal fun! Make sure there are some easy levels early on to help your players learn the mechanics.
Creating graphics and sound can likewise be a lot of fun, but also time consuming and challenging. If you have skills in art and graphic design, you may wish to handle this yourself and dedicate some time to it. If not, you’ll probably be better off using another designer. You could ask a friend to handle graphics for you, or even outsource the process using sites like 99Designs or Fiverr. This is also a good way to get graphics for your store listing and promotion.
Creating graphics and sound can be a lot of fun, but can also be time consuming
Once the graphics and levels are in place, all that’s left is to create some kind of interface. You’ll need a title screen, a menu, a way to save your progress, and so on.
The great thing about deciding to make an Android game is you can keep on updating your project even once it goes live. Don’t be a perfectionist and put off releasing the game. Get it out the door early, and improve on it if it finds an audience.
Of course, let us know what you’re going to build down below, too!