[comp.sys.amiga] WANTED: Patch to fix time li"Rockford"

sean@ms.uky.edu (Sean Casey) (07/11/88)

If anyone ever sees a patch to alter the time limit per level in "Rockford",
I'd love to get it. The game is interesting, but too hectic. I'd like to
put a huge time limit on each level so I can do it strategically instead of
quickly.

Sean
-- 
***  Sean Casey                        sean@ms.uky.edu,  sean@ukma.bitnet
***  The IPCF Roto-Rooter man.         {backbone|rutgers|uunet}!ukma!sean
***  U of K, Lexington Kentucky, USA   Internet site? "talk sean@g.ms.uky.edu"
***  ``I'm not bad. I'm just drawn that way.''

farren@gethen.UUCP (Michael J. Farren) (07/16/88)

In article <9922@g.ms.uky.edu> sean@ms.uky.edu (Sean Casey) writes:
>If anyone ever sees a patch to alter the time limit per level in "Rockford",
>I'd love to get it. The game is interesting, but too hectic. I'd like to
>put a huge time limit on each level so I can do it strategically instead of
>quickly.

First the disclaimer: this will not get you as much as you might think. A
lot of the hectic feel of Rockford is the enemy goodies moving around, and
the necessity to dodge rocks, etc.  None of this will change.  However, you
CAN, with the able aid of DiskZap or some such utility, modify Rockford to
your heart's content.

First: copy all the files on Rockford: to another disk.  RAM: works o.k.,
and makes the game a lot less slow when going between levels, to boot.
(If you want to play from ram, do "Assign Rockford: RAM:", after removing
the Rockford disk, change directories to RAM:, and type "rf" from the CLI.
Note that for no apparent reason, you must reboot to leave Rockford.)
Oh, for an entertaining time, read the startup-sequence on Rockford.
Professionalism in action :-)

Now that you have the files on another disk, edit the file "rf" - the main
Rockford driver program.  About 80% of the way into the file (DiskZap
says "sector 44 of 56"), you will find a data area which has a number of
tables, one per "Rockford World".  This begins with the text string
"The HUNTER", for easy location.  This appears to be where all the info
for the different levels is stored.  The format of each area is: 14 bytes
for the character type, zero terminated.  9 bytes for the treasure type
appropriate for that "World", again zero terminated.  35 bytes of stuff
I don't know what it is.  Then, four 16-bit words, each containing the
number of treasures necessary to finish the corresponding level, followed
by four 16-bit words, each containing the number of seconds allowed for
that level.  I've only changed these to 255, haven't played with two-byte
integer values yet.

Several interesting things come out of this as well.  There are five
worlds that are present in the program, but not in the game.  These are:

The SCUBA -      treasure, GEMS
The PLAYER -     treasure, CUPS
The CONDUCTOR -  treasure, NOTES
The GAMBLER -    treasure, CLUBS
The MINER -      treasure, DIAMONDS

The maps for the worlds associated with each of these are also present,
in the "maps" file.  The original order of worlds would appear to have 
been hunter, scuba, cook, player, cowboy, conductor, astronaut, gambler,
doctor, miner.  Unfortunately, while the data and maps are there, the
graphics and means of getting to them appear not to be.

BTW - the "maps" file can also be edited.  The representation is pretty
simple - each world is a 40 X 22 grid, and the maps follow that, with an
entry for each type of thing that can be in a square.  I don't have the
chart handy for what means what, but you can figure it out real easily.
Note that the maps aren't in game order, as the maps for the "invisible"
worlds are intermixed with the maps for the ones we get to play.  I wonder
if those other worlds will ever see the light of day?

-- 
Michael J. Farren             | "INVESTIGATE your point of view, don't just 
{ucbvax, uunet, hoptoad}!     | dogmatize it!  Reflect on it and re-evaluate
        unisoft!gethen!farren | it.  You may want to change your mind someday."
gethen!farren@lll-winken.llnl.gov ----- Tom Reingold, from alt.flame