This submission improves
ShesChardcore's run by 228 frames, due to a route change and micro-optimizations.
Game objectives
- Emulator used: BizHawk 2.8.0
- best ending
To achieve the best ending, you have to earn $131,072 (0x20000 in hex).
For this purpose, you can consider various methods, and the fastest route is not so obvious. I used a slot machine (and a video poker to manipulate RNG).
RNG of this game is quite different from the one of
GB version.
RNG has a "RNG index" and a "RNG table".
Every time RNG generates a random number, it increments RNG index. And, RNG index is also incremented at each frame while you are staying at the casino hole.
And, every time RNG generates a random number, it "scrambles" RNG table.
Consequently, it is not so easy to manipulate RNG as GB version.
I read the game code, and wrote
a solver to achieve the best ending.
I found a 3-step solution which uses a video poker and a slot machine. According to my solver, it is a unique 3-step solution.
But I'm not sure whether it is fastest, due to losses for cursor movement. There are also many 4-step solutions, and some of them use only slot machines. (
example)
Here is a RAM map:
Address | Type | Description |
---|
$18 | u8 | PPU scroll x |
$19 | u8 | PPU scroll y |
$A7 | u8 | money ($100 units) |
$A8 | u8 | money ($25 units) |
$A9 | u8 | money ($10 units) |
$AA | u8 | money ($5 units) |
$AB | u8 | money ($1 units) |
$04EA | u8 | cursor x |
$04EB | u8 | cursor y |
$0531 | u8[5] | video poker: cards |
$0551 | u8 | RNG index |
$0621 | u24le | buffer for money/prize calculation |
$0664 | u8[4] | slot machine: final reel values |
$067A-$0773 | u8[250] | RNG table |
$077E | u8 | money ($25500 units) |
Here is a ROM bank #6 map (bank ID is 0-indexed):
Address | Description |
---|
$82F2 | slot machine routine |
$8E7F | roulette routine |
$95F6 | wheel of fortune routine |
$9C67 | blackjack routine |
$A657 | poker routine |
Here is a ROM bank #7 map:
Address | Description |
---|
$F922 | RNG routine |
By the way, you can
get a royal flush in the video poker, and the game says you can earn $400,000 by a royal flush.
But actually, the prize of video poker is treated as a unsigned 16bit value and it overflows (400000 mod 65536 = 6784):
feos: Claiming for judging.