Game Creation Software for Kids?
-Surak- asks: "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?"
You should try Klik n' Play. My friend used it to make some intresting games when he was younger. And it looks like they have a version for schools that's free to use too.
"In
I looked at the mentioned AGS project, and it seemed very cool.
Unfortunetly the guy who wrote it seems to have been burned before, and won't open source it - for those to whom such things matter (like me - I'm anal about such things unfortuntely).
From his FAQ:
Q. Then can I have the source code, to port it myself?
A. Sorry, AGS is not open-source. There are many reasons for this which I will not go into here. The main two are:
(1) I made another application open-source in the past, and someone took it, changed the copyright and tried to release it as their own
(2) The AGS file formats are proprietary to make it harder for people to "hack" other people's games. If the source code was available, it would be easy for someone to write some sort of de-compiler for use with other peoples games.
I'm sure I remember there being opensource engines for such games - anyone know gui's for them?
But I'd recommend having a look at the livewires material. They teach writing a few simple games in Python in a short time.
As for taking it home, Greg McMillan's great Python Installer can make that happen.
And it's all open source and works on Unix/Linux as well.
He says that the adventure game studio program looks to complicated. Looking at the site, it sounds very easy to use.
Don't be patronising to the kids.
Many people here probably could code by 9, the lower end of the age range. At the upper range, 13, I was doing advanced c++ courses at college..
Kids learn quicker than adults - remember that.
Have a look at Squeak.
It's a Smalltalk virtual machine with easily programmable 2D and 3D graphics, audio support, runs on just about anything.
Squeak
Squeakland
Now wash your hands.
Not really programming, though there is some proprietary scripting involved.
Unfortunately, I can't remember the official URL, so you'd have to search on Google.
You might want to look at The Games Factory. If that doesn't suit you, check out this site which has various abandonware games for free download, including the Pinball Construction set.
Thing is, this class is only one week long. Not enough time to teach anybody anything really complicated. So forget anything that goes beyond drag-and-drop visual programming. Otherwise, I'd suggest something like MSWLogo. Or if you have a big budget, MicroWorlds.
I highly suggest you have them tweak the code/settings of whatever you use. I learned game coding real easily and quickly by messing with the source code. eg: changing resolution, starting health, rate of fire, amount of enemies on screen, colors of the actual art files, CHANGING the art files.. etc etc etc
so before you teach them to code or use the program. MAKE ONE FIRST or take a completed game and then give it to them and say that they'll make something similar..have them mess with the settings . It's much easier to first tweak your game rather than start from scratch.
You can direct them to Allegro (http://www.allegro.cc), or even pygame (http://pygame.seul.org) if they show an interest past your class. Both of these packages can be set up in Win32 (with some work), and are a great start in C/C++ and Python development. They're free, use free compilers, don't require too many additional libraries/includes, and they have excellent example programs the kids can play with/learn from. They also have support forums geared to beginners, and have very friendly followings willing to help newcomers.
SDL (http://www.libsdl.org) and Java (http://java.sun.com) are less optimal choices. SDL requires a ton of includes, and someetimes has a tricky compiler setup. Java doesn't have terribly much support for game programming, and doesn;t have a great game-support community.
Granted, they're not Klik and Play type programs, but it's useful to know about these things in case a student wants to continue their learning on their own.
I agree with AnglerG, Allegro is a very friendly library, easily understood by children.
Another thought. Emulate a C64 and run Game Maker etc...
I wish you were MY teacher in school!
Just teach 'em x86 assembly. That stuff builds character!
Just slap Debian on the machines, use emacs (not xemacs) and get them to build up their own X11 implementation, window manager and implement OpenGL interfaces to create their own games.
Check out BlitzPlus/Blitz 3D here...
Although a little bit old, you can have a look at: http://www.div-arena.com/
Since they're young, probably one of the BEST ways you can get them really enjoying what they're doing with you is to make sure they have lots of popular media they can stick into the games they're building. Get ahold of lots of those midis of pop songs, or create some skins for pop icons or celebrities or their favourite action heros or whatever before hand. That way, it'll be nice and interactive, and probably also give them some base to work with. That is, maybe if they're working with preexisting characters, they'll be able to write a game along preexisting plotlines and not have to worry about creating their own (since you've got limited time).
Read jack phelps dot net
If you're willing to take a slightly harder but more rewarding route with the kids, I'd suggest Blitz Basic, available over at BlitzBasic.com . Unlike many of the other applications mentioned already, it's a true programming language, with a nice clean syntax (somewhere between C and Basic) and very good support for a wide variety of media. It's also blazing fast in comparison. I'd suggest this route as a sort of middle road between game programming libraries such as Allegro, which are likely to be frustrating for such young kids, and pre-packaged game-makers like Klik-n-Play, which they will very likely find too limiting. Also, there's already a large, very newbie-friendly community over at BlitzCoder.com , of which I am an active member. The site has very active and helpful forums, as well as a broad range of tutorials written for everyone from complete beginniners to experienced programmers.
--- Bwah?
Learning is easy when you're young, and learning assembler will give kids a far better grasp of what a computer actually does when executing a program than starting them on some high-level toy language.
very easy to make a simple game which can be quite entertaining for kids, quite expensive :(
Google Directory of Games Development Software is a good start. Don't miss the Parent Directory of Game Design. I've personally tried two free ones: Game Maker and Build Your Own Net Dream.
Game Maker is similar to Klik 'n' Play. It's free and you don't have to program at all. You do have to firmly grasp object oriented conditional behavior. You can also add complicated code if you get deeply into the game.
If you want to introduce game design, history is an excellent teacher. Space War, Pong, and Breakout are excellent games to mimic as teaching devices, then move on to Space Invaders (which is really just Pong Strikes Back!), Head-On (early version of Pac Man), and Asteroids.
obviously this isn't practical for all languages and programs these days. But it doesnt mean it has to be abandoned completely. I'm just saying that given the choice between something that requires them to type some code, and something that just requires dragging and dropping and bumping up widget coutners in a dialog box, I'll take the former any day.
Memory Lane: "More BASIC Computer Games" by David Ahl. Wonderful stuff. Eliza, Wumpus, all the classics.
Also, consider one of the multitude of "program this tank in language X" games out there. I learned C via C-Robots (Tom Poindexter). Great stuff, and the same principle applies -- you're given the scope with which to look at problem solving, rather than just syntax. Of course, that's only fun for multiplayer so maybe that's not what you want.
www.HearMySoulSpeak.com
gcc and a text editor is all you need to make any game. A net connection helps.
The GeekNights podcast is going strong. Listen!
Far and away the best software like this that I've come across (and put all my energy into over the last few weeks) is a little shareware package called Game Maker 5.
It is professional, flexible, stable, and all around a total surprise.
You can use it on a basically unlimited basis as shareware, or register it for $15 to support the project.
The link is: http://www.gamemaker.nl/
Truly I can't believe that this isn't on store shelves (probably limited marketing appeal)
http://education.mit.edu/starlogo/
Logo was a language designed for kids to learn programming, and Star Logo enhances the language with a lot of nice graphical features that would make game programming a breeze.
That said, I used to work at Maxis, who published Klik'n'Play for a while. I'd recommend that over StarLogo for ease of use (it's all drag and drop, but still has lots of logic involved) and there is a free version for classroom use on their website.
MY personal favorite.
If the language itself is too complicated, there are several creation kits as well. I suspect that transitioning from one of the kits to the full language will be a great learning experience.
Dark Basic
Promote civility: mod down any post starting with 'ummm'.
I have 3...
m l
The first is Robocode which teaches programming concepts through a simple tank game. It also allows for some competition in an arena. For the amount of time you have, this would be great!
http://robocode.alphaworks.ibm.com/home/home.ht
Next is The Scrolling Game development kit.
http://gamedev.sourceforge.net/
Finally, I'd look at the level construction software for Neverwinter Nights. This is a great set of tools. My kids taught themselves to use it and have made huge levels. You can go as far as you want with scripting, etc.
grimzap
grimzap
One of my old machines definitely ran at <1Mhz though - and I shall not rest (or do any work) until I find out which one it was!
The original point still stands though. If all programmers were introduced to low-level coding (even C would be a start) from a young age then the overall quality of their output would be much higher. Any monkey can read Sommerville and learn how to write overblown OO code, it takes skill to write code that is elegant and efficent.
This game is actually very sophisticated with a natural way of expressing concurrency. www.toontalk.com The author is active in the capability based security world. By "capability" I mean the definition used in the security literature, not the linux bastardization of the term.
The environment provides a map editor, code editor, and single stepping debugger. You can use MS paintbrush to create new backgrounds and sprites. My goal was an environment where students could write classic arcade games in about 100 lines of code-- space invaders is provided as an example.
http://www.cs.brown.edu/people/morgan/gamekit/i
I wouldn't consider the project feature complete. It is written in Visual Basic and anyone seriously interested is welcome to the source.
-m
It has its own scripting language (so you can teach them simple programming), also allows you to make your own tilesets etc... very good! If I wasn't lazy and the net saturated with good RPGs, I'd use it myself!. cgi?foru m=990
It can be reeeealy simpe or very complex! Not just a level editor, not a DOS screen of DJGPP.
http://www.rpgtoolkit.com/cgi-bin/acforum
go!
Stagecast Creator was originally Cocoa by Apple (no, not Cocoa, Cocoa), a programming tool for kids. They learned by writing games. Stagecast ported it to Java. Anyway, some friends have had their kids learn programming with Cocoa, and it seems to have been very easy for them.
Ah, here's a better explanation (thanks, Google), with a focus on game writing.
My God, it's Full of Source!
OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
licenses the torque engine, used in tribes 2 among others (and think tanks, which you should play, is hilarious). might offer a good deal for educational uses?
garage games
.
. hmmm
The Scrolling Game Development Kit recently released a new version and had a story on Slashdot.
i'll bet they could prolly learn how to program c and make duke nukem forever using the released dn source before 3drealms brings theirs to market...
Large print giveth, and the small print taketh away
I don't think I saw this mentioned yet:
http://www.cdxlib.com/main.htm
I have barely looked at it long enough to compile and example and run it, but it's free and the results look decent. It's designed as a library, though... so more programming involved than the asker probably wants.
Adventure Construction Kit for the Apple II, from the same guy who did Age of Adventure and Ali Baba and the 40 Thieves. It was a tile-based RPG creator, nice and customizable.
The default character and floor tiles looked freaky (as in "WTF is that supposed to be?" kind of freaky), but the engine was great for its day. Magic meter, movement meter, range weapons, melee weapons, event items, red herrings, armor, magic items, dungeon layout-shifting events, etc. The sample games were pretty fun on their own, too, especially the Egyptian themed one (the other was more of a tutorial).
I remember once starting to re-create the author's Age of Adventure (Greek mythology RPG) using ACS, but stopping in the middle because I was a lazy sumbitch as a kid, and I fell into the creative rut that was Transformers/G.I. Joe/Robotech cartoon viewership. Why build something fun on your own when you can zone out watching something shiny and forcing your parents to become large-scale consumers of plastic versions of your favorite characters?
Nowadays, I miss having wasted the opportunity to have been a creative young person instead of a vegetable. Oh well, my friends were all vegetables like me anyway.
IMO, most of the suggestions here are far too complex to throw kids at. All but a one or two will be turned off.
Let the get a sene of accomplishment and wonder with just a few mouse clicks.
Neverwinter Nights' toolset was made for this. If you want them to think about puzzles and monster types and plot and ot be able to do it - this is the EXACT software you need.
And yes - the scripting language is there for some interesting stuff too.
AND they can play it before the week is out.
.Robert
If you have access to some 10 year old Macs (like a lot of underfunded schools do), you might be able to find some copies of Hypercard lying around. I had to do "interactive presentations" in Hypercard way back in the day. My friends (read: the computer literate people in the class) quickly learned how to manipulate it's icon and art systems into a fighting game. Worked pretty well. It required a little bit of everything from basic if/then/else structures, to simple art, to sound effects.
It's not stupid. It's advanced.
i think there should be a class that teaches kids all about the latest technology. video game making, iPods, internet, computer tech, even disposable dvds... i heard they last for a couple days after being opened and they cost as much as a rental
bobolo