Flutterby™! : How do I make games?

Next unread comment / Catchup all unread comments User Account Info | Logout | XML/Pilot/etc versions | Long version (with comments) | Weblog archives | Site Map | | Browse Topics

How do I make games?

2003-02-12 15:03:56+00 by Dan Lyke 5 comments

Because I'm teaching programming to people into games, Geoff Howland answers the "How do I make games?" question. From Borklog.

[ related topics: Children and growing up Games Software Engineering ]

comments in ascending chronological order (reverse):

#Comment made: 2003-02-12 16:09:44+00 by: Mars Saxman

That's great. I'll have to save this article for the next time I hear that question.

REALbasic capitalizes a little bit on the "I wanna make a game" market; we have a drop-in sprite surface control and a 3DSpace viewer object with a 3DMF import function... but it's an awfully long way from there to a working game and I doubt too many of our users have actually accomplished it. I finally wrote my Tetris clone, though, and tossed it in as an example project on the RB4.5 CD...


#Comment made: 2003-02-12 19:30:24+00 by: Shawn

Mars, you're a REALbasic programmer? Cool. I bought it awhile back, along with a Mac, to do a port of one of my VB apps. But other stuff kept taking priority and I never got around to writing anything with it.

#Comment made: 2003-02-12 20:57:48+00 by: ebradway

I usually start people off with the same task I give myself in any new language: write a number guessing game. Again, you have the game loop and input/output, but the program can be successfully written in a day by almost anyone. After that, hangman and tic-tac-toe become doable. Tic-tac-toe is interesting because it introduces the concept of a solvable game - and implementing simple AI for the computer.

After that? Maybe a memory game - to introduce graphics manipulations (take a series of images, load it, break it up into squares that can be flipped over to find matches). Sliding tiles is a natural soon after.

I've thought about developing a junior-high-school level programming course curriculum based on making increasingly complex games. By high school (if the kids are really serious about making it in games) they need to be developing games as a team complete with artists and multiple programmers.

The game industry is dominated with pre-child-rearing developers because the pace is so fast. If you establish yourself in your early-20s as a good game developer, it's possible to move into senior and management positions that can be done in a 60-hour work week and allow time for a spouse and kids.

That means you need to be writing pretty sophisticated games in high school. Which also means you need to see linear algebra in high school (and don't get me started on how math is taught in this country - as I struggle through my second abstract/proof class as a math major while breezing through multivariable calculus... simply put, math is taught as a process, not as a body of knowledge... set theory and abstract algebra should be introduced in highschool. Calculus is alot less important - and should be taught integral with physics... grrr... I got started)...

BTW, the way I learned to program was by typing the games in out of Compute! magazine into my Vic-20. As expected, I made lots of typos and there was two ways to deal with it: 1. read through the listing line-by-line comparing to your code or 2. debugging the code. I was lazy and #2 made alot more sense. Plus, I could start modifying the game to my liking! I wrote a version of Centipede for the Vic-20 that used the built-in character set. The spade was the gun and pi and British pounds were the bugs coming down, clubs made nice mushrooms. I was in 7th grade and had NO adult input (my parents are still clueless about computers).

In 8th grade I played with a program that graphed 3d surfaces. Now I'm integrating over those same surfaces in Calc III!

#Comment made: 2003-02-14 00:13:16+00 by: TC

Yeah geoff is a cool guy, although I haven't seen him in 2 years I bet he's still cranking on an independent game. I miss that...

#Comment made: 2003-02-14 15:46:16+00 by: Mars Saxman

yep Shawn; been working there for just shy of 2 years now, rewriting the compiler. It ships next week... I'd be pretty excited if I weren't so exhausted.