ROCKFORD REMAKE PROJECT

(c) Aleksi Sahala 2006 (updated 4.11.2009)
1. THE ORIGINAL GAME
Rockford was a Boulder Dash clone published by Mastertronic ltd. in 1987. The game included
20 levels divided into five difficulty levels each using it's own graphical theme: hunter,
cook, cowboy, space and doctor.
In addition to five themes, which didn't exist in Boulder Dash, Rockford also included some
interesting new features as worms, taps and magic lamps, quicksand and time/gold bonus counters.
Rockford also had a limited number of lifes.
Worms: Evil worms transmute gold into rocks, and rocks into non-gold producing enemies. Good
worms do the opposite.
Taps/magic lamps: Taps produce acid, magic lamps produce fire. These elements explode when
they touch each other; gold dropped on fire turns into a gold producing enemy.
Quicksand: Quicksand let's rocks and gold drop through it in random intervals.
Bonus counters: Counters give player random number of extra time or gold when collected.
Rockford's level design also differed a bit from original Boulder Dash. The levels were more action
based and arcadish, needing good reflexes and timing to complete (even more so, because Rockford
runned at double speed compared to BD).
Rockford included also 20 additional levels which were unplayable. They were designed for a future
add-on which as long as I know, was never released. The levels were about to use five additional
graphic sets, Scuba, Miner, Player, Luck and Music. See section 3. for info how to extract these
levels.
Screenshots of the Space and Cook themes.
2. REMAKE
I released the first beta version of the remake in June 2008, and the version 1.0 in 2nd December 2008.
Remake runs on Rocks'n'Diamonds engine version 3.2.6. The remake can be downloaded from here.
In version 1.0:
- All five graphical themes have been created.
- All original 20 levels have been exported
- All hidden 20 levels have been exported
- All Rockford's special features (worms, taps, etc.) have been scripted and they work ok.
To do someday:
- Fix worm's 180 degree turning (if such scripting is possible)
- Fix fire and acid behaviour in horizontal movement.
- Autoset game speed to fast (if such scripting is possible)
- Set limited number of lives. Now player may try levels as many times as (s)he wants.
- Merge graphic sets, so that each level set would automatically use correct gfx.
- Change panel location to top.
- Reconstruct the five never released graphic sets (I've extracted their palettes from the .EXE).
Theme's background colors; name of the collectable items and my guess for the correct theme name.
* Theme 6: Background 01 (dark blue) GEMS == SCUBA.FIL
* Theme 7: Background 02 (dark green) CUPS == PLAYER.FIL?
* Theme 8: Background 08 (grey) NOTES == MUSIc.FIL
* Theme 9: Background 01 (dark blue) CLUBS == LUCK.FIL?
* Theme 10: Background 00 (Black) JEWELS == MINER.FIL
COMPARISON: Original Rockford on the left, Remake on the right.
2.1. HOW TO INSTALL AND PLAY THE REMAKE
1. Install the newest version of the Rocks'n'Diamonds.
2. Download rockford_v1.zip and extract it into your Rocks'n'Diamonds subdirectory /levels.
For example D:/games/RnD/levels/Rockford_v1.
3. Run Rocks'n'Diamonds.
Go to setup -> Custom artworks and select the Rockford theme and sounds.
Remember to check override original graphics box.
4. Load levels by clicking levelset and choosing Rockford v1.0.
3. GENERAL FILE INFO (ORIGINAL ROCKFORD)
Rockford files and their functions:
ROCKFORD.EXE The game
CELLMAPS.BIN Levels
TITLE.FIL Title graphics, including credits and info text.
TITLEANI.FIL Moving graphical parts of the Title screen.
MENU.FIL Menu graphics.
HUNTER.* Theme 1
COOK.* Theme 2
COWBOY.* Theme 3
SPACE.* Theme 4
BODY.* Theme 5
*.CAR Animations
*.FIL Sprites, tiles, objects (but no palette)
Missing files:
These files referred in ROCKFORD.EXE are possibly some unfinished part of the game.
SCUBA.* Theme 6
LUCK.* Theme 7
MUSIC.* Theme 8
PLAYER.* Theme 9
MINER.* Theme 10
3.1. ROCKFORD.EXE
Palettes:
The first value is the background color. Each palette is separated by 00.
0929-0938 menu_palette
093A-0949 title_palette
094A-0959 hunter_palette
095b-096A theme6_palette
096C-097B cook_palette
097D-098C theme7_palette
098E-099D cowboy_palette
099F-09AE theme8_palette
09B0-09BF space_palette
09C1-09D0 theme9_palette
09D2-09E1 body_palette
09E3-09F2 theme10_palette
0B98 Toggle dying on / off. 02 = on, 01 = off
(Can sometimes create buggy invisible blocks)
0D1E -> 0D6D Money to be collected, in order (theme number):
1, 6, 2, 7, 3, 8, 4, 9, 5, 10
28 00 28 00 50 00 96 00 Hunter
14 00 41 00 82 00 37 00 6
00 00 00 00 00 00 2D 00 Cook
14 00 23 00 1E 00 21 00 7
1E 00 7D 00 16 00 37 00 Cowboy
32 00 1E 00 1E 00 00 00 8
00 00 00 00 00 00 3C 00 Space
0F 00 0B 00 1E 00 00 00 9
00 00 00 00 4B 00 12 00 Body
10 00 18 00 39 00 01 00 10
0EFE -> 0F4D Level times. In same order as above.
6E 00 6E 00 82 00 6E 00 Hunter
50 00 8C 00 64 00 6E 00 6
6E 00 6E 00 5A 00 82 00 Cook
5A 00 64 00 6E 00 64 00 7
6E 00 73 00 78 00 73 00 Cowboy
82 00 5A 00 6E 00 6E 00 8
6E 00 6E 00 8C 00 6E 00 Space
82 00 82 00 8C 00 91 00 9
82 00 A0 00 AA 00 8C 00 Body
8C 00 8C 00 6E 00 B4 00 10
3.2. CELLMAPS.BIN
Maps are in order (by theme number) 1, 6, 2, 7, 3, 8, 4, 9, 5, 10, see my formatted file in cellmaps.html
(order of levels changed). Hidden maps can be played by removing theme 1 from CELLMAPS.BIN. Then maps for theme 6
are loaded for hunter, 7 for cook etc. Level times and gold amounts must be changed in ROCKFORD.EXE
to make the new levels possible to complete.
hex ascii tile
00 . empty space
01 ☺ diggable dirt
02 ☻ indestructible wall
03 ♥ destructible wall
04 ♦ magic wall
08 ◘ growing wall
0C ♀ quicksand
10 ► amoeba
20 player start location
28 ( boulder
"butterflies" (enemies producing gold when hit by a stone)
2C , enemy - left
2E . enemy - up
2f enemy - right
30 0 enemy - down
"fireflies" (enemies not producing gold when hit by a stone)
34 4 enemy - up
35 5 enemy - left
36 6 enemy - down
37 7 enemy - right
38 8 fire tap
70 p evil worm
74 t exit
78 x gold bonus
7C | time bonus
84 ä good worm
88 ê gold
C4 - acid tap
3.3. *.FIL and *.CAR
Yet, I haven't been able to crack the *.FIL and *.CAR files. Different hex values seem to
indicate different pixel formations, where 00 is empty and ff is full colored. Tile shapes are
clearly recognizable if the file is split into 80 byte long lines.
4. PLAYING THE HIDDEN LEVELS IN ORIGINAL ROCKFORD
First, you must to change the level times and gold amounts into correct values. Otherwise playing will be
impossible, as you may have to collect 80 gold in a level where only 20 gold is available; or you won't have enough
time to complete the level.
MAKE A BACK-UP OF YOUR ROCKFORD.EXE!
a) Open ROCKFORD.EXE in a hex editor (I prefer HxD, as it's free and versatile)
b) Copy hexes from 00000D26 - 00000D6D (These are the amounts of gold to be collected in themes 6, 2, 7, 3, 8, 4, 9, 5, 10)
(14 00 41 00 82 00 37 00 32 00 23 00 19 00 2D 00
14 00 23 00 1E 00 21 00 1E 00 7D 00 16 00 37 00
32 00 1E 00 1E 00 28 00 1A 00 37 00 3C 00 3C 00
0F 00 0B 00 1E 00 41 00 12 00 46 00 4B 00 12 00
10 00 18 00 39 00 01 00)
c) Replace-paste them on offset 00000D1E (do not insert-paste, or the file size will change and the exe will corrupt!)
d) Copy hexes from 00000F06 to 00000F4D and replace-paste them on offset 00000EFE. This will correct the playing times for hidden levels.
(50 00 8C 00 64 00 6E 00 6E 00 6E 00 5A 00 82 00
5A 00 64 00 6E 00 64 00 6E 00 73 00 78 00 73 00
82 00 5A 00 6E 00 6E 00 6E 00 6E 00 8C 00 6E 00
82 00 82 00 8C 00 91 00 82 00 A0 00 AA 00 8C 00
8C 00 8C 00 6E 00 B4 00)
e) Save the file.
Next, you must remove the first four levels from the CELLMAPS.BIN
MAKE A BACK-UP OF YOUR CELLMAPS.BIN!
The Difficult way (if you don't use HxD):
a) Start dos command console and open CELLMAPS.BIN into Dos text editor. I prefer EDIT or QEDIT, as both have 100% ASCII support.
b) Split every line from the 41st character, so that each line has only 40 characters (Rockford levels have 40 x 22 tiles).
c) Continue splitting until you see the first four levels of the game in ASCII format (see a formatted cellmaps.bin)
d) Delete the first four levels. This will shift the hidden level set 6 into the place of the original set 1; 7 to 2; 8 to 3 and so on.
e) Save the CELLMAPS.BIN
f) If you did everything right, the file size of CELLMAPS.BIN should now be 31 682 bytes instead of the original 35 200 bytes.
The easy way with HxD
a) Open CELLMAPS.BIN in Hxd
b) Set bytes per line to 40
c) Set Endoding into ASCII (you should now regocnize the level borders easily)
d) Remove first four levels (All data before the line 0000DC0).
e) Save file
Voilà!