How to create your own games
23rd Jun 2012 | 11:00
Anyone can be a game developer
How to create your own games: where to start
The creation of a game presents a plethora of challenges.
Which engine should you use? Who should you collaborate with? What's the backstory going to be, and how are you going to present it?
Which colour scheme are you going to use? Have you got enough coffee to get you through all those long nights of coding and designing?
It's an overwhelming amount of intricate detail. Get something ever so slightly wrong and people will tell you. The internet will let you know.
But good game design comes down to one simple thing: an idea. A single sentence. A physicist triggers an alien invasion. A gun is created that allows instantaneous travel between two places. A young man who can control time must rescue a princess.
Everything can be expanded from this point onwards, but it's important to always come back to that original point.
The technique's not unique to games – the best novels, films, music and art start out as a simple, broad stroke that's layered and built upon until you've got a finished product. This way, those crucial themes are never lost and the narrative never strays from its original path.
Not everyone wants to construct a complete game, though. The modding community is still huge, still adding new content to games and correcting the mistakes original developers made.
Like so many creative industries now, it's become full of eager fans who are willing to work for free to have that chance at making it to the top, the chance of becoming the next Ken Levine or Gabe Newell.
The best thing about current games – and it's never been better – is that you probably already have the tools to make an entire game from scratch.
Valve's Source SDK is a great place to start, but on top of that you've got the Unreal Development Kit, Skyrim's Creation Kit, Unity and Game Maker.
Our aim here isn't to show you the finer points of coding your first triple-A title, it's merely to show you the tools available for game construction.
We've used Valve's Source SDK to present an overview of what's needed to create a game, as well as detailing other engines and game creation programs.
There are, essentially, two ways for budding game designers to get started in the field of game design.
Modding is a tried and tested route, and a handful of big-budget titles and large studios began their illustrious lives as humble-but-brilliant add-ons developed by a handful of people.
Indie gaming is the plucky youngster of game design, and stand-out games like Braid and Minecraft are often developed by one-man coding powerhouses.
Modding – an abbreviation of modifying – involves taking an existing game and altering its content. Just about everything in a game can be changed, from the look and dress of the characters to the colour of the sky, the design of the world, and the sounds and music.
You can also alter and create scripted events, artificial intelligence routines and ways for the player character to interact with the world.
Modding has come on leaps and bounds since the days of altering WAD files with the Doom Editing Utility.
Releasing mod tools is a win-win for publishers – not only do mods often correct or add content that should have been in the game in the first place (see STALKER Complete), but they can also be used by publishers to see what people want from games; what the trends are gaining traction.
A sudden rush of sci-fimods for, say, Skyrim, could push Bethesda into making another Fallout sequel.
Where do you get the tools to start modding? You've probably already got them.
Open up Steam, click on 'Library', then 'All Games' and select 'Tools'. Among the multitude of dedicated servers you'll see authoring tools and software development kits (SDKs) for all the games you own.
There's little difference between the content of the two, apart from the fact that authoring tools are specifically set up for one game and its intricacies. For example, Portal's tool includes the ability to render those ubiquitous wormholes, which is pretty crucial to the game.
SDKs also include all the information you'll need to get started. You'll find a test level for you to play around with – and probably completely screw up.
There are models and objects to interact with. Some include documentation, but you'll find a mass of tutorials and walkthroughs on modding sites like www.modwiki.net, http://developer.valvesoftware.com and www.moddb.com.
It's worth noting that you need to have the game you want to mod installed on your PC. The SDK will give you access to literally every single little bit of the game, from the colour of characters' pupils to entire swathes of land – but it needs to have something to work with in the first place.
Remember, too, that games use different engines – Half-Life 2, Left 4 Dead and Portal use Valve's bespoke Source engine, whereas The Elder Scrolls IV: Oblivion, and Fallout 3 and New Vegas use the Gamebryo engine.
Before you even start getting to grips with modding, it's a good idea to just, y'know, play some games. Try to look at them as analytically as possible, try and work out what looks right for the setting and what feels forced and unnatural.
There are also games that can teach you a little about the basics of game design through playing them. Minecraft lets you create worlds using building blocks, which has parallels with level designers blocking out levels with Lego.
Garry's Mod serves as a great introduction to facial animations, models and physics, and lets you see how characters and objects interact – often hilariously.
Any game, at its most basic, consists of a level. This is the desolate landscape on which all the other elements sit – a blank canvas that's inhabited by your characters.
The undulations of a landscape or the sharp angles of an abandoned high-rise give visual cues as to the kind of environment we're inhabiting.
Smart level design – like that of BioShock – uses the environment to tell a story. Remove the characters and objects from Rapture and you'll still have a pretty good idea as to what's happened there.
Of course, a level doesn't have to be set underwater, but it should try to tell part of a bigger story.
While level editing is a complicated blend of art, maths and psychology, it's also a great way to introduce the basics of game design.
The majority of elements in a game are made up of triangles wrapped around a wireframe mesh, and this angular approach is why you'll never come across a perfectly round pipe or barrel in a game.
The environment of the game is created this way, too, and even the most awe-inspiring vistas of Skyrim are fundamentally made up of millions of tiny interconnected triangles.
The best way to take those first tender steps into level design isn't through an SDK, though. It's through one of the most powerful and easy-to-use 3D programs in recent years – Google's SketchUp.
SketchUp has been used to create everything from models of real-life locales in Google Maps to photo-real models of aeroplanes.
Although at heart, SketchUp wasn't really built with level editing in mind, its interface is very similar to that used in level-editing software, and its intuitive nature makes it the ideal starting point for any kind of 3D modelling.
SketchUp packs a couple of other advantages, too. Valve's Hammer editor now includes the ability to import models from SketchUp, so you can create detailed and interesting models that would be nigh-on impossible in Hammer and import them.
You'll find a plug-in for SketchUp in the Source SDK folder once installed.
SketchUp is also handy for sketching out levels and seeing how they'll look and play. Its renderer is far faster than that of a game, so you won't have to wait around for your levels to compile before you can see what they'll look like.
Valve's Hammer level editor is the natural step up from SketchUp. It's been around in various guises since 1996, when it was known as WorldCraft, and its fundamental interface and operation haven't changed a great deal since it was released alongside the original Half-Life back in 1998.
It's compatible with the majority of Valve's recent releases, from 2004's Half-Life 2 to last year's Portal 2.
While it can look overwhelming to start with, working through a few tutorials can help you pick up the basics fairly quickly.
The key to Hammer's world-forging is the use of brushes. These are the basic blocks that are used to create the solid, static elements of levels – the floor, the walls, the sky and the water.
Hammer uses a technique known as binary space partitioning (BSP) to render levels, which takes into account each and every angle from which the gamespace can be viewed.
All levels created with Hammer must be contained in a completely watertight space, because any light leaking out confuses the hell out of the compiler.
A level simply compiled of brushes would look incredibly dull and lifeless, so to liven things up, textures are applied. These are two-dimensional image files that wrap around the 3D objects to make them look more real.
Upping the resolutions of these images using graphics editing programs is a modding art in itself – this is how high-resolution texture packs are created.
Hammer also allows you to control the lighting – be it the midday sun or a full moon – and adjusts shadows and highlights accordingly.
How to create your own games: models and coding
The characters, objects and interactive props that inhabit Hammer levels are known as models.
In the original releases of Hammer these didn't include buildings, but later releases term some buildings as models.
There's already a huge library of models in all Valve's games, and they can be viewed using the appropriately titled Model Viewer, included in the Source SDK.
Whereas editing maps in Hammer is fairly straightforward, creating custom models requires external programs – such as 3DS Max – and quite a lot of patience and skill.
The final piece of the Source SDK is the Face Poser, which, as the name suggests, allows you to tweak facial animations and add custom voice-overs.
Half-Life 2 brought facial animations forwards by light years, and it's a surprisingly uncomplicated tool considering the advanced logistics of lip-synching a pretend 3D face.
Face Poser is also used to create skeletal animations, such as walk/run cycles and hilarious falling over motions.
We're merely scratching the surface of the Source SDK here, and there are thousands more things to consider.
You will run into problems – everything from "Where should that tree go?" to "Why is the level I've spent months working on crashing my computer whenever I load it?" It's all part of the amazing process and steep learning curve that comes with creating your first custom content.
Aside from Source's SDK, there's Skyrim's Creation Kit and Unreal's Unreal Development Kit. Both work differently from the Source SDK because they're creating rather different games and worlds, and it's up to you to decide which best suits your grand vision.
The Unreal Development Kit is in some ways friendlier than the Source SDK, but if you employ it you're basically going to be creating everything from scratch.
The Skyrim Creation Kit is gathering momentum, but it's fairly limited to creating mods and new areas for Bethesda's ubiquitous RPG romp.
The code abode
There is a fly in the ointment of all this, which is coding.
While it's all well and good being able to create levels and maybe even skin a character, if they aren't acting how you want them to you're going to get quite frustrated.
Source games use the universal language of C++ to dictate how the world works, whereas Unreal Engine 3 games use a bespoke language called UnrealScript or as it's often abbreviated, UScript.
UScript was built with ease of use in mind, whereas C++ is used in many different programming environments, and does look very impressive on a CV.
There are further issues to consider when choosing a game engine.
The Source SDK is – in our view – the best way to get started, but aside from authoring tools for specific games, it receives little to no love from Valve and isn't updated that frequently.
The Unreal Development Kit is updated on an almost monthly basis, and there's the added advantage that you won't have to hand over any royalties until your game makes over $50,000.
We'd say that the best approach is to use the Source SDK for getting started and beginning with mods, and then switch to the Unreal Development Kit once you're ready to make your first full game.
The final option here is Unity. This software was created with making 3D games in mind, and a completely free version is available from www.unity3d.com.
The main benefit of Unity is its cross-compatibility – create a game with it and you'll be able to play it on everything from an Android smartphone to a powerful PC.
It's yet to find its killer app, but Unity is gaining traction with games like BattleStar Galactica Online and Tiger Woods PGA TOUR Online.
There is, of course, a more lo-fi approach to making your first game, and one that makes it far more feasible for a single person to bash out a completed product.
Indie gaming has become far more popular in recent years, especially with the rise of the iPhone and casual gaming on sites like Facebook. Thanks to this low-spec hardware, ideas can come before graphical prowess.
The tools needed here are far less unwieldy than those required for 3D gaming, too.
Quirky indie point-and-clicker Machinarium was created using little more than PhotoShop, Adobe's Flash and some beautiful hand-drawn artwork.
Bonkers dungeon crawler Spelunky was made with Game Maker, a piece of software that puts ease of use over programming skills.
Whether you choose to get into game design through modding or creating a whole game on your own, there are hundreds of possibilities.
Hopefully we've shown you the best options for each and every type of game you can create, whether it's a complete overhaul for an ageing game or a mere additional teapot prop for your favourite RPG.