Tales of the Rampant Coyote
Adventures in Indie Gaming!


(  RSS Feed! | Games! | Forums! )

Wednesday, December 31, 2008
 
Learning to Make Games - What's Available?
This is a pretty off-beat question, I know, I wonder if aspiring indie game developers out there have found that there is sufficient tutorials, books, and examples out there to learn how to make small, indie games.

From my perspective, there seems to be tons out there. Most of it is oriented towards beginners (that's hardly unique to making games), but one question is whether or not they adequately handle the breadth of possibility out there. Just handling a single subject like sound can take an entire book (and has!).

Back in the day (way, way back then...) we had a handful of books devoted to game programming on our platform of choice (the Atari 400 / 800, the Apple II, Commodore 64, VIC-20, TRS-80 Color Computer - informally called the "Trash 80" or "CoCo", the TI-99/4A, the Sinclair / Timex, etc.) They pretty much covered the same topics, and there just wasn't that much area to cover. The C-64 has some special-purpose hardware sprites and a fairly unique (and powerful) sound chip called the SID chip, but otherwise making a game was making a game, and your language of choice was BASIC until you got ahold of a decent assembly compiler and took that step yourself.

Nowadays, just choosing your language and core engine / API can cause analysis paralysis. Or what modeling package you'll use. Or your target hardware requirements.

I've been curious because I've received several emails from people asking, "How do I get started?" I really don't know the best way to get started anymore. I'm a little bit past the "Game Programming for Dummies" stage, so I've not really investigated what's available, but I'd like to help. We always need new blood coming in and showing us how it can be done!

Labels:



Did you enjoy this post? Feel free to share it: del.icio.us | Digg it | Furl | reddit | Yahoo MyWeb

Comments:
RPGToolkit, for the win! It's got a programming/scripting language that looks like C++, some object-oriented support (with a glitch or two), and a generally helpful community. Just read the manual and the Code Bible before you ask questions.
 
You can always use Flash... it's a pretty solid system, and there are plenty of tutorials (Sites like Kongregate.com will even pay you if you're good enough)
 
Learning to make games encompasses two different skill sets... programming and design. Unfortunately, the two are NOT one and the same.

Just as a real-life example, my assembly language work on a vintage CRPG is really slow, because I really need to spec out what's needed before I write code. My experience has been that when I "cowboy code" it, I end up with tons of errors that take hours to debug and fix, and when I actually carefully plan out code modules, things go more or less smoothly.

Now you may say "Oh, that's old assembly, of course it's hard." But the fact is, software design suffers from a lack of pre-design in EVERY language on EVERY platform. People don't take the time to really think and plan out the work, and what's possible and what isn't.

There's a lot of ways to learn to program. Tutorials abound on the Internet. There's plenty of books; anything written or edited by Andre LaMoth is good for game programming. But design work is something else entirely.

The best advice on game design learning is to play games. A lot of them. And not just video games. Board games, card games, role-playing games... There's a game to be found in any mundane activity or exercise; designing a good game means understanding what makes a game fun to play. Raph Koster's book on the Theory of Fun is a good start.
 
GameDev.net is a solid resource, with a section devoted to answer this sort of question (this and similar ones are asked quite often). Near the top of the page is a menu - Resources->For Beginners. There's plenty of stuff there and throughout the site in order to get anyone going.

With tutorials on the web, you really need to be careful. Sure, there's tons of stuff out there, and most of it free. Anyone can easily post a webpage with a tutorial. Unfortunately, *anyone* can easily post a webpage with a tutorial. I know these people are usually trying to help others, but their knowledge is often only barely above what they are trying to teach, and it can lead to the perpetuation of extremely poor habits and techniques.

My advice is: start small. Everyone and their mother seems to want to make an MMORPG 'like World of Warcraft, only better'. Frankly, it ain't going to happen.
 
A little over a year ago my son picked up a tool called Game Maker (since upgraded to Game Maker Pro).

It's let him get into making games without having to learn programming. But, it has taught programming concepts along the way (like objects, variables, timers, attributes, etc.)

As he bumps into the boundaries of the program, he's having to learn and do more and more coding. So, for my money, this was a good way to get him into programming in general. If he would have had to start from the beginning, he would have lost interest long before he was able to do something interesting.

It not only used gaming to "set the hook," but also as the teaching medium, giving context to what he's trying to learn.

He's been able to make side-scrollers, puzzle games, and even 3d shooters.

Best of all, you can get Game Maker for free. There is a "pro" version you can update to that will let you do more, but the standard version is pretty powerful.

Lots of community support through forums, tutorials, and sample code.

Right now I'm trying to find a way to help him understand how to make better games. Not just computer games, but a fun game in general. He's still captivated by the "look-what-I-can-do-ness" of it all.
Give it a look.

Game Maker
 
I strongly recommend C# with XNA Starter Kits.

Or if they are interested in Flash I recommend Tony Pa's tile based tutorials.

Both are free and relatively easy to follow for beginners. Plus they include the source code, which is great for learning how to structure a game.
 
For those interested in writing interactive fiction, I highly recommend Inform.
 
This game programming blog is all about a guy that is starting into the vast world of game programming. Really though it depends on what you want to do... I recommend to check out that blog and see what he does on his journey.. learn from his choices.
 
Post a Comment

Links to this post:

Create a Link



<< Home

Powered by Blogger