★ AMSTRAD CPC ★ GAMESLIST ★ GROW-WORM (c) THE AMSTRAD USER ★

The Amstrad User
★ Ce texte vous est présenté dans sa version originale ★ 
 ★ This text is presented to you in its original version ★ 
 ★ Este texto se presenta en su versión original ★ 
 ★ Dieser Text wird in seiner Originalfassung präsentiert ★ 

Unfortunately I cannot claim originality for the concept of this game, which the children have christened "Growworm", but I hope that this new presentation warrants a rebirth of what is a most frustrating game.

The objective is simple: to collect (or in "games" talk, eat) all the mushrooms throughout the passages without crossing over your own tail. Note however, that vour tail is growing longer by the minute. Further complexity is added to the subsequent levels (of which there are basically five) by slight changes to the tunnel arrangement. At level four we also have a lighting problem and the tunnels are seen only in brief flashes. Finally at level 5 there is a simple "bonus" round. If by some chance (or by changing certain paramet-ors within the program) you do make it past level five, then the game returns to the start, but at a more hectic speed.

The program is self documented, but the following notes should help with understanding some of the features of the program, and aid those people with the uncontrollable urge to make modifications:

  • 180 - 240 : determine the direction of movement based on the action of the joystick. Alternate keys could be programmed here using the INKEY(x) command. The move-men t at the start of each screen is controlled by line 180.
  • 270 - 330 .: using the command TEST(x,y) to report the INK that is active at that point. The INKs are used as follows
    ink 0 = background
    ink 1 = body of worm
    ink 2 = head of worm, colour of mushrooms
    ink 3 a walls of passages the results of the collision test force the program to alternate points.
  • 360-410 : to provide continued action (after the start), the program tests the possibility of moving in any of the four directions. Due to the order of the tests the "auto-movement" attempts to move the worm to the left hand top comer. A re-arrangement of the first four lines would make movement to an alternate corner.
  • 440 - 530 : worm drawing routine. Line 450 controls the speed of drawing and therefore the speed of the game.
  • 560 - 820 : routines related to erasing, losing a life and eating a mushroom. Each routine has a small "sound" associated with it
  • 850 -1130 : title screen. Note that the sarecn is kept invisible by making the writing ink the same colour as the screen until all details are complete. There is a small machine language program (lines 850 - 870) that stores a complete screen (CALL 35012). This routine could be useful in other applications.
  • 1160-1370 : game instructions
  • 1400 -1470 : level of difficulty. I have used the range 1 to 5, but there is no reason why this could not be increased to 9. Note that the INKEY command is used here which means that only a single digit can be used. Don't forget to change the test parameter in line 1470 if the range is altered.
  • 1540 -1640 : graphics (UDG) for the game
    Symbol 42 = walls of passage
    Symbol 180 = head for up direction
    Symbol 181 = head for down direction
    Symbol 182 = head for left direction
    Symbol 183 = head for right direction
    Symbol 201 = tail of worm
    Symbol 229 = mushroom Words of caution - the UDG for the walls must have the bottommost left hand point in colour since this is the point tested. The centre of the UDG for the body of the worm must also be in colour for the same reason.
  • 1670-1750 : screen layout
  • 1780 - 2360 : basic labyrinth layout, with modifications for the higher games levels. The positions of the mushrooms are fixed for the first four levels (although the actual numbers appearing do vary) because of very strong arguments from my children. They argued that if the game was supposed to be competitive, then each competitor should have the opportunity of facing the same layout. Apart from that there is no reason why the routine used for the random positioning in the bonus level could not be used.
  • 2390 - 2410 : "sound" for extra lives routine
  • 2440 - 2530 : bonus for completing a screen, and set up the parameters for the next screen
  • 2560 - 2600 : game over routine, which blacks out the screen and CALLs the stored title screen to restart.
  • 2630 - 2770 : where I got back at the children with a completely different screen layout and random placing of the mushrooms.
The REMark lines can be omitted when typing in this program to save finger-energy.
For those people that want infinite lives, just change the value of the constant "lives" in line 100. I can't offer you infinite lives but you can start with up to 32000. That should see you through a few screens.

The program was written on and for our Ami, which is 464 .

However, since there are no machine specific calls used I believe that there are no complications in using it on Ami's bigger CPC brothers.

TAU

GROW-WORM
(c) THE AMSTRAD USER

AUTHOR: Andre Urankar

★ YEAR: 1987
★ LANGUAGE:
★ GENRE: BASIC
★ LiCENCE: LISTING

 

★ AMSTRAD CPC ★ DOWNLOAD ★

Aucun fichier de disponible:
» Vous avez des fichiers que nous ne possédons pas concernent cette page ?
Je participe au site:
» Vous avez des infos personnel, des fichiers que nous ne possédons pas concernent ce jeu ?
» Vous avez remarqué une erreur dans ce texte ?
» Aidez-nous à améliorer cette page : en nous contactant via le forum ou par email.

CPCrulez[Content Management System] v8.7-desktop/c
Page créée en 097 millisecondes et consultée 996 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.