TASVideos

Tool-assisted game movies
When human skills are just not enough

Submission #1186: FractalFusion's NES Monopoly in 00:55.55

Console: Nintendo Entertainment System
Game name: Monopoly
Game version: USA
ROM filename: Monopoly (U).nes
Branch:
Emulator: (unknown)
Movie length: 00:55.55
FrameCount: 3333
Re-record count: 2079
Author's real name: Justin Chan
Author's nickname: FractalFusion
Submitter: FractalFusion
Submitted at: 2006-09-08 01:37:32
Text last edited at: 2008-01-07 06:51:11
Text last edited by: FractalFusion
Download: Download (1097 bytes)
Status: decision: cancelled
Submission instructions
Discuss this submission (also rating / voting)
List all submissions by this submitter
List pages on this site that refer to this submission
View submission text history
Back to the submission list
Author's comments and explanations:

Recorded in FCEU 0.98.16, but works in any version.

This run does not aim for fastest time.

Monopoly source (new files and old updated files; the last one vanished): http://www.savefile.com/files/36316]. It's the same as in my cancelled submission.
See FractalFusion/Source/Monopoly for the source.


You would think manipulating six rolls at once after end of input is impossible. Even BasicBot and the delay search program monopolysolve.cc would not work.

However, I found a solution.

The program used was monopolysolve2.cc. Given a starting point (9000 iterations from the beginning seed) and using a search distance of 100000, the program takes a random RndVal1 seed and tests, for all 256 possible RndVal2 values, whether it produces the six rolls necessary to bankrupt the three CPUs. Each CPU must roll either 3+3, 4+4, 5+5, or 6+6, followed by 1+1, 1+2, or 2+1 (but 3+3 -> 1+1 is disallowed)[1]. The program did output the following:

  Done delay 5000
  5 6 3 CB4129 5F 8039
  Done delay 10000
  6 4 3 390B11 8D 14372
  Done delay 15000
  5 3 5 ED528 D2 19135
  Done delay 20000
  5 4 5 CD8061 C6 20317
  3 5 5 F8D5FC 54 22506
  Done delay 25000
  Done delay 30000
  Done delay 35000
  Done delay 40000
  4 5 6 3F22E1 28 44982
  4 5 6 3F22E1 E6 44982
  Done delay 45000
  Done delay 50000
  Done delay 55000
  Done delay 60000
  Done delay 65000
  Done delay 70000
  4 5 4 86E5D2 92 73504
  Done delay 75000
  4 3 5 8F02CE A4 75846
  Done delay 80000
  Done delay 85000
  Done delay 90000
  5 4 6 369A91 42 94740
  5 4 6 369A91 64 94740
  5 4 6 369A91 DC 94740
  Done delay 95000
  Done delay 100000
  done

I took the first strategy, 5 6 3 CB4129 5F 8039, with a RndVal1 iteration delay of 8039.

After testing that the strategy worked (by using cheats to set up the CPUs, then poking the random seed values in), I constructed the run.

I wait at the name screen to manipulate three cards. Preparing to roll the dice in hand (on my last move) is the fastest way to iterate RndVal1, but it also affects RndVal2, so I carefully set up RndVal2=5F (by entering and exiting the menu just before CPU rolls), then spend enough time to get RndVal1=CB4129. These values appear three frames after the movie ends, just before RAM(27) increments to 1.

I redid the run after learning of the "hurry" option for the CPU, and trying different cards allowed me to avoid bad delays (i.e. RndVal1 and RndVal2 were well-suited) so I didn't have to mess around while waiting.

Here is how the run goes:

  H: 1+1 to comm chest (grand opera). Gain $150. $1650
  H: 4+4 to just visiting.
  H: 1+5 to St. James (buy). $1470
  C1: 2+4 to Oriental (buy).
  C2: 1+3 to income tax.
  C3: 4+6 to just visiting.
  H: 1+1 to Tennessee (buy). $1290
  H: 2+2 to chance (back 3 to New York) (buy). $1090
  H: 2+1 to chance (advance to go). $1290.
  H: Buy 12 houses.
  C1: 5+5 to St. James, $750 rent.
  C1: 1+1 to Tennessee, bankrupt.
  C2: 6+6 to St. James, $750 rent.
  C2: 1+1 to Tennessee, bankrupt.
  C3: 3+3 to St. James, $750 rent.
  C3: 2+1 to New York, bankrupt.
I may consider cancelling my other submission (#1166, not the one I already cancelled), but I will wait and see.

Thanks to the Monopoly competitors for the strategy, thanks to adelikat for telling me about the "hurry" option, and thanks to everyone else who contributed ideas.


[1]: No longer disallowed if "grand opera" card is taken.


Cancelled. A better strategy awaits ... no longer. See submission #1199.


Similar submissions (by title and categories where applicable):