Dear 12 year old Felix, You love games and have played many, right? So I bet you have the makings of a real classic game locked up inside your head. With the beauty of the Internet, you are only a few clicks from starting down the path of becoming a world famous game developer.

The independent PC gaming market is a wonderful place begging you to explore your imagination. So why not design and build your own game? If done carefully it doesn't have to cost you anything to get started...

How To Start Developing Indie Games For The Newbie Game Developer Basics

We are going to take a brief look at some options open to you and what you will need to get you building your indie pc game.

Picking The Indie Game Engine

First off you need to select a game engine that will meet your needs. Game Engines come in various shapes and sizes and suit all sorts of games and developer skill levels. Some game engines focus on producing 2D style games. This can work well if you are thinking of creating a top down/isometric roleplaying game or even a side scrolling shooter. Alternatively, there are 3D game engines that will help you construct 1st person shooters or racing games. The 3D approach is often a little more tricky, but dont let that put you off.

Like games, game engines require you to learn their rules before you can master them. Approach this as a fun task, by exploring what you can get the engine to do for you, to help you avoid it feeling like a chore.

There are some engine options that do not require much coding, relying on graphic interfaces mostly, but if you want to get your game to do the really funky stuff you need to roll your sleeves up and get into the code.

Don't be scared by the thought of coding, it is actually not too difficult. It often just takes trial and error and some patience. Put the time in and I assure you, the rewards are endless. 

Big Name Game Engine Packages For The Newbie Developer

Unreal Game Engine

Description: The Unreal Engine is a popular game engine. Often referred to as the Unreal Developers Kit (UDK) which can be upgraded to an Unreal Engine 3 License when your game is ready for the big times.

Cost: Free until you wish to sell your game and then you will have to buy a licence. The UE3 license costs $99. However, they will then want a cut of your sale profits. Basically you will need to give them 25% of any earnings above $50,000. But if you make a few games that sell that ammount, well you have made it right?

Core Coding LanguageC++

Example Games Made: Hawken, Unmechanical, The Ball

Download a copy here


Source Game Engine

Description: Valve's Source Engine. Source is robust and all-inclusive - with tools for NPC AI, Terrain and environments, Physics, and lighting effects. Such as Counter Strike: Source or Half Life 2.

Cost: The Source Software Development Kit (SDK) is available free if you have purchased any source based game but you will need to get a license if you want to eventually sell your game. This will be one of the most costly options.

Core Coding Language: C++

Example Games Made: Team Fortress 2, Counter Strike 2, Portal

You will be able to download a copy from Steam once you have a Valve game, like Half Life 2.


Despite those big names the following is one of the biggest names in the indie game making circuit.


Description: Massively popular with the indie crowd. Whereas all the other commercial dev options want a cut of your success, Unity provide their basic option entirely for free with the chance of adding an engine enhancement for a price. They also provide a game engine enhancement that provides the ability to roll out your product to a mobile platform like IOS or Android. They never ask for a cut of your profits even if you sell a product built on their free version. 

Cost: Basic dev kit is free to use and free to sell your products. But you can pay $1500 for Unity Pro that allows PC game building. You can then pay either $400 (basic) or $1500(pro) for each extra platform other than PC you want your game to be able to run on.

Core Coding Language: Javascript and/or C#  or BOO. Example scripting overview

Unity Tutorials

Asset Store: Unity also has an asset store, where you can build and sell stuff you build. Or you can buy or download free ones to help you with your development.

Example Games Made: This is a big list - Guns of Icarus Online, MechWarrior Tactics, Wasteland 2, Endless Space and so on

Download a copy here (680MB download for the free Unity)



Java - A famous game written in this language is Minecraft.

Chances are a lot of you already have Java running on your PCs right now. We will expand on this little section shortly. A couple of quick things to point out though, Java is not the same as Javascript and Java is also useable under a General Public License (free to use).



Alternative Game Engines For The Noob Developer


Description: The Indie developers, Unknown Worlds, developed the amazing Natural Selection 2 (NS2 is what Colonial Marines multiplayer should have been) have recently offered up their own development tool kit for budding game designers, for free. This is the true indie spirit and these guys know that if you start to explore their Kit then it will help promote them in the long run, like we are doing now, so it is a win all round. Spark uses Direct3D, DirectX 9 and shader model 2.0 You can even apply in game motion blur.

Core Coding LanguageC++ , Lua

Cost: Free if you have picked up a copy of NS2, their multiplayer shooter strategy game. Finding any concrete information on this is quite difficult so please get in touch if you know more.


AGS (2D Engine)

Description: Adventure game Studio (AGS) will provide the tools you need to make a 2D point and click adventure game or other 2D side scrolling style game. AGS has beena  popular easy entry Game Engine for many newbie developer.

Core Coding Language

Cost: Free

Beginners: Tutorials + Video Tutorials

You can find lots of art assets that you can use to go along with your adventure game building:Addons

You can download from: Here



3D Graphics Packages For The Newbie Developer


Now if you want to build 3D graphics assets to go in your new game here are a couple of choices


Description: A powerful and complete 3D modeling suite that will enable you to create pretty much any mesh, animation or character you desire.

Cost: Free

You can download it: Here



Description: Simple to use object orientated interface that allows you to render 3D scenes. A lot of the hard work is done for you with Ogre, but it is still powerful enough to support Direct3D and OpenGL.

Cost: Its free

You can download it: Here



Description: MyGUI is a library for creating Graphical User Interfaces (GUIs) for games and 3D applications. The main goals of mygui are: speed, flexibility and ease of use.

Cost: Free

You can download it: Here


Particle Universe

Description: An extension that can be used with Ogre to produce ingame particle effects, like rain, snow, blood, fire etc

Cost: This costs 19.95 euros

You can download a demo: Here



Description: An open source physics engine that provides 3D collision detection. One of the 

Cost: Free

Example Games Using: GTA IV, GTA V, Trials HD

You can download a demo: Here


What next

This is certainly a bit beyond the scope of this How To but i feel i have to mention it, if you get good then you may well want to expand the Game Engine to suit your needs. Maybe you want to allow your gamers to write custom content for your game? Well you might be able to expand your chosen Game Engine framework to allow you to build a game editor by using something like Lua.

Lua is a powerful, lightweight, open source (free) scripting extension language that can compliment other development languages. It was used in Gary's Mod, World of Warcraft, Far Cry etc.



You Now Have All The Tools To Be A Newbie Game Developer

Whichever game engine you choose try to find one with a healthy forum of tutorials for you to delve through and an active user base. Because you will probably need assistance at a later stage or you might want to find some fellow indie developers to share art assets with once you get some skills of your own.

Always remember that once you start to get a good grasp of your chosen Game Engine, a world of possibility spreads out before you. Keep that in mind and it should help motivate you during the early stages of playing with the game engine. Another bonus with learning a game engine is that the development principles you start to understand are transferable skills. And so when you decide that one engine is not offering exactly what you need to make your awesome game, learning how to use a second or third engine will often be a lot quicker, so don't feel like you will be tied down to one game engine forever.

All of these engines have a main coding language (C++ or C# or Javascript) but there are plug ins available to allow you to use other languages that are at least similar to something you know, such as Python.



You Cant Do Everything

Big budget games are built by a team of people. Often these teams comprise of specialists. One person might be responsible for the 3D modeling and another might be focusing on the physics, while another overseers the AI.

So a word of caution, make sure you don't let yourself get overwhelmed. Find an area of game development and hone your skills in that area. There is no harm in trying each aspect of development, it will provide you with valuable insight into what is possible across the different aspects of game building, while helping you find the area you most enjoy.

Alternatively, set small goals. Build a bat and ball game first, then expand your game in manageable amounts.

By the time you have gained a reasonable amount of knowledge in game development you would are likely to have met a good few fellow designers on the net and maybe you can start a new, more ambitious project by collaborating with some of them?

Many developers start out enhancing existing games by building mods. Games where this is possible often come with very vibrant development communities. The obvious one that springs to mind is Skyrim.



Lets Grow The GD Game Developer Community

As is always the way on GD I encourage you to share your thoughts below, especially if you have other game engine suggestions or asset libraries or any helpful indie game development tutorials you wish to tell people about. Lets pool our knowledge and see if we can get a game development community together to help one another.

If this proves of interest then we will build a section of GD just for Indie Game Developers. I might do this anyway, because its cool. But lets poll this to see if you have an interest in a game development area on GD.

Treat it like you are mastering a game. Put in the hours and I promise you, the skills you learn will help you throughout life and lead you down a fun, creative path.

So, that was the 101 of game creation, my final words are, always remember to quick save your progress!

Vote - Click on the bar or text you want to cast your vote on