Volume 7 Number 2 - Spring 1999

Computer Games for Kids, by Kids

<--- previous page || next page --->

The fourth starter adds two more blocks of color in the maze. One of them sends you back to the start while the other jumps you closer to the blue goal. Green is programmed with setup while yellow is programmed to setpos [-67 -37].

Click here to play with the starter right now.

Each page can have as many as 16 programmed colors. This technique was used extensively in students' games. Talia's Maze, and Loren's Maze on the VideoGameWorks Website are good examples of this.

You can visit now by clicking here. That website will open in a new window. Close or minimize that window when you want to return to this article. Don't use your browser's back button.

The fifth starter has a second maze on page2.

Click here to play with the starter right now.

The blue target on page1 now has the instruction announce [you win!] page2 stopall. On page2 there is a setup2 button and a go2 button. The procedures they call are:

to setup2
setpos [-190 -130]
seth 0

to go2
forever [direct readchar]

A common error is to program the target color blue with

announce [you win!] stopall page2

The programmer is thinking, "I want to announce the win, then stop everything on the current page, then go to the next page for another level of the game." Unfortunately, stopall means just that. It stops everything, including the process started when the turtle ran into the color blue, so the command page2 is never reached. By putting stopall after page2 you arrive at page2 ready to click setup2 and then go2.

There are other ways of ending the action on one page and then moving to another, but these are generally more complicated. You have to be aware of which processes are active and stop each one. In maze6 the color blue is now programmed to run the procedure endgame1, which looks like this:

to endgame1
announce [you win!]
ask [t1 t2] [clickoff]
cancel [direct readchar]
cancel [touching? "t1 "t2]

After the winning announcement the instructions in both turtles are turned off with the command clickoff, the two active processes are cancelled and we go to page2. Then, setup2 and go2 are run causing the action to start immediately when the page is opened.

Click here to play with the maze6 starter right now.

A Closer Look at the Students' Games

The students elaborated upon the techniques and ideas in the starters and added many new features. It was common for games to have many levels. Sometimes these levels were organized into a story. The goal on the first level of Elizabeth's CS II Maze is to get to school. Having accomplished that, you then have to get by the teachers, make it through the lunch room, recess, and back to class. Finally, if you make it home your reward is to have a good weekend.

Most of the mazes set up winding curving paths rather that the simple rectilinear layout shown in the starters. This makes them more difficult since the turtle's heading must be either 0, 90, 180, or 270 degrees.

In the starters bumping into a wall causes the turtle to turn right 180 and go in the opposite direction. The students usually program a much harsher penalty: jumping back to the beginning of the maze, or having the game end. It was also common to use announce to denounce the player for clumsiness, or to record the message and program the name of the recording into the wall color so that it played when a collision occurred. In Loren's maze the character explodes when he hits the wall. The explosion is a series of 10 shapes that are displayed in sequence. These shapes were imported into MicroWorlds and found their way into many other games in addition to this maze.

Loren's maze has another trick that takes advantage of the fact that the turtle "wraps," that is, when it goes off the right side of the screen it reenters on the left side and when it goes off the top it comes back on the bottom. The path of Loren's maze repeatedly exits one side and continues on the opposite side. Not only that, the color of the path changes. It's rather difficult to follow.

Some students introduced speed control. In Crystal's Maze there is a slider named speed that may be set to a number 0 to 50. The turtle instruction is forward speed instead of forward 1. Speed reports the setting of the slider to forward.

There's More

The games we have posted on the Web are representative of many others done at The Spence School and at Computer School II. These are better than most in terms of being more fully debugged, checked for spelling and grammar, and having instructions. These are standards that we as teachers set for public posting of the games. There are many excellent games that were shared locally but are not on the Web because of technical limitations. Sounds are difficult to transfer from Macintosh to Windows and some of the projects were so large that the download time for viewing with the MicroWorlds Web Player would be very long.

There are also many "works in progress" that are quite good, but not ready for prime time. Sometimes students lost interest in a game before finishing or ran into technical problems that didn't get solved. It was common to keep pushing the limits of what the programming environment could handle until things stopped working smoothly. At that juncture we encouraged backing up to a point where the game did work well, tying up loose ends, and getting the game into a presentable form. Sometimes this happened, sometimes not. For every game that was placed in the Public Folder or on the Web there were many more that were left at varying stages of development. In an exploratory environment this is to be expected. It is important to have finished products to show, but the learning is mostly in the development process.

What's Next

In the next issues of Logo Update On Line we will share some of the other game formats that we developed with our students: conversations, adventures games, boards games, action games, races, and more. We'll also take a closer look at how students shared and published their games.

You can visit now by clicking here. That website will open in a new window. Close or minimize that window when you want to return to this article. Don't use your browser's back button.

 <--- previous page || next page --->