Classic Computer Magazine Archive ANTIC VOL. 5, NO. 9 / JANUARY 1987

Game of the Month

BY J. D. CASTEN

Rebound

Flip Ogart vs. the RotogartEatos


J.D. Casten's sixth Antic game-his first in 13 months-is another diabolical maze chase. Rebound features flashy graphics, fast action and a typically demented storyline. The BASIC program works on 8-bit Ataris with at least 32K memory disk or cassette.

"DISASTER IN OGARTOPOLIS!" screamed the New Ogart Times front page headline.

Flip Ogart adjusted his spectacles and read closely as he bounced down the busy avenue. "The RotogartEatos' annual No-Thanksgiving feast is approaching and they have gathered hundreds of citizen Ogarts for the occasion. Officials say nothing can..."

SPLAT! Flip slipped and fell right into his newspaper as the entire sidewalk began to shake. "Double drat!" thought Flip, knowing that the front page was now transferred onto his puddy face. (Ogarts look like a glob of vanilla pudding with eyes and a mouth.) Then Flip looked up.

"Quadruple drat!" he bellowed. Flip realized now that he was no longer in downtown New Ogart. He was the victim of a RotogartEato raid.

Flip sat in the musty RotogartEato Lair and considered his options. He could wait and get eaten. Or he could try to escape, leaving all his fellow Ogarts behind. Or he could save all the Ogarts and become a national hero.

As the cries of his fellow Ogarts grew louder, the choice became clear: Wait and get eaten. But wait-was he not the star puddyball quarterback at Ogart State? Was he not voted first citizen of New Ogart? Was he not the president of Ogart Industries? True, he was none of these, but this inspired him all the more to do some heroing now.

A smile crept onto his face as he imagined the headline, "FLIP SAVES HUNDREDS-AWARDED MILLIONS." And it could all happen with a little help from his friend with the joystick.

FLIP OGART'S CHALLENGE

Flip Ogart continually bounces up and down. You control only his horizontal movement with the joystick. Thus, you are not in total control of Flip, and the two of you must cooperate to accomplish your goal-save all the Ogarts. Remember, although cursing Flip and causing him multiple deaths may ease your mind, it doesn't help the cause.

To play Rebound, type in Listing 1, REBOUND.BAS, check it with TYPO II and SAVE a copy before you RUN the program. You start with five Flips, receiving a bonus Flip for each successfully completed screen. If you think the RotogartEato Lair contains no obstacles to impede Flip's progress, you are sadly misinformed. Here's some of what to expect:

Ogarts: These poor creatures are crying out for Flip's aid. In order to save an Ogart, Flip only needs to touch it. Saving all the Ogarts on one screen will send Flip on to the next screen.

Invisible Barriers: Most of the walls in Rebound are visible, but some aren't.

Transporters: These look like harmless arrows. But when Flip touches one, ZOING! He breaks down into his components (mill, powder, sugar and preservatives) and instantly reassembles at a different arrow.

Side Gaps: A screen may have gaps in the walls at the top, bottom and sides. If Flip bounces out one gap, he'll reappear through the opposite gap. Switches: Touching a switch makes all action in the lair spin the opposite way. Switches look like rotating spirals.

Sucker Holes: Bouncing too close to a sucker hole will surely bring Flip's days to a close. These holes are squares that contain shrinking circles. But there is hope, for switches can be used to change sucker holes into blow holes.

Blow Holes: Blow holes send Flip flying. But these squares with expanding circles are as safe as can be. Be careful, though-touching a switch changes these safe blow holes into deadly sucker holes.

And, if that isn't enough...

RotogartEatos inhabit these screens. They know every wall and door there. RotogartEatos are red and their faces rotate. Some like to just loaf around in one spot, while others jump around the lair. You and Flip will have to beware though, for if Flip gets too close, he is certain to become a RotogartEato snack.

Rebound has only seven screens, but you can prolong the suspense indefinitely with the...

REBOUND CONSTRUCTION SET

The February, 1987 Antic will feature a construction set for Rebound screens. J.D. Casten himself has agreed to judge a contest for the best Rebound screen creations. The winning entries will appear as an Antic Disk bonus later in the year and winners will get that month's Antic Disk Edition. See the February Antic for complete details-ANTIC ED

INSIDE REBOUND

One of the first things to notice about Rebound is the full-screen animation. The program uses six alternate character sets and switches among them, allowing for the smooth animation and the movement of the RotogartEatos.

The only machine language used is a Vertical Blank Interrupt that updates the Player/Missile graphics for Flip, a Display List Interrupt that changes colors, and a short routine to link the BASIC variables to the machine code. An important key to the speed of Rebound is the use of B$. B$ has a byte for every character in all six sets. This byte tells what that character means (example, an O would mean that character is "Open" to bounce through, while a B would mean that the character is "Barrier."

One way to speed up joystick processing in BASIC is to set up an array variable. The X(J) array in line 1110 is predefined to change certain joystick values into directional values, such as in line 150. For example, if the joystick is pulled left, a PEEK at location 632 will show the value 11. The X(11) value has been set to -1, so that an X = X+X(PEEK(632)) will decrement X by one.

All action sounds are created in line 190. If Flip hits an oject, then H is set to the frequency, V is set to the distortion level, and T is set to the initial volume (which will decay).

An often-used general purpose machine code routine is M$, a "mover" routine that shifts any number of bytes from one memory location to another. This routine uses the form U=USR(ADR(M$), source address, destination address, number of bytes to move). The routine can also be used to set any number of bytes to a certain value. To do this, POKE the first byte with the value. Then do a U=USR(ADR(M$), first byte, first byte+1, number of bytes-l).

The lines between 9000 and 9099 are DATA statements for the character graphics. These lines were generated with a character set editor I have written. In fact, I programmed Rebound as a test of the character set editor. You can adjust this DATA in order to change the character shapes.

Here is a simplified Rebound program map:

     4     User Definable Variables
 100-199   Main program Loop
 100-104   Machine update
 105-149   Vertical movement and check
 150-189   Horizontal movement and check
 190       Sound
 200-250   Death check and process
 300-399   Off screen correction
 400-499   New screen set-up
 500-599   New Flip set-up
1000-1199  Variable and memory set-up
1200-1399  Title screen
1400-1499  New game set-up
1950-8999  Screens
9000-9099  Character Data
9100+      Set up DATA
Since 1983, J.D. Casten has been sending Antic his off the-wall, up-the-tree and round-the-bend games, which include Box-In (December 1985), Risky Rescue (April 1984), Escape from Epsilon (June 1984) and the now-classic Biffdrop (December1984). The July 1985 issue contains TYPO II line codes for Casten's golden oldies. The Catalog carries the Casten Game Disk ($12.95, ADS0001). Casten is currently a computer science freshman at his hometown college, the University of Oregon.

Listing 1: REBOUND.BAS Download