Submission #3311: Touch-me's SNES Secret of Mana in 1:46:29.90

Super Nintendo Entertainment System
baseline
Snes9x 1.51 v7 svn147
383394
60
174046
Unknown
Secret of Mana (U).smc
Submitted by Touch-me on 10/1/2011 8:26:49 AM
Submission Comments
Secret of Mana TAS has finally come to TASViedos.
Secret of Mana is an ARPG published by Square. It is internationally regarded as the first one of Mana series, but Japanese title is “Seiken Densetsu 2” as the sequel of “Final Fantasy Adventure”. It utilizes real-time battles like many other ARPGs, but there are many features peculiar to this game, such as the “Ring Command” or multiplayer action. Thanks to them, this game has got much popularity all over the world. Playing this game, we find our spirit of adventure coming up to walk around the beautiful world or fight against evils, or even save the world.

Game Objectives

  • Genre: ARPG
  • Recorded on snes9x-1.51-rerecording-svn147
  • Allows Left+Right/Up+Down input
  • Aims for fastest time
  • Controls 3 players
  • Takes damage and uses death to save time
  • Abuses glitches
  • Uses glitched warps
  • Manipulates luck
  • Uses game restart sequences
Note: To play this movie correctly, you must play it right after you open SNEN9x 1.51 and read the ROM file (within about 70 frames may be good); otherwise it may cause a desynchronization around 60000th frame. (If it desynchs, you must re-open SNES9x and read the files.) Also you must enable Multitap and joypad #1, #2 and #3; otherwise it may deshynchronize at the final hit to Mana Beast.

Luck Manipulation

In this game, the RNG is usually used once per a frame. To manipulate critical hits, make some NPCs move away, or control some enemies’ actions, I can just wait for some frames. But some actions can increase the number of times the RNG is used in a frame.
  • Hit an enemy (100% attack): about 6-8 times the RNG is used
  • Hit an enemy (Combined): about 10-14 times
  • Hit an enemy (under 100%): about 2-4 times
  • Get hit by an enemy: about 6-8 times
  • Spawn an enemy: about 2-12 times
  • Enemy takes some actions: about 2-12 times
These are examples. I can utilize the useful random number faster by taking these actions.

General Glitches and tricks

There are many glitches and tricks I used to finish the game faster. I will try to explain the details. So I apologize for the long explanations. I’ll make a number to each glitch and trick to facilitate the reference.
Weapon Charge Glitch (*1)
Setting a non-controlling character’s charge action less than the current charge level, the character’s charge level surges and you can give fatal damage to enemies (but maximum 999 damage). I need no forged weapons or many experiences thanks to this glitch. Also, there’s another glitch that makes character’s charging time shorter. When a character is charging in level 1, change the character’s charge action to level 2, and the character becomes charged up to level 2. I usually use this glitch like this.
  1. Leave one character to AI (his charge action is set to level 1)
  2. When his charge level reaches 1, call the Ring Command and set his charge level to 2
  3. When I close the menu, the character has already charged to level 2 according to the mentioned glitch
  4. Again call the Ring Command to set his charge level to 1
  5. The weapon charge level gets glitched and surges 1 per a frame
  6. Give level 40 charge attack (for example) to give 999 damage!
As for the actual charge level, you can watch the Hero Boy’s charge inflation in RAM 0x7EE01B, and the Sprite’s is RAM 0x7EE41B.
Note: Damage calculation is executed like this.
ATK = (Attack point) * (Charge level + 2) / 2 (Maximum 999)
Damage = (ATK - (Enemy defense) ) * (Critical rate)
Normally the critical rate is 1. If the hit is critical, the critical rate is 2.
Item Selling Glitch (*2)
This glitch allows you to make money without economic efforts. In Secret of Mana, collected items are stored in 12bytes of RAMs: 1 item per 1 byte. There are 32 kinds of items and you can possess at most 7 items of the same kind (though usually limited by 4 items). In the memory, lower 5 bits indicates what kind of item you have, and upper 3 bits tells you how many items you have. For example, 0x40 means two candies and 0x20 is one candy, or 0x26 means one magic rope and 0x06 is zero magic ropes.
0xFF usually means blank. But if the cursor points the item 0xFF, you can sell it with 30000 GP. In fact, 0xFF calculates as if you have zero glitched item “BLAT”. When you sell it, the RAM number is subtracted by 0x20 then becomes 0xDF, which means 7 “BLATS”
You can access this memory like this way. If you have 2 candies 1 chocolates, 1 herbs, 1 ropes, and nothing else, and the cursor points the rope, then the 12bytes RAMs is like this. (Hexadecimal)
40 21 24 (26) FF FF FF FF FF FF FF FF
( ) means the cursor. Don’t move the cursor and sell chocolates and herbs. Then these RAMs become like below.
40 26 (FF) FF FF FF FF FF FF FF FF FF
The cursor moves once, but not more than twice. So you can select the blank item (zero “BLATs”). In this situation, the former 2 items are displayed as item icons. But the actual items are glitched. Described candy is actually a magic rope, and the described magic rope is zero BLATs, whose price is 30000 GP.
This glitched situation will be finished if you buy something or restart the game. But if you sell the blank to earn 30000 GP and get new item (like chocolate), then the RAMs becomes below and items remains glitched.
40 26 DF 21 FF FF FF FF FF FF FF FF
This is because if you get a new item, the nearest 0xFF is replaced by that item. Item 0xDF (7 BLATs) has no icons. So there are only three icons and new item cannot be selected because the cursor itself is not glitched anymore.
In the gameplay, I bought a chocolate to go through the situation that the Flammie Drum cannot be accessed. But if you want to recover the glitch completely, you must sell all the BLATs to blank and then restart the game or buy something new.
Going through the Walls (*3)
If you attack a rope pole when someone is casting a spell, a player temporarily gets able to run through all the obstacles. If this glitch happens, a player can just go straight until the glitch ends. But if you apply this with “Locking the Screen Trick” I will mention later, you can go through the walls to wherever you want to go in the screen. Usually, I give order to the Sprite to cast some spell and make the Boy attack the pole, and then let the Girl run around to gather all the members at another rope point.
Fadeout Glitch after the Boss Fight (*4)
When you beat a boss and land the event points at proper timing, the screen doesn’t white out. This glitch skips the “Way to go!” message and I can save around 150 frames. This glitch happens because the map tile causes a blank event and the event overwrites the game order to white out the screen.
Equipment Glitch (*5)
If you throw away an armor equipped with by someone, some glitched situation happens depending on the X position in the screen of the displayed trash. The changeable RAMs are 0x7ECC00 to 0x7ECCFF. I will list the changeable data from the left: characters’ name, head armors, body armors, arm armors, items, weapons, GP, and other useless data.
Certain RAM number decreases according to the character who discarded the armor.
The Boy: RAM whose number is 64-127 decreases its number by 64.
The Girl: RAM whose number is 128-191 decreases its number by 128.
The Sprite: RAM whose number is 192-254 decreases its number by 192.
First, the X position of the trash decides what data to refer (0x7ECC00 + X position). Then check whether the data number is true to the above-mentioned condition. If the condition is true, the RAM number decreases. If the condition is false, then refer to next RAM address and check whether true or not again and again.
You can change a character’s name with this glitch. If the name’s first character becomes glitched, then the player’s name will never be called again. This can save 1 frame every time the player is called, but I did not use this because this is not faster.
Also, you can take off certain armors or weapons. Even if you disarm a weapon of a character, the character’s current weapon does not change. So using this glitch, two characters can be equipped with the same weapon at the same time. I used this glitch once because I needed two players’ whips.
Save Data Corruption (*6)
Secret of Mana is so glitchy that even a usual player’s usual save action may cause a save data corruption. Land at the Ice Country Neko and save there, then a save data which has no information about where to start. Usually, this save data couldn’t be read. But if you use a soft reset (L+R+Start+Select) and read the data, you can start the game from where you reset. Abusing this glitch, I could skip the Ancient City under the Grand Palace.
Carry over Some Event to the Next Map (*7)
Use the Magic Rope and cause an event, then the map changes and the event happens at the next map. This can reduce fadeout lags by about 30. I didn’t use this glitch much though, because I didn’t know this until the movie is about to finish (at that time, my movie was 40000 frames left). I used this only at the Dark Palace.
Skipping Map Event (especially Barrier of Mana Fortress) (*8)
Attack a rope pole and call Flammie, then you can skip the first event that will happen at the landing maps. I utilize this glitch to skip the barrier event at the entrance of Mana Fortress. You can enter the fortress as usual and beat Dark Rich and Mana Beast to save the world, without any Mana powers.
R+B Trick (*9)
If you move pressing R+B, the character’s facing direction doesn’t change. Usually this trick is just for entertainment, but sometimes the calculated character’s size changes and he/she can avoid enemies more easily.
Tricks about 5 frames-rule (*10)
In Secret of Mana, many things are calculated every 5 frames. When attacking to enemies or obstacles, I must time the best frame to press B button. Because, when I press the B button, the character stops his/her movement right away, but the action will occur at the first frame in the next 5 frames-rule.
Tricks about 4 frames-rule (on the stairs) (*11)
When a character is on the stairs and you want him/her to move vertically, he/she moves for 4 frames and then stops for 4 frames. The horizontal movement is not limited though. So if the character can go through the stairs horizontally, that is faster than usual.
Locking the Screen Trick (*12)
When you want to sprint, you can control the direction to some extent. Normally, if a character sprints, he/she moves directly. But when he/she moves diagonally and finds a wall, he/she moves along the wall. In this game, the distance between 2 characters is limited. So if you set one character at the right position and let the other character sprint diagonally, the sprinting character moves as if there were a wall and goes along the invisible wall. You can control the sprinting direction this way.
Aerial Walk (Before Landing of the Cannon Travel) (*13)
Before landing of the cannon travel, characters who didn’t speak to the Travel Service can walk or even sprint in the air. The sprint/attack gauge doesn’t reduce when you keep pressing A button. Also you can control the bouncing direction by fixing the facing direction by above R+B trick.
Damage Combining Trick (*14)
When two characters attack an enemy at the same time, sometimes the damage made by them is combined. The amount is determined by simply addition. Killing an enemy this way, the fatal hit is regarded to be made by the rearer character (i.e. the Girl or the Sprite) and he/she gains more weapon experiences.
Double Hit of the Boomerang (*15)
Some kind of Boomerang charged attack has two chance to hit and can hit an enemy twice. This is also true to glitched charge attack, so Boomerang can deal really big damage! But glitched charge Boomerang has a significant problem that the Boomerang never flies, though it has very close attack range. In order to abuse these glitch and trick, I had to take many re-records because there is little possibility to make a double hit.
Weapon Charge Flag (*16)
Leave a character to NPC and when the character wanted to charge, the character’s weapon charge flag is set. If this flag is set, the character starts charging right after you leave him/her to NPC controlled. This can save many charging frames in the boss battle. You can watch this flag with memory 0x7EE085 (the Boy’s flag) and 0x7EE485 (the Sprite’s flag).
Reduce the Fadeout Lags under Certain Conditions (*17)
1. Use a Magic Rope and change maps, then the fadeout lags would decrease. 2. Call the Ring Command and change the character’s charge levels right before changing maps, then the fadeout lags get fewer than usual.
Shorten the Brute Force Screen’s and Characters’ Movement (*18)
Some events force the characters to gather and make the screen move. These moving times can be reduced by changing the characters’ position properly.
Consequently Sprinting (*19)
NPC controlled characters can sprint without consuming the attack/sprint gauge. Switching controlling characters properly, you can sprint consequently in the large field.
Attack Gauge Trick (*20)
If a character gives a certain attack (like a sword’s thrust) and takes an enemy’s hit at the same time, the character’s attack/sprint gauge never decreases. It means you can give many thrusts consequently. But if you could not avoid the enemy’s attack, it would cost more frames. So you must manipulate to avoid the enemy’s hits.
Climbing the Slope (*21)
Attack toward the Slope with the Glove, then the character slightly climbs the slope which player characters usually cannot climb, only to fall. You can climb the slope all if you repeatedly make punches.

Lag Reduction

Lags would increase under these conditions, for example.
  1. Many NPCs are moving
  2. An enemy appears
  3. Player characters are walking
  4. Everyone is stopping (with no load)
To reduce these lags..
  1. Set some player characters to NPC controlled. This solution is really useful in many towns where many people are outside.
  2. If a certain character stops or changes the direction for 1 frame, sometimes enemies stop to appear. Then sometimes these lags can be reduced.
  3. Make a character stop or change the direction for 1 frame, like above. Then sometimes the lag will fade out.
  4. Give up. ..Or move around randomly. Sometimes the lag will disappear.

Experience and Shopping Planning

Experience Points
In fact, I don’t need much experience points, because the glitched charge attack is very powerful. However, the basic power affects the damage calculation formula. So there is no need to limit the characters’ level. The amount of experience points many bosses gave are enough to run through this game.
Weapon Experiences
To abuse the glitched charge attack, weapon levels must be at least 2. So, I have to earn enough weapon experiences at the beginning. Rabite, Lullabud, and Chobin Hood are killed with one (critical) hit. Buzz Bee can be killed with one combined critical hit. I manipulated many times to give critical hits to these enemies. Until the Spikey Tiger, the Boy’s sword level must be 2. And until the Boreal Face, the Sprite’s Boomerang level should be 2.
Shopping
Basically, there’s no need to buy some items, armors or forge weapons. Exceptionally, to level up the Sprite’s Boomerang, I need to forge Boomerang at least once. What’s more, to finish this game, I need about 100 GP at the Village of Dwarf (to forge the sword). I use the Item Selling Glitch to earn 100 GP quickly. Accompanying this, there is extra 29000 GP left. So I bought two Power Wrists to enhance the Boy’s and the Sprite’s power by 5. The Boy’s power is useful at the next battle against Tropicallo. Also, to kill Chobin Hoods at one hit, Power Wrist is needed. The Sprite’s Wrist is needed to enhance the glitched charge Boomerang.

Route to the Ending

I will mention the points I mainly want to feature. Of course there are many other devices and planning to finish the game faster. They may be understood by watching the run again and again. Sometimes I compared with my previous Japanese TAS uploaded on Nikovideo, which was very useful.
Intro to Potos Village
  • Weird movement (*9)
  • Utilized some frames-rule optimizations (*10,*11).
  • Killed one Rabite with luck manipulation. Weapon experiences are necessary to abuse the Weapon Charge glitch (*1).
  • In Mantis Ant battle, used the attack gauge trick (*20) and manipulated critical hits.
Water Palace to Village of the Dwarfs
  • Killed many enemies with critical hits.
  • Used Cannon Travel to go to Gaia’s Navel.
  • Got the Magic Rope which is necessary to finish the game quickly.
  • Item Selling glitch (*2) to make enough money to finish the game.
  • Bought two power wrist to enhance the Boy’s and the Sprite’s power by 5.
  • In Tropicallo battle, manipulated critical hits by attacking Bramblers.
Gaia’s Navel to Elinee’s Castle
  • Controls two players.
  • Killed some enemies with Damage Combining trick (*14) and many manipulations.
  • Killed Werewolves quickly and reduce the screen movement (*18).
  • Controls three players.
  • Killed some enemies with many and many manipulations to earn enough weapon experiences (sword level became 2)
  • Killed Spikey Tiger with the Weapon Charge glitch (*1).
  • Fadeout Glitch after Spikey Tiger (*4) to skip the message.
Water Palace again to the Underground Palace
  • Tonpole never grew into Lizard (He grows when his HP is under 300. So I quickly give much damage.)
  • Used the Cannon Travel and Aerial Walk (*13)
  • Used Locking the Screen Trick (*12) (I used this many times from this point).
  • Killed Fire Gigas quickly with the Weapon Charge glitch (*1) and critical manipulation.
  • Forged the Boomerang to level up the Sprite’s Boomerang.
Pandora to Water Palace again
  • Walked to Pandora without using Cannon travel.
  • Killed some enemies to level up the Sprite’s Boomerang.
  • In Pandora, set some characters to NPC to reduce lags.
  • Wall Face was just a wall. Used Damage Combining trick (*14) to give more weapon experiences to the Sprite (The fatal hit was regarded to be made by the Sprite.).
  • Walked to Gaia’s Navel is faster.
The 4-season Forest to Matango Caves
  • Killed 3 Pebblers with one glitched charge sword.
  • Spring Beak guards against the front attack. So I attacked him from his back.
  • In Matango, set some characters to NPC to reduce lags.
  • Abused Going through the Walls (*3) twice to save time.
Kakkara Desert the Fire Palace
  • Went to Kakkara first. This route is about 1000 frames faster.
  • Manipulated the NPCs’ movement at the Sand ship.
  • In Mech Rider battle, weapon experiences increases (don’t know why but I knew the fact). So the Sprite’s Boomerang level became 2.
  • Kill Boreal Face with the Weapon Charge Glitch and Double Hit of the Boomerang (*15), with some spells to stop the enemy.
  • In Ice Palace, went through the Walls (*3) again to save 500 frames.
  • In Fire Palace, climed the Slope (*21) to save 300 frames.
  • Went through the Walls (*3) again to save 800 frames.
  • Killed Minotaur with the Boomerang and many manipulations. Weapon swings which seem useless are really useful to kill him quickly.
Southtown to Get the Flammie Drum
  • Reduced lags to set characters to NPC.
  • Ignored the Sewer guard by going through the trees’ shade.
  • There are many stairs in the Sewers. So I had to optimize the movement (*11).
  • In Northtown Ruins Killed two bosses with Glitched Charge attack. They are torelant of the Glitched Boomerang Double Hit.
  • In the Emperor’s Tower, get the Flammie Drum (actually, Flammie Chocolate (*2)).
Gather 3 Elements
  • Light, Moon, Tasnica, and Dark. No need to meet Jehk.
  • Optimized where to land on from Flammie.
  • Abused Equipment Glitch (*5) to let two characters equipped with the whip.
  • At the Dark Palace, went through the Walls. Two characters’ whips were useful at this point.
  • Used Magic Rope and carried over the Dark Seed event to the next map (*7) to save about 30 frames.
Cave of Courage to the Grand Palace
  • Three Shadows disappear when player characters die. The Girl cast Cure Water to revive the HP0 character. To die quickly, took Combined Damages (*14).
  • Made a corrupted save data (*6).
  • After defeating Aegagropilon, made another corrupted save data (*6).
  • Used a soft reset at the Underground City and read the former data. Then the Continent was sunken and skipped the Underground City fully.
  • Went through the walls some times, then again used soft reset and read the latter data to make the story correct.
Mana Fortress
  • Went to the Lofty Mountain Path and attacked a rope pole, then used Flammie Drum. Then I could skip the barrier at the entrance of Mana Fortress.
  • Went through walls with Weapon Charge glitch (Using this glitch, I could attack a distant rope pole.)
  • Beat Mana Beast with Weapon Charge glitch and Moon Energy spell which makes a critical hit by far much easier. I manipulated much to give always critical hit and 999 damage.
  • I determined the last frame so as to beat Mana Beast and see “The End” as fast as possible, not to end any inputs quickly.

Usefull RAMs

7E0389 - Damage amount to one character
7EE002 - x position of the Boy (the Girl’s is 7EE202, the Sprite’s is 7EE402)
7EE004 - y position of the Boy (the Girl’s is 7EE204, the Sprite’s is 7EE404)
7EE01B - The Boy’s current charge level (the Sprite’s is 7EE41B)
7EE085 - The Boy’s weapon charge flag (the Sprite’s is 7EE485)
7EE782 (2byte) - Current HP of Enemy 1 (Enemy 2 is 7EE982, Enemy 3 is 7EEB82)

Thanks

  • HHS: He posted some good information by disassembling and a useful lua script on the TASVideos forum. I used his script mainly to understand what event was happening.
  • Hotarubi(蛍火): A Japanese speedrunner who is famous for the speedrun of Super Metroid. He also plays Secret of Mana speedrun. His speedrun was very neat and I could follow some routes he took to save many frames. What is more, he found how to utilize the Save Corruption Glitch.
  • Cheap: A Japanese superplayer of many games, including Secret of Mana. His analysis of some glitches was quite good. Also, his low level clear report was very suggestive to me. (To my surprise, he finished this game on level 5, 1, and 1!)
  • Pirohiko(ピロ彦): He is one of the great Japanese TASers. He gave me a decent lua script to facilitate multi-input. I used it almost all the part of this run.
  • Elsa: He told me the Pure Land skip on my weblog. It saved more than 40000 frames!
  • CJ: He is an administrator of the Japanese website about Mana series. His website gave me a lot of information on some glitches and tricks.
And I would like to tell my gratefulness to everyone on the Secret of Mana forum. Their long-period discussion led me to enhance the quality of my speedrun.
Including my previous testrun, it took about a year to finish this speedrun. I am really glad that I could finish the run which many people had wanted to watch. I hope everyone who watched this movie will have a feeling of satisfaction, including me. Enjoy the run!
Youtube Links: part1, part2, part3, part4, part5, part6, part7, part8. I made some explanations, but my English was so bad that many lags became "rags". However, I'd be pleased if you enjoy this video!

DarkKobold: Judging!

DarkKobold: Replaced submission with a 1 frame longer movie, to avoid desyncs.

DarkKobold: Happily Accepting.

OmnipotentEntity: I'm encoding this, it might take awhile because I'm trying out some new things.
Last Edited by Ilari on 12/7/2011 5:06 PM
Page History Latest diff List referrers