Re: [stella] Collaboration

Subject: Re: [stella] Collaboration
From: Glenn Saunders <cybpunks2@xxxxxxxxxxxxx>
Date: Tue, 14 Jan 2003 00:03:23 -0800
At 09:32 AM 1/13/2003 +0100, you wrote:
Hm, I thought the cars can't move into the safe zone. :confused:

The way the collision seems to work in the coin-op is that any forward momentum stops (i.e. you crash) upon impact and then if you are still trying to move forward your car pauses briefly and then moves very slowly through the obstacle for the duration of the overlap/collision, including the safe zones. This is also what happens when you hit a gremlin. You can actually drive over the resulting cross, albeit slowly. From the video footage I have I don't know what happens if you manage to hit a gremlin within a safe zone, though.

Let's just go ahead and enforce a hard limit on the safe zones because otherwise it pretty much defeats the purpose of a safe zone, but at the very least you can definitely wrap at the top and bottom although even there you bump the boundary and then wrap around slowly. (Wrapping is always a cool feature in 2600 games, and one of those flags you can turn on and off in game variations.) No car or zombie should have to move beyond the grey "alley" strip on either side. We can even cheat the boundary inward an extra playfield pixel on each end if we really need the time. The resulting striping that would take place would probably look good since the arcade game has striped safe zone boundaries. I just didn't want to make the playfield too claustrophobic because then the cars wouldn't be able to move very fast. it would be too much like Combat tanks. The coinop has more breathing room because a) it looks like 320x200 sprite/movement res so the sprites are more compact and b) it appears to use more of the screen real-estate than the TIA chip allows.

Ok, with the current HMOVE comb they can disappear smoothly on both sides because when they wrap around on the right side they will be also hidden under the blanks. But obviously they will be visible a bit further to the right than to the left.

It looks like the best way to avoid this problem is to just not let the cars pass horizontally at all. Let's just finalize that constraint.

- with the current setup, the chances are very, very little (IMO *no* way!).
- with the Super Challenge Football setup, maybe (but IMO probably not).
- with only one missile/screen, yes.

If it requires the third compromise then it doesn't make sense because you aren't really gaining a sprite. You're just gaining the ability to draw in white.

Could we enforce vertical separation? Then the green gremlin could drop a red grenade if the red gremlin is not on those scanlines and for the lifetime of the grenade, the red gremlin could avoid it, and vice versa? This could actually have some cool exploitable effects as it would hinder the gremlin's ability to evade cars depending on circumstances.

Hm, that would require double or tripple kernels. One above the ghost (that might be reused below) and one (very large if hardcoded) for the ghost.

It would be better to have the ghost wave use both missiles and not have gremlins on screen at that time. That way the ghost can have free reign of the screen.

Maybe if the tombstones had just 1 extra scanline (that would normally be a tombstone line--lots of CPU available) between them we could get the ball positioned in there? That way I could have the gremlins drop grenades when they are within the vertical range of the grenade line, and they'd be able to drop it anywhere horizontally on that line.

Now, if the cars KNEW that grenades could only occur on those lines they'd be too easy to evade but if it were somehow possible to get multiple grenades (light up 1 grenade for each possible grenade zone) then it would be more treacherous. If they weren't grenades but something I could rationalize horizontal animation for, then that would help. Can't think of what that would be off-hand, though.

The other approach would be to drop out the rest of the tombstone line so that the grenade could be positioned with more accuracy, but this wouldn't look as good once lots of tombstones are on the same line because it would be apparent that the line is being blanked to make room for the grenade. Since the tombstones are already semi-opaque because of the interlacing, this wouldn't be a good thing.

The grenade gameplay idea might not be that necessary, actually. But I just wanted to know how much headroom is left with the current kernel so I'll know what the boundaries of possibility are in order to finalize the gameplay possibilities. I'm more interested in the ghost than the grenades and the ghost is already doable without the ball. I just like the ideal of making use of all 5 sprites for something meaningful in the game. I don't think many games do that, at least not many games that feature a playfield bitmap.

I think the best idea would be to mix the car colors. Then both zombies have the same mixed color (like the helicopter in Robot City). If both car colors have about the same brightness, this won't be noticable.

If you mean some form of flickering or chronocolor, I'd like to avoid that--aside from maybe the ghost, where it makes artistic sense. Also because of the rotational nature of the sprites, color register changes don't make much sense, otherwise the missile gremlins could have been given more of a pitfall harry look. But given that the coin-op was just black and white (no grayscale shades that I know of) this will still be an improvement ;) But to go overboard with it might lose some of the retro appeal. Ultimately it has to be an exercise in visual restraint, although I'm sure you agree that clearly the kernel won't go down as the easiest in the world I'm sure.

When purposefully avoiding flicker there is only so much you can fill up the screen. I know Super Challenge Football used vertical separation to do the rest, and I'm thinking as a final challenge (no pun intended) you could try to redraw the zombies further down the screen like that so we could have pairs or triplets of zombies moving as a linked set in the latter waves. If you HMOVED them inbetween you could even get them staggered out a bit instead of perfectly lined up without having to completely reset their horizontal position. But I realize the current kernel couldn't do this. It would have to be some kind of new trick. That would just be icing on the cake.

If there is time to make the tombstones have a subtle fade-out gradient from white to dark grey, that would look good, I think. It might give them a rough illusion of depth--like they are standing up, although doing this would also shade the "alley". It's worth trying out if possible.

The only colors we have are the car and the playfield (= ball!) colors. Therefore the ghost can't have an independent color without adding (color) flicker to one of these objects.

You made the tombstones gray but I actually wanted them to be white, so the ball/playfield color would work. But I think the consensus is to do the ghost with the missiles. I don't mind a green ghost with red flickery eyes. It's like Spud from Ghostbusters

A few hours during Sunday. I had to find and reread the old threads about DD and then it was quite "easy" to put everything together. But beware, this kernel is still very preliminary, I guess fine tuning it will require a lot more of time.

Hopefully it will only take a couple more iterations for it to be ready to do everything it needs to be able to do.

One finishing touch I was hoping for was to get a solid white horizontal boundary line above and below the active playfield. I was having trouble doing this without some kind of glitch somewhere on the edge of the top boundary because I'm setting up the playfield rewrites and such.

The other thing, of course, is the score. Question to the list, what existing game out there is closest to DD's score/timer? Would it be one of the sports games like Pele's Soccer? How much do you think you could get away with using playfield and how much would require sprites? I'm thinking only the colon in the timer would need to be a sprite.

Archives (includes files) at
Unsub & more at

Current Thread