Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror
×
Programming Entertainment Games IT Technology

Teaching Kids to Make Games? 134

FreakerSFX asks: "My son has shown an avid interest in video games like most kids his age. What's different now is that he insists that he wants to learn how to build his own game. He's 9 and fairly gifted from a mathematics and computer standpoint and certainly capable of learning basic programming. What tools/books are recommended for a neophyte computer game programmer?" I remember one of my first exposures to computer languages was Logo, which was a language that seems perfectly suited to young children. There is a Windows version available here that seems like it would be perfect for the development of simple games, especially for youngsters. What languages, and language resources, are you aware of that might be suitable for youngsters with an interest in creating games, and learning programming?
This discussion has been archived. No new comments can be posted.

Teaching Kids to Make Games?

Comments Filter:
  • Assembly. (Score:2, Funny)

    by ianashley ( 597497 )
    Assembly. Yup. Definitely Assembly.
    • I learned assembly at 10, (notice the UserId), and im 14 now and learning 3rd generation languages. Although I would not recomend assembly as a first language, it is a powerful tool to be able to use. First teach the kid some basic computer science (ie boolean algebra, how to use xor and not or to make stuff :), then let him try out a few languages. --Joel
      • by Anonymous Coward
        For your next language, I would suggest English.
      • Agreed. I was doing assembly on the spectrum at 10.
        By 12 I was doing City and Guilds qualifications at college.
        Throw them in at the deepend I say.

        Of couse, back then I didn't know how to convert mnemonics into the hex values for assembly. But did have a programs to do vice versa. It make coding a very slow and trial and error process.
      • Lets see here - he is already gifted in math and computers, just like most of us (are / were at that age). Lets assume the kid has just a touch of autism (which is good for computer guys) and already knows his way around a keyboard and a development environment.

        Programming isn't about syntax, and it isn't about variable scope or recursion or data structures or loops or any of that crap - it is about expressing, simulating, or recreating real world ideas in a digital format. The biggest problem most progr
  • by flabbergast ( 620919 ) on Wednesday January 21, 2004 @07:47PM (#8049827)
    *flame suit on*
    Since I don't know too many nine year olds, I can't fathom what games they're playing (Pokemon still? Yuyu Hashuko?), but my suggestion is to first control his expectations. What I mean is, you should be aware that even though he is gifted in math and has an interest in programming, that he won't be able to recreate Max Payne 2 or WarCraft III. Or even Pokemon on the GBA. That simply requires money. Some of the simplest games like Tetris aren't instantly easy to program.

    Deep breath.

    With that out of the way, I'd suggest writing a text only RPG or something like that. You can learn a lot about how games work coding up MUDs and such, and you don't have to worry about making the eye candy to go with it. When I was nine I coded up a mud in Basic (of course that was in the late 80's but whatever). Once you've got a fairly fun text RPG, you can try making it into a 2d world (a la Zelda) which wouldn't be too hard to implement.

    I realize I haven't answered your question about programming languages and websites mostly because that usually leads to flame wars ("Nu uh! Ruby/VBA/C++ Rocks! Python/C/Java Sux!"), but if he's try interested in programming a game, I think a mud is a good place to start. I have a preference for Python, so you may want to check out pygame.org [pygame.org] as well.
    • Sorry to reply to my own post but I also remembered Alice [alice.org] put out by CMU's CS dept.
    • Why don't you start him on mods, scripts or skins of a game he already plays? A non-trivial (i.e. attractive and fun) game is going to be hard for him to build from the ground up.

      An addition to a game (even if it's just putting Pokemon artwork on someone's armor) is more bite-sized.
    • That's an excellent point -- when I first learned to program, there wasn't that great a gap between what even a little kid could code and the games you bought in the store. A lot of us wrote little Breakout clones that weren't much worse than the Atari 2600 version (written, IIRC, by Steve Wozniak, who had Jobs pocket half the money from the sale without telling him).

      Today 1) games are so much more sophisticated and 2) readily accessible programming tools like the BASIC that came with PCs (wow, Gates and Wo

    • Control Expectations defeintately. but in the late eighties, I was creating all sorts of 2d games. RAcing games were the easist. two joystick controlled sprites. I forget the rest, all I remember is that I created one so large(LOL) I over filled the 32k of ram the ti994/a and locked up the system. GOOD times.

      I still can crash a system just because. though windows really shouldn't count should it?

    • i'd have to say that depends on the kid. one kid i know thought he was "really into computers". he asked me what it would take to get a job working on games. i told him basically a lot of hard work (especially since he played lots of games, but had very little technical knowledge). he decided against it. he was 16/17 at the time.

      another kid i know started writing IRC bots when he was in 6th grade, and now in 9th grade is exploring assembly on his TI calc.

      some kids will use the limitations they are giv
    • With regards to MUDs, I can heartily recommend LambdaMOO [mud.org]. It has a very simple object-oriented programming language, and unlike many MUDs, it's all interpreted, so you can program new stuff live with the server running. The server also automatically parses player commands with English-like syntax (direct objects, prepositions, and indirect objects) and passes them to the verbs (functions).

      The downside compared to MUDs is that LambdaMOO is designed primarily as an educational/social environment, so any RPG
    • When I was in 5th and 6th grade I wrote a 2D "lunar lander" program. It just read key strokes and applied acceleration to the lander (not speed) up, left and right. The lander had to land on a pad with less than a certain speed (both lateral and vertical). It was pretty easy to do with character graphics on the TS1000, then I recoded it with sprites and sound on the C64.

      I also wrote a simple drawing program (not gimp :-). Using a toolkit like glade/gtk it could be a real learning project. I learned al
    • ...my suggestion is to first control his expectations.

      It's a good point, but I wouldn't worry too much about it. My experience is that simply getting a simple pick-a-path-to-adventure type text game working is a huge thrill for most (geeky) kids. Sure, it may not be flashy, but they get a feeling of control and power, something they don't normally get (being kids and all).

      Furthermore, armed with a good game creation toolkit (I'm woefully out of touch at the moment), you can in fact create neat graphic

    • Like you say, the simplest games aren't instantly easy. Text-only RPGs are certainly no exception. They require knowledge of data structures and grammar parsing, or you'll end up with a bigass tree of if statements, and thus probably a rather stateless environment.

      Who says you have to worry about eye candy in graphical games? I'd start off with a bouncing ball and then make Pong out of it.

  • I was in a school program that taught us BASIC in 3rd grade. We were all writing 500+ line BASIC programs by the time we were done with it. Pascal and C came later. It seems like a more natural approach. Though, in those days, Pascal wasn't something to laugh at.
  • I am VERY impressed with this compiler! It is cross platform as well. (Windows, Linux, Mac)

    here is a little blurb from their page!
    purebasic [purebasic.com]

    PureBasic is a programming language based on established BASIC rules. The key features of PureBasic are portability (Windows, AmigaOS and Linux are currently fully supported), the production of very fast and highly optimized executables and, of course, the very simple BASIC syntax. PureBasic has been created for the beginner and expert alike. We have put a lot

  • by innocent_white_lamb ( 151825 ) on Wednesday January 21, 2004 @07:51PM (#8049868)
    I learned programming by typing in code from books like "100 BASIC Computer Games" and so on. David Ahl's books, Compute!, and the like.

    I don't see why a kid today can't type in a page of BASIC code out of a book. Once he sees the structure and gets the idea of how things fit together in a logical flow, the next steps should fall into place naturally.
    • I too learned a great deal of programming from "100 BASIC Computer Games", and it took many years to unlearn the bad practices. While the code was facinating 20 years ago, at that point BASIC was a viable language and we worked with 1 MHz 16KB machines. Frankly, the majority of the games were hideous even back then. When he sees the structure and gets the logical flow of that completely unstructured spagetti code he will renounce programming for life!
      I strongly belive that teaching children BASIC as a firs
  • You should just get them started on the right foot. C, all the way. I'd be okay with C++, but keep 'em away form the evils (read banging head on ceiling trying to make it work) of stuff such as Visual Basic, or C#.

    Everything that needs to be done, can be done with C. Done.

    • but keep 'em away form the evils (read banging head on ceiling trying to make it work) of stuff such as Visual Basic, or C#

      Riiiiiight, like there's absolutely nothing in C that could possible confuse a kid who knows nothing about programming, right? Nothing that could possibly make it difficult and frustrating to get it to work at all?

      Like hell.

      Everything that a 9 year old that's trying to learn basic game programming can be done in VB with probably less difficulty than C, if for no other reason because
      • MOST of what makes C difficult for people to pick up is their experience with "almost english" programming languages.

        Your basic, vb, and pascal type languages make learning C style languages difficult. The reverse is not true. A c programmer can pick up those style of languages fairly easily (not that they are all that worthwhile to add to your portfolio).

        Don't get me wrong, give them libraries that make it possible to write programs that DO SOMETHING the first day, don't hand them raw C. But do make i
  • I haven't seen the Shoot-Em-Up Construction Kit for a while, but that was great on the Amiga.
  • It is very important to use the carrot instead of the stick approach. First, get him the most advanced workstation you can afford as well as a 21" monitor minimum. Make sure he takes plenty of breaks, and when he does well, reward him with something nice like a trip to the zoo or a soothing massage. Above all, have fun TOGETHER!

    ------
    Michael Jackson
    • And then run Squeak! Squeak's Morphic is a fantastic teaching environment!

      Squeak Smalltalk [squeak.org]

      Morphic Tutorial [uolsinectis.com.ar]

      But rather than read about it, download and run it. It's fantastic!

      Morphic is approachable to little kids, assuming that they're old enough to read a bit (or you sit with them to tell then what's what). And Smalltalk is deep and open enough that they can learn as much as they want. Want to understand how the event handler works? Walk through it in the (source level) debugger. Since the entire en
  • I guess it depends on his attention span.

    If he can already code, then probably he's best off with a language/platform reference that isn't too dry, and lots of example code that other have written so he can get a feel for how people put programs together.

    Let me pull out my walking stick and reminisce about the Old Days (programmers with a longer history are of course free to run over me in their wheel chairs.) BASIC on something like the VIC20, Apple II or C64 was a great learning environment: immediate f
  • BYOND (Score:4, Interesting)

    by Van Halen ( 31671 ) on Wednesday January 21, 2004 @07:58PM (#8049954) Journal
    Disclaimer: I'm partial because I'm involved in this project. Take that for what it's worth, but I really do believe in it.

    You might take a look at BYOND [byond.com] (Build Your Own Net Dream). It has a simple tile-based graphics engine, an object oriented language that is easy to learn, and automatic networking so you don't have to do any extra work to get multiplayer games. And it's completely free to download and use.

    We've had a number of kids around the junior high age get involved and create their own games using BYOND. For most of them, it's their first introduction to real programming, and serves as a great springboard for getting into more advanced languages like C++ and Java. In fact, the success in that age group has almost become a problem -- the community is swarming with young adolescents and we adults feel like a minority there sometimes. We're even thinking of pushing it as an educational tool somewhere down the line...

    Browse around at some of the games listed on the games site [byond.com] to get an idea of the system's capabilities. You won't be making first person shooters, but it could be just right for someone your son's age. Puzzle games and RPG/adventure style games do particularly well in BYOND. Once you've downloaded the client (Downloads link, obviously), you can even connect to any games that are currently online. Just beware the ones in the Unpublished section - they may or may not be up to snuff, and may be hosted by immature 13 year olds looking to be rude.

    Then take a look at the programming guide [byond.com] and jump in to see if it will work for you. I'm not sure if 9 years old is too young for this, but your son sounds very smart, so he may pick it up just fine. Good luck!

    • If I have to look at one more piece of software that doesn't mention what license it's published under, I'm going to kick your ass.

      You sucker kids into creating content linked to your shitty libraries, then even provide some kind of hosting scam, and in the end all they're left with is a few cents in their PayPal account, right? While you "adults" keep all their blood, sweat, and tears in little plastic vials.

      Considering that the software doesn't even have a disclaimer of liability, maybe I should just su
      • > doesn't mention what license it's published under, I'm going to kick your ass
        > the software doesn't even have a disclaimer of liability, maybe I should just sue your ass

        Jesus Christ, LIGHTEN UP!
        These are some people having fun learning to program games, mostly kids. They probably don't have a lot of LAWYERS working with them, and hopefully don't have alot of jerks who want to 'kick their ass' or 'sue their ass' because of it.

      • LEGAL NOTICE

        Copyright 1996-2001 Dantom International. All Rights Reserved.

        BYOND is free, and may be freely distributed, so long as it
        is distributed in its entirety and free of charge. No parts of
        BYOND may be distributed individually, nor may extraneous
        parts be distributed with the package, without written
        permission from the authors (*email of author was here*).

        In no event shall Dantom be liable for any damages whatsoever
        arising out of or related to the usage of the software or
        information contained wi

  • Python [python.org] and Pygame [pygame.org]. Python is not only easy to learn but also a powerful real-world programming language. It might not be quite as ideal for a 9 year old as languages/environments designed to be more playful and task-specific, but it's probably the best "real" language out there for the application. Besides, from what I've heard, a lot of people learned Basic around 9 or so and Python is definitely easier (if not to grasp the basics of then at least to do anything useful with) than Basic :)
  • I was just looking into text only games [Interactive Fiction] recently for the first time in a looooong time. I found some fun ones that were done in the TADS language which is apparently made just for that. The site I downloaded the runtime environment from also had a compiler. Check out tads.org [tads.org] For some background. I think an IF game is a perfect starter for a kid.
    • TADS and Inform (the mainstays of moderm Interactive Fiction, and yes, it does exist) are rather difficult for a 9-year old, I'd think..

      I reccommend Alan [welcome.to], which is very easy to use.

  • trySiMPLE [simplecodeworks.com]
  • by Anonymous Coward
    Tell your child that he needs to learn and learn fast. Tell him that he is in danger of being replaced by an Indian child that you are thinking about adopting. Calmly explain to him the economic benefits of having a child in India as opposed to in your own home (less cost for food, housing, etc.) If you can explain all this in words that he understands, I think you will be amazed at the progress he will make.
  • I first started using a computer when I was 8 (1986), when the government provided all schools with Thomson comps (6809 processor, 1 Mhz) processor. If I remember correctly, there were four languages available: basic, assembly, forth and logo.
    Logo was too simple and limited to be interesting.
    Basic (MS Basic 1.0) was easy, and the interpreter made it a hands-on, "sandbox", experience. I don't think I would have been hooked by a compiled language back then. On the other hand, it's pretty limited and what is
  • Has anyone done a modern version of 101 BASIC Games?

    That said, you may want to start by working with some realistic expectations. Does you son understand the sheer amount of work necessary to do the games that he probably plays? Does he understand that the first few games that he does are likely to be very simple in nature? When my wife started learning how to program, she was an avid user and excited about the possibility of becoming a programmer. She was dissapointed at how a full day of working could on
  • by larry bagina ( 561269 ) on Wednesday January 21, 2004 @08:20PM (#8050181) Journal
    Pick up starcraft or NWN or some other game that allows you to build your own levels. They usually have event triggers and a mini scripting language, so you can focus on how that logic works and not have to deal with artwork and music.

    You could also take a look at Macromedia Flash. They have a usable scripting language and you can draw or import graphics and sounds from elsewhere.

  • He might be interested in modifying existing games or game engines. That is, he can start by modifying game content instead of starting from scratch writing programs.

    You can create your own levels and such for many state-of-the art titles. It's challenging and rewarding. Some people get into the industry this way.

    There are many games/engines that can be modified.

    Garage Games took this mod idea in an interesting direction by taking the technology used for Tribes 2 and marketing it as an engine for a sm
  • I know you said he wants to make games, but start him out on other sorts of programming that are fun but also much more instant-gratification-esque. I would suggest one of the many games where you can program robots/tanks/gladiators/etc, specifically Robot Battle, C++ Robots, or Core Wars. If he is still interested in programming, get a copy of DarkBASIC for him, its a great way to get started programming good looking 3D games (skip the textual stuff, its just as good to learn with 3D apps and a lot more
    • It can produce games which look like the cheap ones in the bargain bin (which is good enough for a beginner!) and it doesn't require TOO much effort. A great stepping stone for a budding young programmer.
  • Squeak, squeak! (Score:3, Interesting)

    by MountainLogic ( 92466 ) on Wednesday January 21, 2004 @08:22PM (#8050203) Homepage
    Consider the Squeak [squeak.org] environment. It's an open, highly-portable Smalltalk-80 implementation. It is really friendly place for kids to get started and smalltalk is a good language for kids to start with.
  • Being nine years old with an aptitude for math and computers should allow your son to grok much of Python [python.org] and especially the Pygame [pygame.org] modules for easy game writing in Python. Pygame runs well in both Linux and Win32 (based on the SDL libraries, also free). There are plenty of short, easy examples of graphics and sound and animation using Pygame.

    LiveWires [livewires.org.uk] has some Python courses specifically for non-programmers and young people, some with a slant toward games.

    You might also look at Guido van Robot [sourceforge.net], a Pyth
  • Try this [slashdot.org].
  • I learned to program very young when I was seven or eight. My brother had a ZX81 . I got the bug from programming listings from the ZX81 manual and various magazines. I guess the way forward is to learn by example. It doesnt matter what language, its the techniques and the understanding that are most important. At that age just provide a sandbox that gives a basis to learn from. By the time he gets a bit older he will more than likely have the gift ... so just go for it!
  • Lest we not forget our buddy Dijkstra:

    It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration.


    I vote Python or Scheme.
    • Ahh, Dijkstra. One of the giants of the gaming world.
    • While a catchy phrase, it's still bullshit. I know plenty of perfectly decent programmers who started with BASIC, and quite a few more who have "had a prior exposure to BASIC". An intelligent person can learn BASIC quite easily, and it does not destroy their mind.
      • "An intelligent person can learn BASIC quite easily, and it does not destroy their mind."

        Keep in mind that modern dialects of BASIC are really closer to interpreted Pascal than the BASIC that screwed up so many kids back in the day. So aside from a few random leftovers, modern BASIC is a pretty decent language (though it's still crappy compared to Ruby or even Perl).

        So, in the context of the primal BASIC that the poster was referring to...

        I used to teach programming to kids; the official sequence then wa
    • The beauty of BASIC, and the reason I still us it in various incarnations (VBDOS, DarkBASIC, and VB.NET), is that it is an interpreted language with an integrated IDE (yeah, i know, sounds redundant, but its not, C++ IDEs arent really integrated the way I am talking about). I have never used another language in which it was EASY to break out of the program, modify the code, and then restart execution FROM THE BREAKPOINT, all without losing any of the data in the running app. BASIC allows for faster develo
  • My first language was BASIC on a B-5500. It was the Basic of the day.

    Let this kid learn the Basic of this day: Visual Basic .Net 2003!

  • The PyGame (pygame.org) module for Python provides a reasonably complete binding of the Simple Direct Layer (SDL). It is sufficently high level to allow for the coding of reasonably good games win several pages of code. Using this in combination with the Python binding of VTK allows for the coding of real time interactive 3D apps in 3-4 pages of code. For folks who cant wrap their heads around VTK there is always pyGL
    As a result it is possible to easily write games in python while promoting good coding prat
  • On a related note (Score:4, Informative)

    by stoborrobots ( 577882 ) on Wednesday January 21, 2004 @08:56PM (#8050560)
    Some links which may be useful...
    • GameDev [gamedev.net], and in particular the How do I make games? [gamedev.net] and Game Programmer's Beginners Guide [gamedev.net]
    • for the hardcore out there, a Win32 Assembly Tetris Clone [gamedev.net] how-to guide, with full source code and commentary...
    • A programming language called Euphoria [rapideuphoria.com] which is so unlike "real" programming languages, that it might just be easy enough for a kid to pick up and learn in a couple of days... (I got into it a few years ago, well after I learnt to program)
    • XBasic [maxreason.com] - a decent BASIC for graphics support... (Win32 graphics... I got it because it was a step up from QuickBASIC!) There's a linux version, and it's all GPL these days...

    That's all I can find in a quick scan of my bookmarks from way back when...

  • Hard enough to be interesting, easy enough that you don't have to teach them about collision detection. There is also an engine called COG [sourceforge.net] which was specifically designed to for non-programmers to make games, although I don't know how far it's come since I last checked it.
    • just what i was going to suggest.

      tads [tads.org] or
      • inform

      (no link jumped into my hands) are decent toolkits.

      might try the interactive fiction archive [ifarchive.org] for more along these lines.

      it'll hone the storytelling, which is pretty durn important against the graphics and whatnot. kids games are jawsome!

      there was a pretty neat one using claymation from a few years ago, as an adjunct to the text. i think it was in Tads - a quick look through the competitions from previous years and nothing rang a bell for me - maybe some

      • there was a pretty neat one using claymation from a few years ago, as an adjunct to the text. i think it was in Tads - a quick look through the competitions from previous years and nothing rang a bell for me - maybe someone else knows it.

        I believe that game was The Neverhood [dreamworksgames.com] -- ring any bells?

        • mmm... i'm pretty sure the one i'm thinking of was written in TADS and was about aliens in the backyard - it may have actually been called 'the back yard', or somesuch.

          it was a one-guy effort, and was in the running for the interactive fiction competition...

          not to take the limelight from a perfectly good alternate. ;)

  • I can only recommend what I learned to program with growing up. Unfortunately, they're not all that easy to find anymore.

    I think HyperCard was the ideal introduction to programming. You some simple GUI apps in a WYSIWYG way, and every kid who learns to use it immediately grasps its potential for making games. It requires 0 programming knowledge up-front, but as kids start wanting to do more elaborate things, they can jump right in to the HyperTalk language, whose syntax is more English-like than any pro
  • how I became a programmer:

    GW-BASIC
    Maybe not the most elegant solution, but certainly a reasonable starting point at the end of the microcomputer era. This is how I leared. Of course having an uncle who could also code in BASIC and a father who occasionally dabbled helped too. I still have my old book "Using BASIC" from Que, well worn and loved, which I received for a birthday sometime around 8 or 9. The book itself had some mediocre tutorial value, but the real value was in the quick reference at the b
  • I see no reason why a 9 year old cannot learn ANSI compliant C or C++.
    • That works great, until you get to pointers, classes, enums, templates, structures, etc. While I have no doubt that some nine-year-olds are capable of wrapping their heads around those concepts, the vast majority would be better starting off in a higher-level language.
    • Ironic considering your signature's non-standard-ness.
  • by John Harrison ( 223649 ) <johnharrison@[ ]il.com ['gma' in gap]> on Wednesday January 21, 2004 @10:06PM (#8051110) Homepage Journal
    I taught myself to program the Commodore 64 when I was 8 using the manual that came with it. My younger brother and I would spend hours making games and little demos in Basic. I didn't know at the time what a demo was though.

    A few years later my dad got us a copy of Kids and the C=64 but the games in that didn't seem as fun as the ones we were making, which were more graphical.

    Learning by making games is the way to go. Kids can learn some algebra concepts by learning the simple graphics libraries and learning to do simple animations.

    A few years ago a 12 year old sent me an email and asked if I would help him make a video game. He had seen one of my others games on the web and wanted to learn. I thought it was cool that he dared to ask, so I took him up on it. We decided to code in Java since it is freely available and you can put your work up on a website for others to see. The result is at http://www.angelfire.com/games4/anirak/ [angelfire.com]. I did most of the programming and he did the design of the game and the graphics. We went over the code using instant messenger he understood it and would modify it to try out different things. It was a lot of fun for him.

    After that I started writing a pacman [angelfire.com] type tutorial on the same site, but only recently have I made any progress on it. Unfortunately the stuff I have done recently is pretty complex. It is probably easier to stick to shot-em-ups that don't involve complex boards or AI when using the game as a learning tool for children.

    If you want to use any of the code on those sites for educational purposes feel free to do so.

    • I just played Anirak for about 20 minutes. It's addictive! :)

      Does X5K MaStEr X5K (the kid) ever read slashdot?
      Has he done any other programming since making Anirak?

      BTW my high score was 308000...If you've tried it, post yours.

      -TMF

      • As far as I can tell by the questions he occasionally asks me he is using a Java decompiler to look at the client source for various online games, making changes, and then cheating at those games. So yeah, I guess he has become a little cracker/hacker. At least he is writing code instead of using someone else's tools. :) I don't think that he reads /. regularly.

        I just played and barely reached level 40. Score was (oddly enough) 3,080,000.

        There are several tricks to it that aren't listed on the webpa

  • Has he expressed an interest in programming or just game creation in general? There are fan sites for virtually every popular game. They host user-created addons, tutorials on every aspect of modification (from level design to texture creation to in-game scripting to ai, animations, modelling, etc.). Encourage him to find sites like these and start making addons. Lots of people have been hired out of our community alone (site up there ^^). Hell, a lot of our visitors are 13-15, and most of them are far
  • I used this sytem for 2 years before switching to the Torque engine (simply to delve deeper into the engine). It is by far the easiest and most rewarding system available for a newcommer without prior programming knowledge.

    www.3dgamestudio.com
  • Before OSX, Apple developed a K-12 programming environment called Coca.

    It's now cross platform (java), and available from Stagecast [stagecast.com]
    Looks like it gives a great intro to OO programming, since every character is an object to which you can assign properties and behaviors.

    • Just to clarify for those doing searches, it's Cocoa (just like the OSX/NS framework).

      And mods, this is the direct answer to the Ask Slashdot question, the tool built for expressly this purpose. A friend taught his 8-year old daughter how to use it and she was absolutely delighted.
  • ...TADS. Allows him to build the basics of a game without worrying about graphics, and forces him to focus on the STORY, which is bar none the most important aspect of a video game. Very easy to pick up, and is an easy lead into more advanced progamming languages. There's also tonnes of TADS games with source code.

    Of course, I might be biased as I used gwbasic to write a text adventure game when I was a kid, but who knows :)

  • If you're not afraid of ramming object-oriented design into the kid..

    check this out:
    http://www.alice.org

    I'm 21 and extremely interested in game development, always have been. My uncle brought over a copy of Alice for me when he was visiting for Christmas, I played with it for about 15 minutes, I found it to be a little simplistic, but I can see how a kid might just go crazy over it, especially one with little to no programming skills.

    The nice thing about Alice, is that it teaches well structured program
  • I think at any age, a kid should get reeeeealy comfortable with a programming language before tackling a potentially complex project like creating a game.

    My programming language of choice is WinBatch, and I did once try to make a network Poker game.

    As soon as my nephew moves back to my locality, I am going to expose him to Linux and WinBatch.

    Speaking of Linux and WinBatch, has anyone confirmed whether or not Wine will run WinBatch?

  • Does he want to be a programmer or a game designer? The two are not quite the same thing.

    That being said, get him started with making board or card games, and learn the basics of rule creation, game balancing, etc.. early on.
  • by EnglishTim ( 9662 ) on Thursday January 22, 2004 @06:03AM (#8053109)
    Alice [alice.org] is a free simple 3d system based around Python - I can highly recommend it, my two ten-year-olds and even my six-year-old have been playing on it.

    It's developed by Carnegie Mellon University, and at it's simplest is directed towards telling interactive stories. It's sufficiently flexible to allow a wide range of applications, however. The interface is intuitive, and it has a large library of pre-built objects to get started with.

  • I think you are on the right track with Logo, since Logo is an interpreted and interactive language.

    When the kid outgrows Logo (which he will do fairly quickly), then I'd suggest moving him on to other languages that are interpreted* and interactive - that is, that allow you to type commands at the command line to see "What happens if I do it this way".

    TCL, Python, Perl, Forth, Ruby, (gack)Basic(gack again) are all good ways to go in this regard.

    Of course, you want to teach the kid the value of looking a
  • I didn't see robocode [slashdot.org] mentioned. It's an IBM developed, java-based project intended for people who begin to learn programming. And it's a game.
  • by avi33 ( 116048 ) on Thursday January 22, 2004 @11:23AM (#8054930) Homepage
    Try this post [slashdot.org]:

    "I have been asked to teach a week-long class on Computer Game Design for a small group of computer literate kids, around 9-13 years old. My plan is to have them create a simple game, while exposing them to aspects of story design, artwork, animation, and simple programming. To this end, I'm looking for a 'game construction kit' that is simple enough that they can have a working game by the end of the week with some guidance. Anyone remember the 'Arcade Game Construction Kit' on the Commodore 64? Adventure Game Studio looks good, but it may be too complex. The genre is flexible, but it does need to generate a distributable Win32 binary that they can take home. Are there any Windows packages, public domain or otherwise, that can do this, especially any designed for kids?"

    god i need a fscking life...i've tearned into jeeves.
  • SDL [libsdl.org] is a GREAT graphics library that is cross platform and easy to use. Simply amazing what you can do with it, and how easily. There are libraries out there for TTF support, along with networking and multi-threading. Really, everything you need for a simple 2D graphics game.

    Project 1: Make a puzzle game, maybe one of those image sliding things where you divide an image up into a 5x5 set of tiles, mix them up, remove one and you have to shuffle things. Additions to this would be to make the tiles 'anim
  • by Frogg ( 27033 )
    How about a Commodore 64, a 1541 (or similar) disk drive, a copy of the original manual and, of course, a copy of the C64 Programmer's Reference Guide.....?

    It can be easier to get going with only the bare basics of a computer, it's a simple enough system that a young teen (ok, ..got a few years to go) can understand the /whole/ system inside their head.

    Start with Basic, move onto Assembly language when you run out of power (or get very bored with Basic).

    With a C64 you'll soon also be messing with hardwar
  • I posted a similar article [slashdot.org] almost a year ago for a class I was doing for kids about that age. I ended up using Game Maker [gamemaker.nl], which worked very well - it let them experience various aspects of game design, such as graphics, sound, gameplay, collision detection, without having to do it all from scratch in a low level language. We just used the graphical interface, but it also has a scripting language for more complicated programming. After 10 hours of class time, the kids were able to take a fully playable g
  • <My Two cents>
    For an experiment, see how he feels about putting together a puzzle/"choose your own adventure" style game in HTML. Have each page represent a new location or result from an action and link them all together ("Click here to turn left down the corridor or here to drink the potion on the table"). This will teach him a bit about game structure and let him throw in a few (admittedly, static) graphics, all with a very low technical knowledge threshold. It will also introduce the idea of
    • very low technical knowledge threshold

      I forgot to mention the obvious: You can do this with any authoring tool or even with MS Word (which I'd suggest over teaching him to manipulate an HTML file with a text editor at this stage).

      Also, the kid can upload the pages to a Geocities site and share it with his friends, generate some web traffic, start a company, go public, become a millionarie, and buy for a villa in Tuscany for his parents!

      Sorry. I had a 1999 dot-com flashback there for a moment. This is s

  • by ReyTFox ( 676839 ) on Friday January 23, 2004 @01:52AM (#8063395)
    A lot of the people here are advocating the hardcore, learn-to-program approach.

    But not everyone that wants to make games wants to learn programming, and this was a source of some frustration in my own younger years, because although I had tools available, I saw what I was going on, and I had plenty of ideas, my drive to actually create code was almost zero. So I let things sit quite a long time, and was almost entirely dependent on finding tools that minimized the amount of structural work needed(graphics routines, objects, tile engines) and maximized the amount of control I had over the critical segments of gameplay, like collisions and shooting. The best free one around like that today is Mark Overmars' Game Maker. It allows you to do some very complex things with a C-subset scripting language, while at the same time providing a strong IDE and toolset. It's unfortunately tied to DirectX and Win32, though, and it's also not an opensourced project(for a $15 registration fee you get a couple more options), but the free version is by no means crippleware, and for what it does it's very good. Also the forums are quite funny because the majority of the posters are kids playing at game development, and not even really having the smarts to do well with such a great tool.

    Now I'm a freshman in college and plan to get at least a BA in CS, not because I like it, but because it's going to keep pushing me to advance my skills until I'm well capable of making games of all complexities. (I plan to go into shareware/independent gaming, so learning all skills equally well is a Good Idea. Also a good recipe for using up all my spare time.)

    I've moved on from Game Maker to Pygame since I started college; my current greatest accomplishment with it is doing a scrolling tile engine(with all sizes, screen border etc. adjustable); it took three times for my code to be really anything close to clean, and after the second time I decided OOP is not a magic bullet for anything. My next project is to add a modular framework that includes the tile engine; using this framework, users will be able to make maps that play differently, because each map will load some Python code and objects in addition to settings for the tiles. It's kind of confusing me, which the tile engine did too, the first time, but I think that if I keep at it I'll get somewhere, and from there it'll just snowball until all of the sudden the game I'm planning is done hehe ;)
  • This might sound like an oddball choice of language for game programming, but since Perl has bindings for GTK, SDL and probably anything else you might want to use to construct a game, it has all the basics in place.

    Documentation for the language is widepspread, copious and mature, and perl also makes a great general purpose language.

    Also, Perl's syntax and language constructs tend to favour people who are exploring and playing, rather than implementing a rigid design they already have all mapped out in t
  • I know this discussion topic is pretty much dead by now... But I'm working on a project I call Jiggle [bigzaphod.org] which (currently) merges JavaScript with OpenGL. Eventually I want to turn it into a powerful game/toy development enviroment for beginner-types.

He has not acquired a fortune; the fortune has acquired him. -- Bion

Working...