I'm sorry if this question is a bit subjective but I'm sure you'll understand why.

I participate in a volunteer program, Big Brother Big Sister, and my match loves computer games and he'd love to make them. He's 16, and he's not that technical yet, I was showing him some html5 canvas stuff (I'm a web-dev, so it's easiest for me to explain that to him) but it's a little opaque to him, and of course the technology is still pretty limited.

What would be a good way for him to get into the fundamentals of making a game without having to know tons of code? Something like 3D Game Maker maybe?

Everyone, your answers have been really helpful, and I wish I could accept multiple answers, this will be really useful. Thank you all.


One way to start making a game with no programming knowledge is to use one of the many game engines specifically tailored for a genre of game. And since they're designed with a single game genre in mind they usually don't even require you to learn a scripting language. To name a few:

  • RPG Maker - for 2D role playing games (I loved playing around with this when I was his age!)
  • Visionaire Studio - for point'n'click graphic adventures
  • M.U.G.E.N - for 2D fighting games

And although he might need to learn a bit of programming it shouldn't be that hard to use:

  • Flixel - A Flash game library, general purpose but with a lot of facilities to help make platformer games.
  • GameMaker - is also famous although I have never used it.

Also, since he's getting started, I do recommend starting with 2D games before moving on to 3D games.

I think RPG Maker would be a great place to start because while you don't need to write code directly, the way the event system is set up makes you need to think logically which is a must for a programmer.

You basically create events, set up the conditions for them being triggered, and add a series of actions with configurable parameters. You also have flags to set which would be the equivalent of variables, and you can control the flow of these events using conditionals and loops. All in all this sort of thinking will translate very well to real programming later on.

Visionaire Studio is also very similar to this but for another genre!

  • 1
    \$\begingroup\$ This. Great way to learn about game logic. Also, for something a bit more advanced, I'd recommend modding, even if it's just screwing around with/poking around in some config files. Teaches you a lot about how comercial engines work. \$\endgroup\$ – Exilyth Dec 12 '11 at 17:59
  • \$\begingroup\$ 100% right. I started making small games with Game Maker and RPG Maker when I was 10. They're way easy to make some simple games and I remember Game Maker even allows for some scripting for more advanced functionality. \$\endgroup\$ – Mike Cluck Dec 12 '11 at 18:44
  • \$\begingroup\$ I've read through these interviews before and noticed that a lot of indie game developers were using Game Maker as their tool of choice. So I'm guessing it must quite good actually! \$\endgroup\$ – David Gouveia Dec 12 '11 at 19:07

I'm upvoting David's answer, but started writing a big comment talking about other stuff so I'm just putting it as an answer.

GameMaker is probabl your best bet. He can start off by clicking and dragging Actions in response to Events. Then he can start learning to express these things in code with GML (Derek Yu's tutorial series is good).

After a while he'll start to ask, "Why can't I execute this type of code in this type of situation?"

That's when you start him with Python. Try going through Invent Your Own Games With Python. It starts with basic programming, guides you through making a couple of ASCII games (Hangman, Tic Tac Toe, etc.) then builds up to using PyGame.

And then he can coast on PyGame for a while :)

  • \$\begingroup\$ I might also take the chance to ask a legitimate question about your comment :) I've never used Python before. So, why Python? My first languages were Basic and Pascal many years ago. Nowadays if I were to get "started" with game programming, I think I'd like to start with C# or ActionScript. But I've seen a lot of people recommend Python. I'm just ignorant on the subject, and would like to know a bit more about that! \$\endgroup\$ – David Gouveia Dec 12 '11 at 22:32
  • \$\begingroup\$ I also started on BASIC (qbasic ftw!). For me, Python has that BASIC feel where someone who isn't already comfortable reading a curly brace language won't get scared away. Since whitespace is syntax, it encourages good indentation style early on. The official docs also feel approachable for a beginner. They've been criticized as redundant, but I find their thoroughness to be useful. There's also a TON of modules and libraries for little things, both in the standard library and on PyPI. Oh another nicety is it offers a pleasant mix of OO and functional features so it's versatile for teaching. \$\endgroup\$ – michael.bartnett Dec 12 '11 at 22:51
  • \$\begingroup\$ (forgot the at-tag @davidluzgouveia) I've also taught a bunch of music students at my university to program using Python. We then spent a day taking apart open source pygame games and redoing the audio for them. They all felt really comfortable with the overall look and feel of the language. \$\endgroup\$ – michael.bartnett Dec 12 '11 at 22:52
  • \$\begingroup\$ Thanks! Sounds like a good language to start getting into programming. And starting with an easier language and waiting until later to move to a more complex one did not do me any harm so this is probably good advice. \$\endgroup\$ – David Gouveia Dec 12 '11 at 22:58

Not being directly a book about gamedev, this book from O'Reilly contains description of many interesting projects (among those also games) suitable for beginners and teenagers:

Coding4Fun from O'Reilly

I bought it for my own courses of XNA and never regretted, it has interesting projects and you describes the implementation step by step.


For someone of that age/ skill level, they should start by building levels in their favorite game engine of choice.

I'm not sure why this is the most overlooked but most obvious answer.

Many great games come with a level editor that allow many degrees of freedom.

RPG: Bioware's NWN 2 electron toolset series, Elder scrolls

RTS: Warcraft III's level editor is a fantastic RTS editor and even spun off it's own game ( league of legends and heroes of newerth ).

FPS's: Hammer for half-life 2

In short, there's no shortage of level editors to get started. Here. Building levels for your favorite game is probably the best place to start.


I would look at 3DBuzz.com and look up a tutorial for a 2D shooter for Unity, it is free and really easy to use, plus he can learn how engines work and start with little programming. It is a good way to get his feet wet and really see how programming works.


In my opinion, I have to agree with the people who answered Game Maker. You can get the basics for free and it's inviting for new game developers! It's pretty easy to make a basic game with the drag and drop actions and you can make even more with the actual coding language. If you try it out, you'll find that you can make some pretty great stuff.


Not the answer you're looking for? Browse other questions tagged or ask your own question.