Succeeding at Battlezone with TQM.

From: Doug Jefferys <dougj_at_hwcn.org>
Date: Thu Aug 05 1999 - 20:42:17 EDT

On Thu, 5 Aug 1999, Christopher X. Candreva wrote:
> On Thu, 5 Aug 1999, Clay Cowgill wrote:
>
> > Big difference though-- BZ gives you two big handles to reef on, and a
> > compelling reason to pull back on both hard (the cruise missiles).
>
> There's your problem -- drive INTO the missiles. You have less time
> to aim, but the missles have less time to serpentine around you. Pulling
> back is certain death. Apparently without the step -- litteraly. :-)

Damn, I love Battlezone.

<BRAG>Personal high score: 1,201,000.</BRAG>

<HUMBLEREMINDER>The world record is about 5.3 million.</HUMBLEREMINDER>

My ROM revision stops giving me supertanks from what appears to be a
random score between 700K and 800K. The game switches back to regular
tanks from that point forward, but continues to place them in the "hard"
places and angles that it did with the supertanks. Saucer hunting is
once again possible, but much harder than it was at the start of the
game.

I used to think this was a bug, but since it comes at a random interval,
as opposed to a hardcoded 800,000 points, it may be intentional. (Since
the player has mastered the game, give him back the slower, more time-
consuming target that he *hasn't* spent much time fighting...)

One thing that is a bug, albeit an extremely unlikely one:

I've used the Battlezone High Score save mod on my board set, and changed
a byte to save the top 9 high scores instead of the top 3 scores. Since
the game displays one tank beside your score for every 100K, my high score
table fills the vector table; the "Extra tank at xxxxx and yyyyy points"
text flickers out midway through the message. I consider this a "bug"
since it's possible, though by no means likely, that a unit that runs
24/7 (in an arcade with a lot of Battlezone experts :-) could conceivably
encounter this in the field. It's similar to the "too many bonus ships
slow down the game" problem in Asteroids.

Hacks on my "one of these years" list:

1) Make it so that only 5 tanks are displayed beside high scores,
   regardless of how high the score is. With that 5.3M world record
   game, the monitor was probably trying to draw a tank on the side
   of the cabinet :-)

2) Figure out where in the code it switches back from supertanks to
   regular tanks, in order to judge whether it's a bug or not.

3) Hack in a "turn-180-degrees" button. I'd love to hide behind a
   cube, press this button, and watch a missile run away from me,
   or add a "jump-three-feet-to-the-left" button and admire a missile
   from the side :-)

Now to gameplay:

Missiles come at you in one of (a small number? 3-5?) different possible
tracks.

All but two can be defeated trivially by *staying still* and rotating
your tank a little to the left of the spot in the sky where the missile
first appears. The missile's final approach will be straight down
your gunsights. The two "bad missile tracks" are relatively rare by
comparison.

One missile track has the missile doing a hard turn from your right,
straight across to the left, and into you. It seems to zigzag in
the horizontal direction a little more erratically early on in its
flight path. It is best nailed (assuming you stop as soon as a
missile appears) by firing just as it's turning. The bullet will
hit the missile side-on. This missile track can be avoided by pushing
forward at just the right time during its horizontal move.

Another missile track appears to be very similar to the one above, and
kills by making a horizontal move and nailing you from the left side.
Unlike the missile above, you usually see the inside a corner of the
missile as it turns into you.

(This may simply be the same missile track as the "shoot it in the
side" missile, but seen from a tank that's been turned 15-20 degrees
to the left.)

Since I don't see either variation frequently, and since I can't see
where the missile "would have gone" on my "long-range kills", I'm
guessing that each of these types (or this type, if it's only one
track seen from a different angle) are more susceptible to the long-
range kill.

My missile strategy:

1) Stop when it shows up. Turn slightly to the left. Identify the
   missile shortly it hits the ground. Choose between long-range or
   conventional kill.

2.1) Long-range kill: Fire immediately and start backing up for a
     second shot. Many of my "missed" first shots end up as either
     conventional kills, or "push forward and hope it misses you
     because you won't necessarily have a round ready in time for
     the side-kill type".

2.2) Conventional kill: Don't move, just watch the missile come
     closer. Fire on the last move forward to you where you can't
     miss, or nail it with a sideways kill for the one (or two?)
     missile tracks that have to be killed sideways. Move forward
     when you fire; it won't hurt in the straight-in kills, and it
     might save your butt if you miss the sideways kill.

3) Set up for next kill.

   If you pulled back for any reason, move forward. There may be a
   cube that's now six inches from your rear bumper that'll get you
   stuck when the next missile/tank appears.

   If you turned left, rotate right a bit. Since each missile
   prompts a few degrees of left-rotate, you may end up with an
   obstacle in your field of view.

My general strategy:

1) The usual "run down the 45-degree line and kill" strategy.

2) Making sure there are no obstacles anywhere near you after each kill:

   The key to killing missiles is to make them predictable. If you
   expect a missile to go one way, but it has to jump an obstacle or
   steer around it, you'll miss your shot and die.

   The key to killing tanks is *not* to get jammed up against an
   obstacle, ever, so you can make every kill a "conventional" one.

   The best way to do both of these things is to keep a mental map
   of where the nearest obstacles are likely to be, and to keep moving
   so that there's (a) nothing near you, and (b) if you haven't moved
   forward in a while, assume the computer's put an obstacle behind
   you and move forward to get away from it.
 
   (Yes, sometimes the computer sprinkles the ground with new objects.
   This is known as the "You trip over an imaginary invisible deceased
   turtle that a mad wizard teleported behind you" method of dying :)

3) Ingore saucers whenever there's a supertank on the screen.
   One potshot is allowed while rotating to kill the tank. Do not
   stop turning or moving - just take the shot and hope for the best.
   Never chase saucers with supertanks on, because they move to give
   the supertanks a better shot at you.

   With missiles, it's similar - *one* shot at a saucer between
   missiles. No more. And don't attempt to get a long-range kill
   on a missile if you're taking potshots at the saucer.

These strategies will get you into the 300-500K level, maybe 800K if
you're lucky. You'll also learn little tricks like seeing the fading
dot of a new tank *before* the radar sweep hits him and turning in his
direction before the "blip", or seeing the little nudge forward that
a tank will make just before it fires its first shot at you, and
being able to take evasive action before his bullet is on his way.

You'll most likely die by mis-identifying a missile, getting caught
by a new obstacle after a long missile-chase, or by trying to kill a
supertank on those semi-rare occasions where you miss your one shot
at a tank who's forced you to run away backwards while you wait for
him to shoot-and-miss.

For endurance play - do all this, and take steps to *not* get killed
by the "one-in-a-million dumb luck" things. Like saucers appearing
directly in front of you when you're about to kill a missile, or the
tank that hit a pyramid, turned, backed up, and moved forward... and
did it again, only to be *facing you* when it stopped and fired while
you were rotating to keep up. Like supertanks appearing right in front
of you, facing you - and knowing instantly whether you can kill it
immediately, or if you have to turn *away* from it and run away for
a second or two before killing it "conventionally".

-=+=-

OK, so what the hell does an old buzzword like Total Quality Management
(TQM) have to do with succeeding at Battlezone?

Battlezone is a great game if you've ever wondered why software QA
types are so picky about process and metrics. There are only a few
ways to get killed in Battlezone, and nearly *every* death can be
explained in terms of "operator error" of one form or another.

Since you have only five tanks (3, plus one at 15K and one at 100K)
per game, the only way to get a score of "x" is to ensure that you
get, on average, "x/5" points per tank.

Furthermore, since Battlezone isn't a game of reflexes, the existence of a
world record at 5M is evidence that, at _worst_, the game only puts you in
"impossible" situations every million points or so.

The corollary of that is that *if you're getting less than a million
points per tank, you're probably making mistakes that you can prevent*.
Here's a partial list from the top of my head. Only the last two items on
the list are "accidents"; the rest are variations on operator error:

- Rotated too long when turning to face enemy.
- Turned to face enemy, fired, and missed.
- Didn't run enemy down line of sight correctly, allowing him to kill me.
- Ran enemy down line of sight just fine, but pulled back too long before
  rotating. By the time I got him in my sights, he fired at point-blank
  range.
- Chased saucer.
- Missed missile and died.
- Missed missile and didn't back up to get enough time for second shot.
- Missed missile and backed up, but hit obstacle and couldn't get far
  enough back for second shot.
- Obstacle in missile's path made missile move differently than expected.
- Thought it was different type of missile.
- Damn! I _always_ seem to get killed by "that type of missile".
- Thought I had enough room in front of tank to kill it head-on. Missed.
- Thought I had enough room in front of tank to kill it head-on. Didn't.
- Didn't *listen* for enemy tank shooting at me while I took a
  potshot at the saucer.
- Didn't *listen closely enough* to hear enemy tank shooting at me
  within a few milliseconds of me shooting at the saucer. Sounded
  a bit like an echo.
- Didn't *listen closely enough* to hear enemy tank shooting at me
  while saucer-exploding sound was playing loudly, mostly drowning
  out the noise of the enemy shot.
- Didn't *hear* enemy tank shooting at me because I fired _exactly_
  at the same time the enemy tank did and I _couldn't_ have heard it.
- Saucer was behind me and passed in front of me, covering 90% of
  the viewscreen just as I was about to shoot the missile.

Once I started "taking notes" on how I died, my game improved drastically,
as I was able to stop making the mistakes that kept killing me off every
50-100K points, which means that I now live long enough to get killed
every 200-300K points, usually by misidentifying a missile and firing
in the wrong portion of its flight.

And I still don't think I've ever had a "couldn't have heard the enemy
tank" kill in my life. (Had plenty of the other variations, though!)

The "Saucer flew in front of me" death is truly rare. It's happened to me
twice since I started playing Battlezone seriously, which means you can
expect it to happen once every 5 hours or so.

Interestingly - if you hear the "saucer died" sound without shooting the
saucer, it usually means an enemy tank has shot it. This happens once
every half hour or so, but only in your field of view every 2-3 hours.
Sadly, you don't get the points for letting the enemy kill the saucer
for you.

Later,
Doug.

-- 
 dougj   |
   @     |
hwcn.org |
Received on Thu Aug 5 19:42:35 1999

This archive was generated by hypermail 2.1.8 : Thu Jul 31 2003 - 23:00:59 EDT