Create an indie game
If you can make websites you have all the skills needed to create an indie game, says Richard Shepherd. Push start to play!
This article first appeared in issue 239 of .net magazine – the world’s best-selling magazine for web designers and developers.
Most web designers were born into the era of the console, so it’s unsurprising that there’s a growing trend towards them creating indie games.
The good news is that a handful of companies are creating software development kits (SDKs) any web designer can use to produce games with limited experience – creating a boom time for indie games.
One of the SDKs available is Corona. Corona co-founder, Walter Luh, compares mobile games to the film industry. “Think of apps as just another kind of content, like movies,” is his advice. “Fifty years ago, you had to have big Hollywood budgets to produce a movie; today, you can create amazing movies with shoestring budgets.” The same is now true for games.
But is more people developing games a good thing? Deniz Çetin, CEO of SDK Gideros Mobile, believes it is. “I think there’s always room for great games [and] indie game devs should be supported,” she says. “The technology barrier should be as low as possible.”
So how do you go from a web page to a game? Let’s first assume you have an amazing idea – that much is essential. (It’s also an excuse to play lots of games under the guise of ‘research’.)
You now need to choose a SDK to help turn that idea into a reality. At the moment there are two distinct camps: those that require coding, like Gideros and Corona, and those that don’t need any programming skills at all, like GameSalad.
Web developer and UX consultant Hugo Bonacci created hit game Kung-Fu Clash with Corona, and thinks it’s a great choice for someone looking to take their first steps into game development.
“Corona simplifies mobile game development by providing easy to use libraries for the file system, hardware, sound and network,” he explains. “It also includes a built-in physics engine based on the popular Box 2D engine. For the most part, creating games is very straightforward and easy to do. Essentially, you start by creating sprites on the screen, move them around using X and Y coordinates, and then react to user interactions via listeners. It’s really that simple.”
Corona and Gideros both use Lua, which is a powerful – yet simple – object-orientated language. You can develop in your favourite text editor, compile it in the SDK (development versions are often free, only charging when deploying the game to an app store), and play the results in the built-in mobile simulators.
The power comes in being able to develop for iOS and Android at once, allowing you to create a game that will play on iPhones, iPads, Android mobiles and tablets.
Lua is also an easy language to learn. Here’s how you’d set up a touch event:
local obj = display.newImage( “image.png” )
function obj:touch( event )
— Your function goes here!
obj:addEventListener( “touch”, obj )
It’s worth watching renowned coder Seb Lee-Delisle create an Angry Birds clone in less than 30 minutes at Update Conference to see just how easy it is
Graham Ranson from Glitch Games, creator of adventure game, Forever Lost, also recommends Corona. “[It] allows for very fast iteration,” he says, “so if something doesn’t work, I can just rewrite it and move on.”
If your skills are more suited to design than coding, there are still ways you can bring your idea to life. GameSalad allows designers to create games with a point-and-click interface and some very basic logic. The results can be surprisingly sophisticated.
Steve Felter, GameSalad’s CEO, is proud of the success it has achieved. “Our platform has been used by over 500,000 developers to build over 140,000 games,” he tells us, “with more than 65 games that have reached the top 100 in Apple’s US App Store, including a number one overall game.” That’s a lot of money for Apple, GameSalad and, potentially, you.
Choose your weapon
It’s possible to develop an entire game on your own. But most of us will need help to source elements such as graphics and sounds. If you’re a coder, there are plenty of royalty-free sprites available to download; simply search online. They will rarely be perfect, though, and may only help in prototyping your idea. Nothing is free and, if you plan to sell your game for a profit, nor should it be. Hit up a designer on Dribbble and offer to pay for their work. You could even try entering a commercial agreement with them but, where money’s involved, always put in place a clear contract.
The same is true of music and sound effects, but there’s a far larger pool of royalty-free tracks out there to download. You can pick up production-quality music from Premium Beat for $30, a tiny price to pay for something that will add so much atmosphere to your game.
So you’ve finished your game. What comes next? Without careful planning it’s easy to find yourself at the edge of obscurity.
Deniz Çetin believes marketing should not be left to chance. “Blogging and using social media helps,” she says. “A high-quality video about the gameplay can be shared in many sites. The pre-release buzz and launch must be planned beforehand.”
This is something that Graham Ranson has discovered too. He says, “We learned the hard way from our previous apps that marketing starts long before the game is released, so we tried to build up as much interest about [it] as we could on a nonexistent budget. This was mainly just posting on forums such as Touch Arcade and posting teaser images via our Facebook and Twitter accounts.”
So are Objective-C and Java developers worried? Probably not. SDKs will never replace the power of native coding, but they are lowering the barrier to entry into an enormous, profitable marketplace.
Steve Felter thinks SDK and native development can live side-by-side. “I like to think GameSalad can make programming more efficient and accessible by streamlining the most common tasks in the creation process.” Çetin also sees a positive future, saying, “As the developer needs become more sophisticated, SDKs will become more sophisticated as well.”
Free versions of SDKs such as GameSalad, Corona and Gideros are available to download – so spend some time experimenting and, who knows, you could be the next Peter Molyneux.
Check out our full interview with Hugo Bonacci.