Re: [stella] Invaders update! - inv-beta.bin

Subject: Re: [stella] Invaders update! - inv-beta.bin
From: emooney@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx (Erik Mooney)
Date: Fri, 25 Apr 1997 01:44:16 GMT
>I think each row should have an individual shape/animation cycle, as well
>as a unique hue band. 

I'd rather not.. the arcade had two pairs of identical rows, and it'd take
a lot of work on the kernel to have more than three different shapes.  It's
doable, but I'm not sure if its worth the effort.  Also remember I'm going
for arcade simulation, not 2600 space invaders simulation.

>The way the marching animation works now, it marches in place (2 frames) 
>for every horizontal movement.  I don't know if that's how the arcade
>works, but the 2600 version changes shape only once per horizontal
>movement so that it coincides with the marching sound effect.

In the arcade, they alternate frames every time they move, but they move in
single-pixel increments.  I'm using playfield graphics, so they can only
move in four-pixel increments, so I have them march in place to try and
compensate.

>As for shape ideas, if you have 6 frames to work with, you could do an
>animated strip (ala the middle invaders) so that the black stripe goes
>from top to bottom, or one half goes down, the other up.  You can also
>create a new shape that is more like a slash / then \ in addition to the
>regular "block with one leg down" look.  I don't think the upside down
>marchers on the top row work that well.  There are plenty of ways to
>create new shapes and animations besides these even given the limited
>resolution.  But yes, only the "block with one leg down" will give you a
>traditional marching image.  (ascii diagrams for shape proposals available
>upon request).

As written, the kernel can only handle modifying the base invader shape on
two consecutive scanlines out of the six for each invader row.  I just
don't have the cycles to do anything else (already skipping STA WSYNCing),
or to modify the base shape on any more lines and still check to
enable/disable the missiles and bombs.

>Also I noticed that when you shoot your shields, the missile goes well up
>into the shield before taking a piece out of it, if you know what I mean.
>That's a nit to pick but you'd imagine the missile collision would happen
>on the tip top of the missile and not the bottom.

I know what you mean, but I can't change that much either - the missiles
move up four lines per frame and each missile is drawn only every other
frame, so by the time I have a chance to check the collision, the missile
is already sticking out of the top of the shield.  2600 SI handles this by
enlarging its shields vertically and by slowing the missiles down.  I can
probably extend the shields, but the arcade missiles move at the speed mine
do.

>Also, the arcade space invaders had some squiggly missiles, not just
>straight lines.  I believe missiles are two bits wide, right?  You could
>get an alternating zig-zag missile in there if you wanted.  I think in the
>arcade some of the missiles fall faster than others, which adds a good
>element of unpredictability there.  Some method of animating an explosion
>(with a flickery missile shape?) would also snazz things up.

Missiles and the ball (used for the bombs) can be either one, two, four, or
eight pixels wide.  I don't think I have enough cycles to update the NUSIZ
registers as well as check the ball/bombs, but I can try.  As for
explosions, that's also pretty difficult to do.. I really can't use the
player graphics for them (no time to update GRPx during lines on which I'm
displaying invaders, and can't use players for the explosions during the
shield scanlines) and using the missile would also be kinda difficult.

>Matching the movement of the invaders, the base, and the speed of the
>missiles is important in getting the arcade feel.  In Space Invaders for
>the 2600 the missiles feel too slow, and if you use the fast missiles
>wave, the base's missiles feel too slow, and the base seems to be a little
>sluggish as well.  They did a great job for what it is, but it's not
>arcade perfect.

They didn't try for arcade perfect, they tried for looks-good-on 2600.
(still dunno why they didn't do four shields, though - coding that wasn't
difficult at all)

--
Archives available at http://www.biglist.com/lists/stella/archives/
E-mail UNSUBSCRIBE in the body to stella-request@xxxxxxxxxxx to be removed.

Current Thread