If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!

RoboCop 3 (NES)

From The Cutting Room Floor
Jump to navigation Jump to search

Title Screen

RoboCop 3

Developer: Probe Software
Publisher: Ocean
Platform: NES
Released in US: August 1992
Released in EU: July 28, 1994

AreasIcon.png This game has unused areas.
GraphicsIcon.png This game has unused graphics.
TextIcon.png This game has unused text.

A game based on the third movie with really great music by Jeroen Tel who would subsequently reuse and remix this soundtrack for the Commodore 64 version. Yes, that's right, the NES version came first!

Unused Graphics

RoboCop 3 (NES)-bar.png
Likely intended to appear in the first part (out of 3) of the third level (and fourth obviously), this sign was almost certainly excised in order to meet Nintendo's acceptable content guidelines (no drug or alcohol references).

RoboCop 3 (NES)-aletter.png
The starting logo graphics has one little letter "A" most probably intended to be used as an article at the "A PROBE PRODUCTION" screen in the background. In the final version the regular font "A" letter is used as a sprite.

Screenshot is taken with "Allow more than 8 sprites in line" hack.

At the title screen there is a set of overlay sprites used to increase the picture color depth, as well as display the title menu. The six sprites in this set is unused and intended to draw the lower part of the RoboCop's belly. Even though the Sprite palette of this part is not quite well fit with the background palette for the rest of the body, this is not a reason why they removed it. The menu option "MUSIC ON/OFF" already (no matter whether the "ON" or "OFF" line is displayed) has 8 sprites in one line. So the half of belly overlay in the same line disappear every time the menu item is displayed and blink the same time as this menu option.

The reason they moved this part of background to the sprites, even if there are no problems with color depth in this area, is because they ran out of free space for the background tiles. The lower part of RoboCop's body fills all 256 tiles; there is no more space for 12 more tiles.

Original Restored
RoboCop 3 (NES)-repair orig.png RoboCop 3 (NES)-repair missing0.png

The Repair lab screen has the overlay sprites as well. They generated by the program from the special bitmap plane of 32x21 tiles, and the game can't track how many sprites it will write to the sprite buffer. At some point the program overwrites the two last overlay sprites with the repair tank sprites at the end of the buffer, causing some sprites under the right foot of the Robocop to disappear. Here we can see a complete picture without missing sprites.

Original Unused
RoboCop 3 (NES)-repair tlm0 final.png
RoboCop 3 (NES)-repair tlm1 final.png
RoboCop 3 (NES)-repair tlm2 final.png
RoboCop 3 (NES)-repair tlm0 early.png
RoboCop 3 (NES)-repair tlm1 early.png
RoboCop 3 (NES)-repair tlm2 early.png

Also, repair lab has more unused tiles. The set of tilemaps to draw the different stages of damage for legs has the dimensions 8x6, but only 8x5 is displayed on the screen. The last line is although mostly the same as the initial background picture, except just one tile in the middle part of the right ankle, so you barely can see the difference. The main problem is that the last line erases some original background tiles, you can see on the picture below, how the vertical line under the right leg disappears when using the full 8x6 set. The code for displaying it is still sitting in the ROM, obviously disabled.

The damage graphics for the arms has two separate rects. One for the right and one for the left forearms. The code has the completely unused third set of images 4x4 in size for the left palm. The same for legs, the last line of tiles will overwrite some portions of the original tilemap, but even if it uses just 4x3 pictures, you may see on the pictures above, the palm damage graphics look weird and doesn't fit to other parts, which it does not change. So most likely they decided to not use these tiles at all on an early stage.

Unused Level Rooms

Level 1

RoboCop 3 (U)-lvl1 inv screen.png

Each level is stored in its own separate bank. All room tilemaps are stored continuously for each level as raw tilemaps 32x21 + 48 bytes of attributes data. The last room for each level is a black empty tilemap with no attributes or something else. It's just to fill the part of the nametable, when you reach the end of the level, which obviously never can be seen.

The developers stored some more copyrights data in such an empty hidden room for the first Level. It can't be seen unless you hack the scroll limit for the right far part of the bonus room in this level and uses the same CHR data bank as for the HUD, which was used for writing this message during the development stage.

Level 3

RoboCop 3 (U)-lvl3 inv screen.png

Not really hidden, just unused. Both Levels 3 and 4 has exactly the same layout, although they have different enemies, objects and opposite movement direction. And most importantly, that there are TWO identical sets of room tilemap data stored in two different banks, used by each level independently. The only difference, that Room 0, present in both levels can be seen only in Level 4, and just skipped for Level 3 and never displayed there.

Unused Text

RoboCop 3 (NES)-getout.png

Judging from the overall game logic, this message intended to be seen after the level 5 password is entered as the final briefing before the game over. But, the game engine does not support briefings after the levels, only before them. So, it appears to be they planned to trick the game engine to think the new level begins and try to jump to the game over somehow after all. But it seems this idea were scrapped during the early development stages, and there is only one evidence of it left: the level number increases after the last level to value 5, which is used then by the ending branch logic.

There is an unused string at the end of the HUD messages list: "OUT OF TIME". The message should have the index $1A, but the corresponding pointer table has the maximum index $19 instead. Most interesting, that the game attempts to use this message by requesting to display a HUD message with index $1A at the end of the game, when the timer in level 5 is running out, but the game ends immediately at this point with the Game Over screen and the HUD message couldn't be displayed at all or else it would cause the error.

Also, a HUD tilemap at 0x1FA15 has another unused message, used a placeholder: "A SAMPLE MESSAGE.".

Unused Hi-Score Tables

There are three different default hi-score tables in this game.

  • One is used in the final release.
  • Оne is never used at iNES ROM offset 0x15A95. To see it use the Game Genie codes SAKGIAUA+XPKGTEKN+IEOYUYZA and reset the game.
  • And one is a placeholder in packed tilemap resource for the Hi-Score table.
Original Unused Placeholder
RoboCop 3 (U)-orig hiscore.png RoboCop 3 (U)-unused hiscore.png RoboCop 3 (U)-placeholder hiscore.png

As you can see, the unused one has a lot more realistic scores, replaced with less challenging numbers in the final release, and positions 4 and 6 are swapped. The placeholder one has no scores, and only the two first lines filled, the rest is filled with "J.BLOGGS" (short for "Joe Bloggs", a common placeholder name).