Now BisqBot is trying to find a way to perform the mountain warp trick at Simon's Quest (Dracula 2)...
For those who don't know what it is, it's the "Warp to Dracula's Castle" trick mentioned at
David Wonn's glitch page for Castlevania II.
Working by Walker Boh's instructions, the bot has tried about 14000 times so far, with these results:
- Failing to summon the whirlwind (~0.2%) (like
this)
(scene 4:1.81)
- Summoning the whirlwind, carried normally beside Bodley Mansion (~18%)
(scene 1:4.80)
- Summoning the whirlwind, getting hit by an enemy, ending up stuck inside a mountain (~81%)
(scene 4:1.80)
- Summoning the whirlwind, getting hit by an enemy, ending up in Ondol (a blue-tinted town with the same scene number as Bodley Mansion) (like
this) (~0.6%)
(scene 0:4.00) (*)
The algorithm he uses:
- Start on the upper stair beside the mountain
- Walk to a random X position on that stair (22-50 frames to the left)
- Sit down on a random frame (22-50 frames from start) and kneel for 256 frames (and at 1% chance, change the facing randomly while kneeling)
- Idle 10 frames (a little buffer while the whirlwind is coming to get Simon)
- Start pressing random combinations of right,left,A,down,B on each frame
- Wait until the scene changes or 580 frames has elapsed, and then read the game RAM to know where Simon is now
It has been tried with both 1 and 2 flying enemies. I think that having that two of them isn't an advantage.
Each attempt takes about 2-3 seconds to carry out (the emulator runs at maximum speed), so it does about 1200 of them in hour.
The scene numbers in this post correspond to the values of the RAM locations
0x30,
0x50 and
0x51 correspondingly. These values identify the current map.
The game uses them like this when it loads a new map (simplified assembly):
ldy $30; asl y; lda.w $8192,y ; sta.w $00
ldy $50; asl y; lda.w ($00),y ; sta.w $08
ldy $51; asl y; lda.w ($08),y ; sta.w $3D
The high bit of
0x51 tells which side the map is approached from.
The high bit of
0x50 tells whether to include zombies in the town (if town).
*) The graphics in the Ondol GIF image may look confusing, but it's only a side-effect of the GIF animation maker. The town does not really appear above the skies in the movie.
PS: David Wonn's page mentions that when the glitch is performed properly, the graphics are glitched. It's possible that BisqBot doesn't detect when this happens (we've never seen it happening, and thus can't tell BisqBot how to distinguish it), and ignores it as it thinks it's just another failure.
I've created a rule that helps BisqBot to detect when it ends up in Castlevania, but if the game doesn't acknowledge that fact (for the graphics are broken), it does not work...
It ignores scenes 4.80, 4.00, 1.80 and 1.81.