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

Overboard!

From The Cutting Room Floor
Jump to navigation Jump to search

Title Screen

Overboard!

Also known as: Shipwreckers! (US)
Developer: Psygnosis
Publisher: Psygnosis
Platforms: Windows, PlayStation
Released in US: October 29, 1997
Released in EU: October 1997


DebugIcon.png This game has debugging material.


Overboard! is an action-adventure game where you control a pirate ship.

Debug Configuration

Elementary, my dear Cactus.
This needs some investigation.
Discuss ideas and findings on the talk page.
Specifically: Check if there's any way to activate these in-game.

The following data table exists for all known versions, consisting of addresses for debug toggle variables, and corresponding description strings (addresses shown for the Windows retail version, labels manually added for clarity):

004c2745 20 38 4b 00     addr       s_DEBUG_INFO_004b3820  = "DEBUG INFO"
004c2749 00              ??         00h
004c274a 01              ??         01h
004c274b 29 24 4e 00     addr       var_debug_info
004c274f 2c 38 4b 00     addr       s_PROFILE_004b382c     = "PROFILE"
004c2753 00              ??         00h
004c2754 01              ??         01h
004c2755 28 24 4e 00     addr       var_profile
004c2759 34 38 4b 00     addr       s_INVUNERABLE_004b3834 = "INVUNERABLE"
004c275d 00              ??         00h
004c275e 01              ??         01h
004c275f 2a 24 4e 00     addr       var_invuln
004c2763 40 38 4b 00     addr       s_GOTO..._004b3840     = "GOTO..."
004c2767 03              ??         03h
004c2768 03              ??         03h
004c2769 00 00 00 00     addr       00000000
004c276d 48 38 4b 00     addr       s_...LEVEL_004b3848    = "...LEVEL"
004c2771 01              ??         01h
004c2772 15              ??         15h
004c2773 31 24 4e 00     addr       DAT_004e2431

No direct references exist to this table. Only the first 3 referenced variable addresses appear to be read or written to.

Debug Info

For the Windows retail version, an in-game display is activated when memory address 004e2429 is set to 1. However, this address is only assigned to in the following snippet:

0041852c  XOR  BL,BL
0041852e  MOV  byte ptr [DAT_004e242c],AH
00418534  MOV  byte ptr [DAT_004e242d],DL
0041853a  MOV  byte ptr [DAT_004e2429],BL

We can replace instruction XOR BL,BL by MOV BL,1, so that value 1 is used in the assignment. To accomplish this, we patch the following file offset. For the PlayStation versions, we can directly modify the memory variable, by applying GameShark codes:

Windows Retail PlayStation Retail (SLES-00865) PlayStation Demo (PBPX-95001)
0x1792c = 0xb301
8008ae69 0001
800bb389 0001

Description

Windows Retail PlayStation Demo (PBPX-95001)
OB-DebugDisplay.png OB-PS1Demo-DebugDisplay.png

For all versions, the following variables are displayed:

  • MEM: Memory usage in bytes;
  • POS: X/Y player position;
  • OBJCOL: Number of objects rendered on the screen;
  • CELL: X/Y map cell position;
  • FPS: Frame rate counter.

For the PlayStation demo version, an additional variable is displayed:

  • GPU BUFFER: Unknown.

Profile

Adds a single FPS counter.

For the Windows retail version, it seems to be active by default when the Debug Info is activated. For the PlayStation versions, we can apply GameShark codes:

PlayStation Retail (SLES-00865) PlayStation Demo (PBPX-95001)
8008ae68 0001
800bb388 0001

Invulnerability

Makes the player immune to damage. Also affects both players in multiplayer matches.

For the Windows retail version, we can do a similar patch as described before, this time in 2 file offsets. For the PlayStation versions, we can apply GameShark codes:

Windows Retail PlayStation Retail (SLES-00865) PlayStation Demo (PBPX-95001)
0x3ea38 = 0xb601
0x3f238 = 0xb701
8008ae6a 0001
800bb38a 0001

Multiplayer Leftovers

In the PlayStation demo version, some inaccessible multiplayer features are present, such as the Battle Complete menu, which can be loaded with these GameShark codes (enable in-game, after loading the level):

8009f4c8 0001
8004f858 0000
8004f85a 0000

Some menu labels are different, since deathmatch arenas were simply described as levels:

PlayStation Retail (SLES-00865) PlayStation Demo (PBPX-95001)
OB-PS1-BattleCompleteMenu.png
OB-PS1-BattleCompleteSelect.png
OB-PS1Demo-BattleCompleteMenu.png
OB-PS1Demo-BattleCompleteSelect.png