Click Here To Go To The Your Computer Archive

Written By David Griffin

Cover Art
Click Here To Enlarge Loading Screen

Loading Screen
Click Here To Enlarge Opening Screen

Opening Screen
Click Here To Enlarge Screenshot

Game Screenshot

Maze Muncher

A deceptively easy game to start with, this BBC version of a well known arcade game written by David Griffin is definitely worth getting your teeth into

The game in this article is a very enjoyable and addictive game for the 32K BBC Model B. It is slightly different from the arcade implementation in that there are only two ghosts who can go through walls and the function of the power pills is to stop the ghosts chasing the Muncher for a few seconds, giving him a chance to eat more dots and so get to the higher sheets. The player gets bonuses by totally clearing a sheet.

Every fifth maze is an invisible one, but the player must remember the pathways, in order to follow them. When playing such a sheet, the maze is made visible for about 10 seconds, when a power pill, or thunderbuster, is eaten. The following keys are used to move: A to go up, Z to go down, N to go left and M to go right. 10 points are given for the dots that it eats all the time and 100 points are given for *, which are thunderbusters.

A bonus of the value 1,000 multiplied by the number of sheets is given every time a sheet is totally eaten, thus 1,000 points are awarded for clearing the first maze and 13,000 points for clearing maze number 13.

An extra Muncher is given every time you score 10,000 points: you have three lives to begin with.

To begin with, you may think that the game is very easy as the ghosts move very slowly - but they do get faster every sheet, until they become half your speed on sheet 11. From then on, their speed remains constant. Here are a few hints. It is a good idea to clear as much of the maze as you can without using the thunderbusters. On the lower sheets move straight to the middle of the maze, and clear that area first, as it is the most difficult.

When the ghosts are moving the fastest, clear the outer regions of the maze first, reserving the thunderbusters to help in clearing the centre. Try not to leave individual dots, but clear large areas of the maze at once. Don't hesitate or panic, it is quite easy to get out of most situations.

Program Notes

If you want to change the number of ghosts, change the value of NG% in line 11. I would advise against conversion to other computers because this program uses many special functions of the BBC. But in case anyone wants to try here is a list of some of the BBC peculiarities used in this implementation.

ENVELOPE defines the envelope used in the SOUND command - this can be ignored. MODE changes the display mode, Mode 7 is a teletext display 40 x 25, Mode 2 is a high-resolution display, with characters on a 20 x 32 grid.

VDU 23 defines characters on an 8 by 8 grid. The first parameter is the character number, the following eight define the shape row by row, with the decimal equivalent of the binary number representing the character row. The VDU in line 10 stops the cursor flashing.

PROC calls a procedure defined by DEFPROC; this should be replaced by a GOSUB command on other computers.

COLOUR sets the current text colour. PRINTTAB(X,Y) positions the cursor at position X,Y on the screen. All the *FX commands can be ignored.

VDU 19,C1,C2,0,0,0 sets colour C1 to colour C2; this is used in making the maze invisible.

RND gives a random integer between 1 and the number inside the brackets. SOUND A,B,C,D plays a note on channel A, of volume B, of pitch C, for duration D. DIV signifies integer division.

The command GET$ waits for a key to be pressed and puts the string value of that key in the suitable variable.

INKEY$(n) waits for n cycles of the clock or until a key has been pressed, and puts the string value of that key in the suitable variable. The program puts the whole screen into array SC$ and can use this array to see if the man is trying to go into a wall, or has eaten something.


The highest score so far attained is 10,154,250 - achieved after playing continuously for several hours, and reaching sheet 999.