RE: [stella] Warring Worms user interface

Subject: RE: [stella] Warring Worms user interface
From: "Billy Eno" <ceno@xxxxxxxxxxxxx>
Date: Sun, 17 Feb 2002 20:38:01 -0600
Darn you Glenn!! (or can we say "damn" on the Stella List?)

Cleverly, you plant seed of doubt into an Atari programmer's mind.  With
great guile, you point out the weaknesses in the design...

(enough of the drama now)

Attached is the new, improved, select-prettified version of Warring Worms.

The problem of course, was that inelegant code is frequently used when space
is at a premium.  So the various ways that the code detected which features
to enable or disable was intertwined quite nastily throughout all my source.
After many hours of sorting it out, I pulled together a whole separate
screen that gives visual clues to how the game is set up and a quick way to
increment and decrement the game.

Now, there are exactly 256 variations to the game, and one byte to control
them all (as suggested by Glenn):

bit7	 : 0 = Easy Control, 1 = Hard Control
bit6   : 0 = Missiles Enabled, 1 = Missiles Disabled
bit5	 : 0 = Non-Wrap Game, 1 = Wrap Game
bit4   : 0 = Non-Hostile Env, 1 = Hostile Env
bit3   : 0 = 2-Player, 1 = 1-Player
bit2-0 : screen type

Hitting select takes you to the screen.  Most of what you see is pretty
obvious.  The starting backgrounds is shown as you select.  The number of
players is represented by having one or two heads on the screen.  The
hostile environment is represented by having extra blocks in a pattern over
the playfield.  The missiles are either on or off depending on the state.
The right and left edges disappear in the wrap-mode game.  The final
not-so-obvious one is that a block appears behind the snake heads when in
"hard control" mode.  (For those just joining us, hard control means that
you can turn back onto yourself, easy means you can't)

In the select screen the bits of the game number are displayed at the bottom
as an additional (and snazzy) visual clue.  Select increments the game by
one.  Up on the left joystick increments the game by 8, down decrements it
by 8.  Holding down select then reset resets the game back to 0.

Only other change in game play is that in non-missile games, the snakes
start away from the walls to make it easier to move around.

Speed select remains the same with the left difficulty controlling the speed
of both snakes.  My feeling is that in this game, it is hard to say if slow
or fast is more of an advantage.  The only reason I put the option in at
first was because my father-in-law complained it was too fast when I showed
it to him.  Consider it the "let the non-gamers play a little too" mode.

Sorry for the essay,
Regards,
Billy

P.S.  Glenn, please say it is finished and I can stop working on it now?  I
have a light-gun game to work on.  :>

> -----Original Message-----
> From: owner-stella@xxxxxxxxxxx [mailto:owner-stella@xxxxxxxxxxx]On
> Behalf Of Glenn Saunders
> Sent: Sunday, February 10, 2002 12:56 PM
> To: stella@xxxxxxxxxxx
> Subject: [stella] Warring Worms user interface
>
>
> An alternate way to do game select is to do a menu like the
> latter-era games:
>
> Wraparound ON OFF       1 bit
> Players 1 2             1 bit
> Environment Select      4 bits
> Missiles ON OFF 1 bit
> Turnback ON OFF 1 bit
>
> You'd use the paddle to select the option, paddle trigger to commit.
>
> Since you aren't going to have to show digits for game select, it doesn't
> have to be stored BCD.
> So that's 8 bits for the menu, plus the speed difficulty switches.
>
> Speed (difficulty switches to allow individual handicapping)
>
> Wouldn't this take up less RAM than a game matrix?
>
>
> Glenn Saunders - Producer - Cyberpunks Entertainment
> Personal homepage: http://www.geocities.com/Hollywood/1698
> Cyberpunks Entertainment: http://cyberpunks.uni.cc
>
> ------------------------------------------------------------------
> ----------------------------
> Archives (includes files) at http://www.biglist.com/lists/stella/archives/
> Unsub & more at http://www.biglist.com/lists/stella/
>

Attachment: war_worm_2_17_02.bin
Description: Binary data

Current Thread