PDA

View Full Version : Game programming for kids


scienceman
2003.06.27, 06:13 PM
My 13-year old is itching to learn how to program games. I am modestly good at C++ and Mac/Unix programming, but have not been able to come up with a good starting point for kids for Mac game programming. All the books in the local bookstores are VERY Windows-oriented -- hence I have come to this site and am looking around. Any good suggestions for Mac-orietned kids programming resoruces would be appreciated. Thanks!!

Zoldar256
2003.06.27, 06:36 PM
I started out writting hypercard games when I was 9. That and basic ones on my TI-92 Home Computer (ooo rah.. that thing was sweet)

If you can find a hypercard like program (SuperCard?) I'd recommend that. Even as a kid I was able to create very fun Cosmic Osmo style games. At least they were fun to me, expectations were less then ;-) Maybe Flash is what your looking for. Used to be very similiar to Hypercard/Director, and perfectly capable of producing games. And I think Flash is the only one of these that I can actually recal having a game programming book oriented towards it too.

I haven't looked at MetalBasic, but it seems to have a small following of happy users.

applekid
2003.06.27, 07:19 PM
I started off in BASIC myself when I was 10. There's plenty of resources out there (i.e. FutureBASIC, RealBASIC, Metal BASIC, TI calculators). If you can find anything about the old Mac language LOGO, that'd be useful. Not exactly game-orienated, but you move graphics and add sound. There is a version called Microworlds Project Builder. If you can find that, it'd be a nice starting point. My third grade math teacher taught it to us and it wasn't too hard.

Dr. Light
2003.06.27, 07:26 PM
I started out with basic. I am having hell with learning objectiveC. Teach the little wippersnapper everything you know about C++ right off the bat, doing some boring stuff like learning to sort a list(That held me captivated though. Guess I'm just a nerd:(). Then launch an all out assault on a standard text-based tic-tac-toe. After that do some basics with drawing. that process should be completed in about 6 months.;) He'll learn the rest himself.

ERaZer
2003.06.27, 08:16 PM
I learned programming first with Hypercard, and I started when I was really small(like 5-6ish, it was before I started elementary school(or whatever you call it in your country) at 7 becouse then I'd created my first game).
But I'm not sure what you should use to teach him, but I think something that is visual and direct(ie create a button, and pop you see a button) or something like that, so REALbasic or Flash or Director... But on the other hand, it would perhaps be good for him if he didn't start out in such an environment it might help him, and if he really wants to make games I would try TNTBasic.

Bachus
2003.06.27, 11:55 PM
In elementary school we had a computing class that we went to once a week where we learned BASIC (mostly by copying a program off a sheet of paper, but still). Then at home my dad taught me Hypercard and LOGO. Later on in middle school I took classes in BASIC and Pascal. Then in high school I took more Pascal courses and started writing games on my calculator in TI-BASIC. I also taught myself C from books and the web.

So yea, I recommend Hyper/Supercard and LOGO, but those can be hard to find these days. Flash and Shockwave might be worth looking into. Lego Mindstorms is also worth getting, especially if he's already into Legos.

Here's (http://www.aiguru.com/logo.htm) a good page I just found on LOGO resources and programming for kids.

skyhawk
2003.06.28, 12:42 AM
I have written a LOGO type program, the class is very easy to use. If someone wants to use it to make an easy language for their kids, go ahead. Public Domain (aka do anything you want with it)
http://www.hkasoftware.com/skyhawk/logo.html

burden
2003.06.28, 12:47 AM
QuakeC?

Simplicity, immediate gratification and blowing stuff up will keep most 13 year olds interested.

Frank (http://www.planetquake.com/paroxysm) should have some resources for getting started.

Scoops
2003.06.28, 09:16 AM
Certainly Pascal used to be a good starting point into learning about programming so you could step up at a later date but I don't know if there are any freeware implementations of Pascal around still.

Python is a high level language that is actively taught to children over a short time period and has game extensions (Pygame) and 3D facilities so you might want to start over at http://www.python.org.

Personally, I started out using basic which is a great language to learn the basics (sorry) with. There are several implementations on the mac you should look at. Metal has a good following here and seems to be very fast and games are made all the time using it. TNT Basic does a little bit more for you as far as making games is concerned though both are 2D orientated.

REALbasic has 3D facilities too and a nice interface but isn't cheap. None of the Macromedia solutions are cheap either though if you have the money that will open up your options to the 'Card' style ones such as Hypercard (still available from Apple), Revolution, iShell, Metacard and Supercard.

death_himself
2003.06.28, 10:04 AM
I'd suggest Metal Basic, I find it more reqarding than RealBasic, seeing the text turn into a game world...brilliatn :)...to me at least. I'm 15 and had trouble with first Pascal (problems with it's graphics, objects not maintaning their colours...but I've worked out why now)...Pascal is free now, if a little obsolete. C++, now, I liked that, I had to stop because I couldn't afford the compiler and realised my cunning plan ("cunning sire?") to turn the date back thus refreshing my 30 day trial of codewarrior 8...wasn't so cunning. Now, Python, I liked Python, I had to stop using that because a) There wasn't much help on installing stuff such as, say, pygame (no step by step thing for newbies to programming) and also whilst a whole load of useless calls to carbon worked (I made the system sound bleep every ten seconds...and other dumb stuff)...the module to make windows...seemed to be missing...no seriously...though, thats prolly something to do with my computer...or me. Okay, now I'm just blabbing on about irrelevent stuff. Basically, I like Metal Basic, because there is simply no add-ons that need compiling and installing, and you can get something moving on screen pretty easily, its just a shame I can't make system calls, then I'd feel like I was really programming :( . Oh, right, yah...this is a rather pointless, nonsense post. I'd start with metal basic, then python or C++ :) .

diordna
2003.06.28, 10:29 AM
MacPython has no GUI module.

Although I think wxWindows works in it, but that's a rather large download because you have to get some kind of extra system.

Patrick
2003.06.28, 10:40 AM
You could try THINK Pascal (http://www.think-pascal.com/) and SAT (http://www.lysator.liu.se/~ingemar/sat/sat-downloads.html).

It only works in Classic, but Pascal might be easier to learn than C etc( Pascal is designed for teaching programming ) and at least it's not BASIC (http://www.acm.org/classics/oct95/)! :p

There is a good Pascal tutorial here (http://web.mit.edu/taoyue/www/tutorials/pascal/contents.html).

aarku
2003.06.28, 11:38 AM
I started with QuickBasic and TI-Basic, the latter on my brother's TI-85 around age 7, and I started doing Pascal around 12-13. I would definitely say don't give him Basic unless he becomes really frustrated with learning C, Pascal, or Java... or whatever. My recommendation is for him to dive right into C. SpriteWorld (http://www.spriteworld.org) can give him something nice to look at. Plus version 3.0b2 is already out which runs great on X and classic. Not to mention SpriteWorldX is coming along nicely which marries SpriteWorld to SDL for cross-platform compatibility. I'm rambling... oh so tired. In short, learn a language that will look nice on a resumÈ. I know he's 13 but yeah everyone is 13 at some point. If he starts on a "learning" language, just make sure he eventually switches. I wish I hadn't stayed programming Pascal for so long and had switched to your C/C++/Java earlier.

-Jon

Carlos Camacho
2003.06.28, 09:44 PM
We have/use to have a thread on the very subject. But I can't seem to find it. I'm sure it wasn't deleted. Hmm..

DJBlufire
2003.07.03, 05:39 AM
I think one of the most important and hard to understand things about programming as a kid is that you have to start small and, probably, with a text console.

Back in 5th grade I was itching to program games too, and I got a C book. The language itself wasn't all that hard, but what really pissed me off was that I wasn't jumping into graphics and game programming right off the bat. I had no clue why I had to bother with consoles, printf, etc. I sort of dropped programming for a couple years after that because I lost interest/lacked direction... but I started going again once I found a class on programming in school (those are great).

er... the Cliff's Notes: if you're going to teach a kid programming, either start with something graphical (metal, realbasic, something like that) or make sure the kid knows that you do in fact need to start small. I wish someone told me that. :rolleyes:

applekid
2003.07.03, 10:04 AM
Originally posted by DJBlufire
I think one of the most important and hard to understand things about programming as a kid is that you have to start small and, probably, with a text console.

Back in 5th grade I was itching to program games too, and I got a C book. The language itself wasn't all that hard, but what really pissed me off was that I wasn't jumping into graphics and game programming right off the bat. I had no clue why I had to bother with consoles, printf, etc. I sort of dropped programming for a couple years after that because I lost interest/lacked direction... but I started going again once I found a class on programming in school (those are great).

er... the Cliff's Notes: if you're going to teach a kid programming, either start with something graphical (metal, realbasic, something like that) or make sure the kid knows that you do in fact need to start small. I wish someone told me that. :rolleyes:

That's basically the same thing that happened to me. I started with BASIC, but wanted something more mainstream. So I jumped into C, but I all I got done was "Hello World" and doing numbers. :( Quite disappointing.

I'm learning Java at school and I think I've gotten more done because of the incentive of grades. Maybe putting an incentive would help the kid if he was to learn a more advanced language such as C or Java.