The James Pond 3 F.I.5.H. Code

4 April 2018

James Pond 3 is a great game. It has many levels and objectives so it uses a password system to save your progress. Although you can't generate a password on demand, the game does give you a password any time you pick up a surveillance beacon or defeat a boss. Revisiting a boss level and defeating it again gets you a password at any time (luckily most of the bosses are easy).

If you visit the password entry screen and enter an incorrect code, you get this enticing message:

Message stating that I should try harder.

It's almost like a challenge! Every now and then I search the web to see if anyone has worked out the F.I.5.H. code, but so far nobody has. Ciphers and such aren't my thing, so I'm a fish out of water in this case. Nevertheless, I wanted to see if I could do it. I am working with the Mega Drive version of the game for this - other platforms also use the same kind of code, but they aren't interchangeable (so you can't put an Amiga code into the Mega Drive).


The password screen contains 32 symbols, 4 possible colours for each symbol, and a maximum of 22 empty spaces for them to occupy. I make that (4 x 32)22 = 22,835,963,083,295,358,096,932,575,511,191,922,182,123,945,984 possible unique combinations. Brute force is out of the question, then.


Going to a boss level to get codes is a good way when playing the game normally, but I am impatient. Also, I want to change as few variables as possible. So with the help of Kega Fusion's cheat code finder, I work out that the code for the surveillance beacon is FFF918:00FF. Turning on that cheat code will give you a password every time you win a level.

To keep it simple, I start playing with only the first level (Garden of Edam). I generate a code for finishing the level with 1 heart (lives), 2 hearts and so on. No other variables change, and I get 9 codes.

A matrix of symbols from the password screen, demonstrating similarities.

So let's look at what is the same: blue frog, and a repeating sequence of green cars and yellow cats. The next 5 symbols have something to do with the number of hearts; nothing else that's different should be changed. I imagine there must be a checksum somewhere in the algorithm it uses to create a code, otherwise the game might accept any gibberish.

My first thought was, "why does having 3 hearts or 5 hearts generate 5 symbols, when the rest only generate 4?" So I went back and did the levels again. No mistake. In what numbering system does holding the value "3" occupy more memory than "4"?

I don't know. My only guess so far is that there is some sort of encoding going on, and when it divides 3 or 5 it overflows something. It's a weak theory because picking on those two digits makes no sense at the moment, but it's all I have.

Discouraged, I played through some more levels and got their passwords. Here are my hypothesises thus far:

Not Saved in a Password:

  • Moons, Fishes/Stars, Score
  • Map routes not taken

Is or Probably Saved:

  • Lives/Hearts (assume integer)
  • Completed Levels (102 levels, boolean flag for each)
  • Agents rescued (3 flags)
  • Stiltonium Machine destroyed (4 flags)
  • Satellite piece found (3 flags)
  • Moon treasure found (5 flags)
  • Key found (2 flags - 1 for mines, 1 for crystal caverns)

I've decided to leave it for now, and come back another day. As some final thoughts: there are plenty of recurring symbols on the first change - column 2 has skull, cake, and bottle repeated. Column 3 has computers every other time. Moons end a lot of the codes (6/9). And those repeating cars and cats; I am betting they are a placeholder for the levels completed. After all, 102 flags would need the most space.

I also think there might be some sort of header and value system going on, as the code only gets longer when you do something new. For example, picking up a piece of moon treasure increases the size by one symbol (but changes more symbols too). So perhaps a code is internally laid out like:

LEVELS (1,0,0,0, ...102 times...). AGENTS (1, 0, 0). MOON TREASURE (0,0,1,0,0). SATELLITE (1,1,1,1,1). KEYS (0,1).

If anyone knows how the code works, I'd be curious; but as long as cheats and emulators exist, I'm not dying to know.

Return to Blog Index








© Andrew Nile 2018-2024. Privacy