This movie completes Secret of Mana by using a dialogue glitch to reach the ending early.
Game objectives
- Emulator used: BizHawk 1.8.4
- Aims for fastest time
- Abuses glitches
- Manipulates luck
This movie takes advantage of a bug in the dialogue handling that was discovered by accident during a live streamed playthrough. Under certain conditions, the game will erroneously present a dialogue choice allowing the player to skip to unrelated parts of the game script, which is used to skip to the "The End" screen. This shaves more than 40 seconds from the previous
canceled submission.
Glitches used
Item selling glitch
If the selling menu is opened with the initial cursor position past the end of the menu, you can sell an empty inventory slot and get paid for a Griffin Helm. This is possible because the selling menu does not save the cursor position when leaving the menu. Therefore, at first a candy and a chocolate is bought. The inventory menu is brought up and the cursor moved to the chocolate. Both items are then sold. It is then necessary to open the shop menu to populate the menu with items. Then, the selling menu is opened again. The menu will always be rotated so that the initial selection comes first, and this procedure assumes that a menu contains at least one item. One therefore overflows into the old items from the shop menu. These item positions all correspond to empty slots in the inventory, with the invalid item code $1F, which sells for 29666 GP.
Preventing enemy spawns
By pausing movement for one frame just as an enemy is about to load, the enemy will not be loaded.
Dialogue option glitch
If a script is triggered on a specific frame following the disappearance of a status message from the screen, and the script displays the player's money before printing anything else, the game will instead give an invisible prompt using the last parameters. Entering the save menu will clear the number of options, allowing underflowing to option 256 by pressing left. After making a choice, both the jump table pointer and the script pointer will point to the selected entry in the jump table. Furthermore, if this location contains text rather than a script command, the game will continue giving invisible prompts. The table pointer is also used to point at the tables for printing names of enemies, equipment and spells.
Route
Summary of in-game frames per screen (menu frames and dialogue selection lag not counted):
Screen | New | Published | Frames gained |
---|
Waterfall | 3957 | 3982 | 25 |
Forest 1 | 1108 | 1139 | 31 |
Forest 2 | 537 | 541 | 4 |
Potos | 2955 | 2960 | 5 |
Mantis Ant | 2435 | 2445 | 10 |
Potos | 1983 | 1982 | -1 |
Elder | 1327 | 1327 | 0 |
Potos | 658 | 658 | 0 |
Road to Pandora | 726 | | |
Outside Neko | 169 | | |
Neko | 2127 | | |
Outside Neko | 184 | | |
Road to Pandora | 280 | | |
Dyluck | 369 | | |
Road to Pandora | 840 | | |
Cannon man | 788 | | |
Waterfall to Potos
The beginning is basically the same as the published movie, except that the first enemy is not killed. 74 frames were gained from more optimized stair movement and a better boss fight.
Neko
The item selling glitch is executed and the money is used to buy a barrel. Then the save menu is invoked, which clears the number of dialogue choices.
Dyluck
Talking to the second soldier from the right advances the part of the story that has to do with the Water Palace so that you no longer have a free ride in the cannon.
Cannon
A barrel is used before entering this screen, to arrange for a "A's barreled" message to come on screen. Also, making the selection prints the word "Barrel", which set the script table pointer to an usable value. After the message vanishes, talking to the cannon man triggers the dialogue glitch. A sequence of choices is made that ends up advancing the script to the command that invokes the ending screen.
RAM addresses:
Address | Description |
---|
7E00F4 | Frame counter |
7EE002 | Position |
7EE006 | Speed |
7ECC48 | Items |
7E1873 | Item cursor |
7E1D00 | Text related flags |
7EA200 | Current dialogue choice |
7EA1D4 | Number of dialogue choices |
7EA1D5 | Table pointer |
The following Lua script was used during the making of the movie. It displays information about characters, and predicts critical hits. It also automatically makes the correct dialogue choices to arrive at a given location in the script when executing the glitch.
http://www.mediafire.com/download/hmlq9015op565a3/som.lua
feos: Added the branch, judging...
feos: Accepting to Moons as a new branch.