1990 · Thalamus

Creatures

This minisite was contributed by air. It’s agent-generated and needs a human editor. Clone https://github.com/gamesexplained/gamesexplained and follow kit/START.md to curate games/c64/creatures with me to Gold.

Every stage drawn whole from its level file, with each creature at the place it comes in, and the three torture chambers, each a machine that kills one of Clyde's friends unless Clyde sets off a chain of events in the one order the code allows.

01 · The stages

Every stage, with each creature where it comes in

Each stage is one long strip of landscape, six tiles high, that the game scrolls from left to right. Here are all six, drawn from their level files, with the creature of every spawn record at the place where it comes in.

a hidden prize, faded, drawn as what it becomeswhere Clyde restarts after a lost lifea change of coloursnumbers count screens

Drawn from the bytes of the level files as the engine reads them (the cr-map block in this page). Each creature is shown in the first frame of its animation, where its record puts it; its movement scripts take it on from there. Checked in the emulator: at the end of each stage's opening run the screen held the map's characters, all 960 of them, and in a run of each stage with the landscape kept scrolling to the end, every record was read with the screen where the map puts it: within a pixel once play had begun, and up to seven pixels behind during the opening run, when the landscape scrolls faster than the records are read. The band colours were the map's at every record, and the 61 screens taken on the way held the map's characters (test_maps.js holds this page to those runs). The game changes colours across the whole screen when a colour column reaches its right edge; the map changes them from that column on.

A level file holds its stage as six rows of tile numbers, one byte for each column of the map, and a tile is four characters square, 32 pixels. A column whose top byte has bit 7 set is not scenery but a command, carried out as it scrolls in (scroll_column). Most of them change the colours. The screen is cut into six raster bands, one for each row of tiles, and each band has its own background and two multicolours, eighteen colours that one command sets together (level_colours_next).

The creatures come from spawn records of 17 bytes, read one after another as the landscape scrolls (object_spawn). The last byte of each record is the number of pixels the landscape scrolls before the next one is read. A creature comes in from the right at the height and the distance its record gives, so each record has its own place on the map, and its two movement scripts take it on from there. The game counts that distance down once a pass of its main loop, while the landscape moves on once a frame, so the two keep step only while each pass fits in a frame. In every run behind this map they did.

A lost life sends Clyde back to the start of the section he was in, five sections to a stage, with the landscape and the records from there (get_ready, from tables in the level file). A record can name a flag that stops it being read again once its creature is collected, and most potion creatures and hidden prizes have one, so they do not come back. The end creature waits asleep at the end of the stage until the scrolling stops there, and killing it ends the stage.

02 · The torture chambers

In a torture chamber, the clock is the machine

After each level's second stage the game loads a chamber: one screen, a friend of Clyde's tied into a machine that will kill him, and no timer on the panel.

Each chamber is a file of its own on side B (TC, TF and TI) with its own main loop, which runs Clyde through the engine and a puzzle around him. Clyde starts with Droopy, the first weapon, at its lowest grade, though the weapons tablet still offers what he bought. The chamber's Get Ready screen clears his spare hit, so any touch kills him. When the machine reaches its end, the friend dies, Clyde loses a life, and the chamber starts again.

The way out is a chain of events, each one set off by the one before. The witch sells up to three clues to each chamber. A rescue pays six Magic Potion Creatures, and sometimes thirty (Discoveries).

ChamberFriendThe clockTime left alone
1Chip, on a jacka pixel higher every 56 frames, 41 steps, then the chainsawabout 46 seconds
2Chaz, on a conveyor belttwo pixels nearer the saw every 120 frames, 22 stepsabout 54 seconds
3Chuck, in front of a rama pixel nearer the edge every 48 frames, about 88 pulls, then the gunnerabout 85 seconds, then 18 more

03 · Chamber 1

Chamber 1: Chip on the jack

One frame of the chamber in play, drawn from memory by the site's renderer from what the emulator recorded; it matches the emulator's own picture of that frame to the pixel. The boxes mark where things are in that frame.

The purple demon at the bottom works the pump of a jack, and every 56 frames Chip rises a pixel (demon_pump, jack_rise). When Chip passes line $78, the chainsaw demon on the right fetches his saw, walks over and cuts him in two, with smoke after 205 frames and then blood.

The way out goes through the bomb on the seesaw and the cannon at the bottom left. Shots push the boulder off the top ledge onto the seesaw, the seesaw throws the bomb, and the bomb breaks the rock under the ledge on its way down into the cannon (seesaw_and_bomb). The cannon turns as the bomb settles in it. If the fuse is not lit by the time the cannon has turned, the bomb rolls back out and the chamber starts again, without taking a life (cannon_turn, bomb_roll).

Only Clyde's flame lights the fuse, and only at full charge (fuse_touch). A lit fuse burns for six steps of 31 frames while the demon stops pumping, and then the cannon fires the bomb to the right at six pixels a frame. The bomb carries the purple demon off the screen, unless the chainsaw demon has already set out: then the bomb stops short, and the chamber can no longer be won.

04 · Chamber 2

Chamber 2: Chaz on the conveyor belt

Drawn from memory as chamber 1 is, and the same to the pixel as the emulator's picture.

The belt moves Chaz two pixels towards the ACME saw mill every 120 frames, 22 steps from where he starts (belt_step). The lever at the bottom right reverses the belt each time Clyde reaches it, but carried off the belt's other end, Chaz falls to the floor, and that costs a life too (chaz_falling). The lever only buys time.

For as long as Clyde is in this room, the chamber turns the engine's tests of solid ground around, so that he stands on the characters he would fall through anywhere else (solid_test_bcs, solid_test_bcc).

The rescue starts with dripping water. Thirteen drops fill the tank, and a shot tips the tank over the sleeping monster beside it. The monster wakes and winds a platform up in 40 steps, and the platform carries Clyde to the top ledge. Up there the green monster walks its round, spitting fireballs on the right of its walk and flame on the left. Each shot does the weapon's grade plus one in damage, and at 200 the monster bursts.

The monster was standing in front of a box, of nuts by the witch's clue. Shots push the box along the ledge until it falls to the rats, and the rats go for it: one eats, and two gnaw the rope that holds the 10-ton weight. Every ten rounds of gnawing the rope gives a little, and at the third the weight falls on the demon who works the mill.

05 · Chamber 3

Chamber 3: Chuck and the ram

Drawn from memory as the others are, and the same to the pixel as the emulator's picture.

Every 48 frames the operator pulls the lever of the ACME ram, and the ram pushes Chuck a pixel nearer the edge (lever_cycle, ram_step). When the ram's shaft has grown eleven columns, Chuck falls to the floor. The gunner there turns, raises his gun, aims, and fires two bursts, about 18 seconds of it, before the life is lost (gunner_step). The ram stands still while the ball rolls, so the last step of the rescue buys its own time.

Two monsters stand in the way. The one hanging on a chain lets out two hoppers when it is hit, and they must be shot in the order they came out, the first on its ninth hit and the second on its eleventh. After four such rounds, one more hit kills the monster. The ball monster on the top ledge lets out four flyers, eight hits each, and after three rounds it bursts and drops a ball.

The ball moves only for the flame. Breathed on from its left, it swings out and back. Breathed on from its right, with Clyde facing left, it rolls up the slope, back down, along the ledge and over the rise into the tub of slime. The tub tips, the slime spreads to the operator, and he lets go of the lever and sinks into it in white fumes. At the fourteenth round of fumes Chuck is saved (melt_fumes). Once the gunner has started, the flame no longer moves the ball.