TASVideos

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

Submission #4463: HHS's SNES Secret of Mana in 08:57.66

Console: Super NES
Game name: Secret of Mana
Game version: USA
ROM filename: Secret of Mana (U).smc
Branch:
Emulator: Snes9x 1.51
Movie length: 08:57.66
FrameCount: 32313
Re-record count: 1398
Author's real name:
Author's nickname: HHS
Submitter: HHS
Submitted at: 2014-10-19 01:13:00
Text last edited at: 2014-10-19 22:35:09
Text last edited by: HHS
Download: Download (1792 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:
A newly discovered dialogue glitch allows jumping to unrelated locations in the game script by activating a bogus dialogue prompt. This run jumps straight to the end and thereby beats the game soon after leaving Potos.

Game objectives

  • Emulator used: Snes9x 1.51 v7 svn225
  • Aims for fastest time
  • Abuses glitches
  • Manipulates luck

Comments

While playing the game on a console, a player named BJW recorded a video where the dialogue window went crazy after opening a 1000 GP chest in the fire palace. After staring long enough at the code, I was able to determine the cause.

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. In this run, I get a "barreled" status message before talking to the cannon man, as there are few ways to trigger messages in this room at this point in the game.

Route

Waterfall

Gained 25 frames by better stair walking and bush slashing.

Rabite forest

From here it goes downhill. I need to kill 10 rabites to get money for shopping in Potos, and the RNG is giving me a hard time. The awkward movements at the end are for manipulating spawns. It is still faster than selling the overalls, as the selling menu refuses to open when you do not have any equipment, if the item menu was opened last.

Mantis Ant

Again, the RNG is being stubborn, and no critical hits could be had in a reasonable time.

Potos

I get 50 GP from chest in Elder's house. I buy a candy, a herb and a cup of wishes at the store and execute the money glitch.

Neko's

I buy a barrel and a cup of wishes, and invoke the save menu. The cup of wishes is necessary since the item menu is messed up at this point.

Dyluck

After talking to the second soldier from the right, the cannon man starts charging money.

Cannon

Before entering the cannon room, I use the barrel. It is important to leave the menu open until it starts printing "Barrel", to load an usable text table pointer. After the message about being barreled disappears, I talk to the cannon man and the false prompt is activated. I then advance the pointer in increments of 2 (by choosing option 1) and 512 (by choosing option 256) until I get to C91096, which invokes the ending screen.

Useful RAM addresses

Address Description
7E00F4 Frame counter
7ECC48 Items
7ECC6A Money
7EE002 Position
7EE006 Speed
7E1873 Item selection
7E1D00 Text flags. Bit 7: Activates a prompt
7EA200 Current dialogue choice
7EA1D4 Number of dialogue choices
7EA1D5 Table pointer

Also useful was the script I wrote for displaying real time information about the game state, downloadable here: http://www.mediafire.com/download/hmlq9015op565a3/som.lua

Edit: An improvement was pointed out. I am therefore cancelling this and uploading a new one.


Similar submissions (by title and categories where applicable):