How To Make Games for Android – May 2018
Ten years after the first launch of an Android device, the market for Android applications has never been bigger. As phones grow more powerful, with larger displays, faster CPUs, stronger GPUs, and up to 6GB or even 8GB of RAM, the phones we keep in our pocket start to look even more like computers than they did half a decade ago. Owners of the Pixel 2 XL or Galaxy S9 know how powerful their devices are, capable of pushing 1440p displays, powering VR headsets, creating augmented reality worlds with on-screen navigation or contextual information. That power has fueled game development on Android, too—just look at games like Final Fantasy XV Pocket Edition or Pokemon Go, which uses your device’s camera to fill the world around you with Pokemon available for finding, catching, and battling.
With mobile phones and devices as popular and powerful as they are, the library for games has never been larger on Android. However, the audience for every kind games is similarly large, giving many people the opportunity to start developing new game ideas and to get their games on the Play Store for people around the world. If you’ve always wanted to get your hands dirty at developing games for Android users, there’s never been a better time than today. It’s not the easiest thing in the world to accomplish, but with some practice, some training, and a lot of hard work, you too can get your first game up and on the Play Store in no time. Let’s take a look at the basics of game development for Android.
Have an Idea
The first key to developing a game for Android is simultaneously the easiest and the most difficult step to accomplish. While all the hard work comes later, the most difficult portion of designing a game comes down to having the right idea for a game. What do you want your game to accomplish? What genre of gameplay are you looking to tackle? In all honesty, there’s a lot to think about here, and it can be difficult to pin down all at once. If you’re trying to figure out where to start, here are some questions to think about as you plan out your game. Grab a notepad and start jotting down some thoughts—planning is the most important step in getting game development right.
- What do you want your game to look like? Don’t start drawing artwork just yet, but think about the aesthetic. There’s a reason retro-style games are so popular on Google Play: they’re easier to develop than console-grade 3D graphics.
- What genre are you looking to create? Some genres translate better to mobile than others. Platformers can work well, especially if you translate them into an endless runner. RPGs are another great genre for mobile platforms, because there’s so much room to innovate within the genre. Strategy titles, card games, simulation games, and racing games are all genres that translate well to mobile; meanwhile, first-person shooters tend to have a harder time making a successful transition to mobile.
- Do you want your game to be free, free-to-play, or premium? It’s best to know how your game is going to function before you go into development. If your game is simply free (or free with ads), you won’t need to worry about game balance for premium currency. Same goes for premium, full-priced games, though it’s important to remember that sometimes full-priced titles simply don’t sell as well as you might hope for. If you want your game to strive for free-to-play, it’s important to make sure the balance in your game accounts for both free players and those willing to pay. Recently, Harry Potter: Hogwarts Mystery found itself in some controversy because the first time the game asks you to pay cash to unlock more “energy,” your character—an adolescent in a game aimed at adolescents—was being strangled by a monster.
- Is your game aimed more at casual audiences, or are you trying to capture hardcore gamers? Casual games should be designed like major hits Temple Run or Candy Crush Saga; they can be played for minutes or hours at a time, and require little of your actual attention outside of some basic focus. Meanwhile, hardcore games should be more focused on getting people into the experience. This likely means developing characters, a world with a full background, a story with a three-act structure, and anything else that helps give players something to grab onto.What that means exactly is more or less up to you, but you should think about how you want your audience to play the game and what you want players to take away from the title.
Learning the Language
It’s important to familiarize yourself with the key words behind development for Android, especially if you’re completely new to the scene. If you’re coming in fresh, you’ll want to make yourself familiar with some programming languages. Android as a platform primarily uses Java, which is a notably difficult language to learn. Don’t worry too much if you aren’t up to the daunting task of diving into Java; Android can use other languages, and thanks to the dev tools below for specifically creating games, your involvement with the service might end up being fairly limited.
Though other languages are supported by Android, it’s still a good idea to know some of the basics on how Java works, and more specifically, some of the keywords in use with Java. Check out Beginners Book for a guide on Java for beginners.
It’s also important to grab the Android SDK (software development kit) from Google’s Android hub. You can grab the entire Android Studio suite if you want, but for game-specific development, you really won’t need it. The most important part is to have the SDK (along with the Java JDK, or Java development kit), because you’ll likely have to plug it into whatever development suite you end up using for your device. Before you dive in, you’ll want to grab both of those things to begin working with your tools. Not every game developer option is going to need access to these tools, but a lot of the major ones will, so it’s important to have them installed on your PC before you start out.
If you’re stuck, try using the Google Developer page here, which focuses specifically on making games for Android and other Google products.
Choosing Your Game Dev Tools
Once you have your idea and you’ve installed the basic Android development software on your PC, you’ll need to decide how you want to carry it out, and that means you have to think long and hard about what you’re looking to accomplish with your game. This is why it’s important to have an idea of what your game is going to look like before you rush into development, even if you aren’t settled on a specific art style quite yet. Choosing your development tools is no easy task, especially since most game toolkits require you to have a grasp on development terms and programming languages.
The first two major dev toolkits are fairly advanced stuff, but if you’re serious about game development, you’ll want to know them well. The first is Unity, or Unity 3D, a popular and widely-known engine first developed by Unity Technologies back in 2005, originally as a dev platform for Apple’s Mac OS X (now known as macOS). Since then, however, Unity development has spread fairly far and wide, able to be used in conjunction with iOS, Android, the PS4 and Xbox One, Windows, Linux, the Nintendo Switch and 3DS, and many, many more platforms. There’s a lot to love about Unity, including its price. A personal license is available completely for free, so long as you don’t make more than $100,000 annually from the games you create. From there, pricing raises to either $35 or $125 per month, depending on your needs and income. But honestly, once you hit that amount of income, you won’t have to worry too much about paying for your dev kit anyway.
Unity has received something of a bad reputation in the gaming sphere, with Unity’s free status often being used as a way to create quick games in order to turn a profit without much effort behind it, typically on platforms like Steam. That said, just because Unity has been used within bad platforms doesn’t mean it should be ignored or removed from consideration for your development needs. Major releases like Battletech, I Am Setsuna, and Tyranny have all used Unity as their game engine, each with their own distinct visual styles.
The second major dev toolkit is another candidate likely familiar to those who have experience playing console and mobile titles: Unreal Engine 4. The Unreal Engine has been around for even longer than Unity, ranging back to 1998, with Unreal Engine 4 having been unveiled at GDC (Games Developer Conference) 2012. In 2014, the engine became available through a subscription model; however, a year later, Epic Games (the developer behind Unreal Engine 4, as well as games like Fortnite: Battle Royale, Gears of War, and Unreal Tournament, all of which use some variation of the Unreal Engine) made the engine free to begin using. In turn, Epic asks for 5% of all gross revenue after $3,000 has been made per game in each calendar quarter. This all makes it a bit more expensive than something like Unity, but as you can tell from the list of games that have been developed inside the Unreal Engine, it’s a serious piece of tech.
There are other engines as well, typically less known than both Unity and Unreal Engine 4. Some tools, like Playir and GameSalad, are better for beginners than our two highlights thanks to their simple user interfaces and helpful tools, though you should keep in mind that some of these engines don’t support 3D. Moai is an open-source game engine for desktop and mobile platforms, allowing you to work on your games completely for free. Corona is another great alternative with three different pricing plans, though you’ll need to be willing to work in 2D exclusively in order to use it.
These aren’t the exclusive platforms available for developing games with, but they are some of the best. If you want a central pick, we suggest going with Unity. It’s well known, as a huge library of support and popular forums with helpful users, and there are so many basic, intermediate, and advanced tutorials online that you shouldn’t have any major trouble finding documentation on how to use the program. We have one more recommendation below, but for the average Android game, Unity is probably a solid place to start.
An Easier Solution for RPGs
If this list of requirements, software recommendations, and programming notes is scaring you away from becoming a full-fledged Android game developer, you shouldn’t run away just yet. If you’re looking to create an RPG for Android (a specific, albeit popular genre), we have good news for you. While you can go about using Unity, Unreal Engine 4, or any one of the other various engines we’ve wrote about above, if you’re willing to drop some cash on a program to help create games, RPG Maker MV might be perfect for you. As a program, RPG Maker has been around for more than twenty-five years, and it’s only become easier to use for porting to platforms like iOS, Android, and more. RPG Maker MV is the newest and most powerful version of the game, having originally been released in 2015 and featuring support for macOS, iOS, and Android in addition to its native Windows.
Available for Windows, Mac, and Linux on Steam, RPG Maker MV only runs users $80 upfront (with a demo available for Windows on their website), and gives you over 100 sample maps to use for your game, along with character generators, and more. Even better: RPG Maker MV often goes on sale on Steam, leading to massive deals where you can buy the product for half-off or more. While preparing this article, the title was 65 percent off and available for just a $27.99 purchase fee. That doesn’t include the DLC or other packages available for RPG Maker MV, but as a starter pack, it’s a fantastic price (especially if you wait to buy during Steam sales).
RPG Maker, at its core, allows you to visually design RPGs while leaving the programming in the background, similar to how visual editors work in programs like WordPress. The software handles the bulk of the actual programming, working with Java and HTML5 to create a game that works on multiple platforms. Of course, if you want to dive into the code, you totally can—the game works as a flexible piece of software, ready for people of various degrees of experience to pick up and try their hand at, while allowing for veteran programmers to use Java simultaneously to create out of this world experiences with the software.
Ultimately, RPG Maker is a great way to get your feet wet without having to dive headfirst into a world of full-on game development. It might not help those looking to create a platformer or a racing game, but if you’re willing to put in the effort of truly crafting a great RPG that works within the limits of the software, RPG Maker MV comes highly recommended. You can find a full forum post on porting games from RPG Maker MV to Android here.
Adding Google Play Games
A quick note before we wrap things up: it’s important when you’re developing a game for Android to include the Google Play Games framework, which allows players to connect with their friends, to compete on leaderboards and with other players around the world, and to track achievements with their gaming profile. Much like Game Center on iOS, Google Play Games is a great framework to include in order to make your game more social, more connectable, and much more fun for your players, especially if you’re creating something with a focus on social gameplay. Using Play Games is also important to add cloud saving to your title, which allows people to pick up and play on different devices or to restore save data from the cloud if they get a new device or lose access to their old one.
To learn how to use the Play Games SDK and to include it in your game, check out Google’s own post on how to use Play Games for developers on their blog here. The whole piece walks you through testing their own sample app before adding the actual code to your own independent game profile.
Patience and Persistence
Like learning to play guitar or studying for your final exams, learning to code, program, and develop a game on your own is not something done in a night. You’ll have to put in the effort to make your game perfect, from the planning stages to creating, crafting, and perfecting the gameplay, to including the finished artwork in your piece. This doesn’t even include writing, composing, producing, or licensing music you need for the game, in addition to working on any ad campaigns or word-of-mouth opportunities to get people excited about your game.
While you’re developing, learning, and concentrating on making your vision a reality, there’s a good chance that you’re going to have to overcome some major hurdles. Whether that comes down to learning a new programming language, having to upgrade your equipment to better power your vision in game development, or learning that a game with your exact idea already exists on the Play Store, there’s a lot to do when trying to create a new game. The best thing you can do for your creative efforts is be patient and be persistent. Remember that Rome wasn’t built in a day, and your game won’t be either. Chip away at it a little bit each day, in between your job, home or school life, and other responsibilities.
Stardew Valley was famously created by one man over five full years before being released to critical and commercial praise. Games as an art form take a long time to come together. Stay at your grind, keep working towards your goals, and continue to learn. That’s the best way to crack into the world of Android games.