Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Is there an end to River Raid?

10 views
Skip to first unread message

Roy Tony

unread,
Jul 25, 2001, 12:20:20 AM7/25/01
to

Not long ago someone asked if there's an end to River Raid.

In case I haven't answered it yet: A few years back I remember while
trying to fry it, it caused my jet to become invisible and pass through
everything. So it continued for about 10 minutes on and on. Some passage
ways got quite narrow and changed around.
I decided I'd better tape this, so I started it again but was never able
to get it to do the same thing.

--
Tony R.
t...@vcn.bc.ca
tton...@yahoo.com

uncle freddy

unread,
Jul 25, 2001, 10:24:38 AM7/25/01
to
In article <9jlhe4$pre$1...@sylvester.vcn.bc.ca>, "Roy Tony" <t...@vcn.bc.ca>
wrote:

someone turned off collisions and let it run and run and he said the
screen just starts getting all weird, but it doesn't end although maybe
you need collisions to see the end? who knows ....

Mike Beauchamp

unread,
Jul 25, 2001, 2:30:21 PM7/25/01
to
Here's my theory on the whole River Raid end thing.
I don't know how the level is produced, but it seems the same every time,
which leads me to think that it isn't random. Therefore it must have an
end..

But, some people say the boards are just made up..

About the guy/girl getting rid of collision detection and leaving it to
run.. I remember he claimed that ships were on the grass and all that stuff,
here's my theory..

The Collision Detection is used to place the ships and other enemies when
the boards are randomly created. It picks a random space, and if it detects
a collision it tries again. It does this until there's no collision, meaning
the enemy is being placed in water where it should be.

I've never seen the code or anything for the game, this is just a guess..
I've used the exact same technique in a few games that I programmed back in
highschool though.

--
Mike Beauchamp
http://mikebeauchamp.com


"uncle freddy" <uncle...@jerky.com> wrote in message
news:20010725.102552.2086206725.25805@jerky.com...

Erik Mooney

unread,
Jul 25, 2001, 7:13:15 PM7/25/01
to
On Wed, 25 Jul 2001 18:30:21 GMT, "Mike Beauchamp"
<mikebe...@home.com> wrote:

>Here's my theory on the whole River Raid end thing.
>I don't know how the level is produced, but it seems the same every time,
>which leads me to think that it isn't random. Therefore it must have an
>end..

Carol Shaw, the programmer, has told us what it is... the terrain is
deterministically algorithmically generated. It's a pseudo-random number
generator always initialized to the same start value. Supposedly, as you
go, eventually fuel depots are more and more scarce until eventually you
can't keep up on fuel, and there the game will come to an "end". There is
no hard end to the game.

>About the guy/girl getting rid of collision detection and leaving it to
>run.. I remember he claimed that ships were on the grass and all that stuff,
>here's my theory..

It was I that modded it to remove the collision detection (and have the
fuel not decrement). Kirk Israel then let it run for several hours and
observed that. My mods didn't affect the terrain generation algorithm,
I'm sure, unless it uses its own ROM as pseudo-random data to feed the
generator, which I don't think it does.

>The Collision Detection is used to place the ships and other enemies when
>the boards are randomly created. It picks a random space, and if it detects
>a collision it tries again. It does this until there's no collision, meaning
>the enemy is being placed in water where it should be.

Not precisely on a technical level, as the Atari 2600 can't detect
collisions in hardware until after the fact. A more precise term would be
"bounds check".

Mike Beauchamp

unread,
Jul 26, 2001, 12:19:09 AM7/26/01
to
Thanks for the info on River Raid..

when I talk about the collision detection and stuff, I'm merely speaking
from my experience programming in Turing :) hehehe.. so i'm not claiming to
know anything involved in VCS programming.

It's nice to find out that there's no REAL end. I've reached a score well
past 60,000 and there was no end in sight. Even then I don't think I died
from fuel..

I love talkin' river raid.. my favourite game by far.

--
Mike Beauchamp
http://mikebeauchamp.com


"Erik Mooney" <er...@SPAMFILTER-dos486.com> wrote in message
news:hckultcueh23k013c...@news.alt.net...

Erik Mooney

unread,
Jul 27, 2001, 8:49:59 PM7/27/01
to
On Fri, 27 Jul 2001 07:37:58 GMT, Glenn Saunders <cybp...@hotmail.com>
wrote:

>You'd have to have zero fuel for multiple waves to deplete all your
>accumulated lives, theoretically. I don't think the game can starve
>you so much that it puts zero fuel tanks on an entire wave.

ISTR reading somewhere that Carol had said eventually there just isn't
enough fuel. Can you actually fly fast enough to rack up 10,000 points on
one full-to-empty fuel run? I'd doubt it, when you consider that there's
several formations where you have to slow down to maneuver through the
terrain.

>I don't know the bit depth of the poly counter used. It's either 15
>or 16 bit so the total number of waves would be either 32768 or 65536,
>assuming that after it wrapped around it actually started over again
>exactly the same (which I doubt). This is also assuming that each
>number generated an entire wave. I'm not sure it's that efficient...

A deterministic finite-state computer system cannot generate a
transcendental sequence like pi. (It can only for a number of iterations
equal to the number of finite states of its state capabilities [memory and
registers.]) So it would have to repeat exactly the same (or terminate)
at some point, although not necessarily restarting all the way back to the
beginning. And such a poly counter would generate one object at a time,
not one wave -- although you could code a poly counter to increment each
wave and then a second poly counter or simpler pseudo-random number
generator to generate the objects within each wave, or any number of
approaches along those lines.

It's trivial, however, to generate a practically infinite terrain stream.
With only a 61-bit poly counter, well within even the 2600's RAM means, at
two objects per second, one can generate a nonrepeating stream of terrain
older than the age of the universe. :)

Kirk Is

unread,
Jul 31, 2001, 1:13:08 PM7/31/01
to
In rec.games.video.classic Glenn Saunders <cybp...@hotmail.com> wrote:

> On Wed, 25 Jul 2001 19:13:15 -0400, Erik Mooney
> <er...@SPAMFILTER-dos486.com> wrote:
>>Carol Shaw, the programmer, has told us what it is... the terrain is
>>deterministically algorithmically generated. It's a pseudo-random number
>>generator always initialized to the same start value. Supposedly, as you
>>go, eventually fuel depots are more and more scarce until eventually you
>>can't keep up on fuel, and there the game will come to an "end". There is
>>no hard end to the game.

> I'm not sure they can get THAT scarce. The thing is that if you are a
> good enough player you will be able to get enough free lives in your
> arsenal that if you fly almost constantly at full speed you will at
> least be able to make your points (hence build up more free planes)
> blowing up bridges and suck down fuel serendipitously when you come
> across them, otherwise sacrifice a life (which brings you back with
> full fuel anyway).


Heh, this discussion again. Nice to see my name mentioned, though most of
the difficult work was done by Eric Mooney with his patch. The best thing
to do would be to use a patch for infinite lives, and then actually play
it up to the point where it seems to zig out... that might take quit a
while.

Anyway, I wonder about that 'random seed', and how 'pure' their system
was... like, did they keep trying different seeds until one produced a
good game, easy at first, then tougher for a long while (until a typical
"really good" gamer would finally die?) Or did they find a seed that made
a good game, and then tweak it, so that it realized "ok, 20 bridges in,
time to make even fewer fuel tanks" etc?

> I don't know the bit depth of the poly counter used. It's either 15
> or 16 bit so the total number of waves would be either 32768 or 65536,
> assuming that after it wrapped around it actually started over again
> exactly the same (which I doubt). This is also assuming that each
> number generated an entire wave. I'm not sure it's that efficient...

Oh, I see... you believe that they use a different seed for each wave,
incremented each time?

Hmmm... It would be interesting if we could reverse engineer the code
enough so that we could try out different seeds... it would be even more
amazing if that worked so well that we could either A. rebuild the game
with an Adventure style generator built right in or B. figure out away of
patching the ROM so that you could get different River Raid Remixes in an
emulator.. either a script to generate new remixes or if most of the
remixes suck, have people try to find 10 or so good ones.

That would rock.

--
QUOTEBLOG: http://kisrael.com SKEPTIC MORTALITY: http://kisrael.com/mortal
"While some look at what is and ask 'why?' and others look at what could be
ask 'why not?' I look at my coffee table and ask 'where are my sunglasses?'"
--Paul Mather, subatomic humor

Erik Mooney

unread,
Aug 2, 2001, 2:33:58 AM8/2/01
to
On Thu, 02 Aug 2001 05:04:57 GMT, Glenn Saunders <cybp...@hotmail.com>
wrote:

>On Tue, 31 Jul 2001 17:13:08 GMT, Kirk Is
><kis...@andante.eecs.tufts.edu> wrote:

>>Heh, this discussion again. Nice to see my name mentioned, though most of
>>the difficult work was done by Eric Mooney with his patch. The best thing
>>to do would be to use a patch for infinite lives, and then actually play
>>it up to the point where it seems to zig out... that might take quit a
>>while.

Well, actually playing it probably won't show you where and how much it
repeats, unless it does so to some very recognizable landmark (which is
basically the first ten or so bridges, depending on how well one knows the
game.)

>>Anyway, I wonder about that 'random seed', and how 'pure' their system
>>was... like, did they keep trying different seeds until one produced a
>>good game, easy at first, then tougher for a long while (until a typical
>>"really good" gamer would finally die?) Or did they find a seed that made
>>a good game, and then tweak it, so that it realized "ok, 20 bridges in,
>>time to make even fewer fuel tanks" etc?
>

>I think the latter. That's why I think it won't repeat when the poly
>counter repeats, because there are some linear constants embedded
>within the generation routines to ramp up the difficulty.

Eventually, though, it _must_ repeat (or terminate) in some fashion, since
the 2600 is a finite-state machine. Either those linear constants max out
or wrap back to their starting values; either way you eventually get
repetition. We're talking _end_ here, not an arbitrary midpoint where
some variable wraps around.

>Maybe the shape of the canyon can repeat back to wave 1, but you'd
>still have jets and less fuel so it technically wouldn't be wave 1.

Which wouldn't yet be a repetition, but eventually the algorithm must.

Kirk Is

unread,
Aug 2, 2001, 4:34:45 PM8/2/01
to
In rec.games.video.classic Erik Mooney <er...@spamfilter-dos486.com> wrote:
> On Thu, 02 Aug 2001 05:04:57 GMT, Glenn Saunders <cybp...@hotmail.com>
> wrote:
>>On Tue, 31 Jul 2001 17:13:08 GMT, Kirk Is
>><kis...@andante.eecs.tufts.edu> wrote:

>>>Heh, this discussion again. Nice to see my name mentioned, though most of
>>>the difficult work was done by Eric Mooney with his patch. The best thing
>>>to do would be to use a patch for infinite lives, and then actually play
>>>it up to the point where it seems to zig out... that might take quit a
>>>while.


> Well, actually playing it probably won't show you where and how much it
> repeats, unless it does so to some very recognizable landmark (which is

Well yeah, I was just wondering where the world "breaks down" as it were.
Might be well before it truly 'repeats'.


--
QUOTEBLOG: http://kisrael.com SKEPTIC MORTALITY: http://kisrael.com/mortal

"Power corrupts. Absolute power is kind of neat."
--John Lehman, secretary of the navy 1981-1987

0 new messages