Submission #9864: Lil_Gecko's PSX Final Fantasy IX in 7:56:04.25

Sony PlayStation
baseline
(Submitted: Final Fantasy IX (USA) (Disc 1) (v1.1).bin USA v1.1)
Bizhawk 2.8.0
1712143
59.94006013870239
32282
PowerOn
ce58f1f7
TAS Timing
Syncs with the  SCPH1001 BIOS.
			
Submitted by Lil_Gecko on 8/16/2025 8:00 PM
Submission Comments
This TAS has been done mostly on Bizhawk 2.8 but should sync on the latest version of Bizhawk.
It is the any% category of Final Fantasy IX
This is an improvement of 8003 frames over the published run. There's a lot of small improvements here and there and overall better optimization.
Like every PSX TASes, I must start by saying that Bizhawk emulates PS1 loading speed. It cannot be compared with runs done on a PS2 with Fast Disc Speed.

A few interesting addresses :
0x9010 : PRNG (4 bytes, hexa), used for Tetra Master amongst other things.
0x108F74 : Trance bar Character 1 (1 byte)
0x108F28 : ATB Character 1 (2 bytes)
0x108FF8 : ATB Character 2 (2 bytes)
0x1090C8 : ATB Character 3 (2 bytes)
0x109198 : ATB Character 4 (2 bytes)
0x109268 : ATB Enemy 1 (2 bytes)
0x109338 : ATB Enemy 2 (2 bytes)
0x109408 : ATB Enemy 3 (2 bytes)
0x1094D8 : ATB Enemy 4 (2 bytes)
0x109264 : HP Enemy 1 (2 bytes)
0x7B720 : RNG Pointer (4 bytes, hexa)
0x7B724
to
0x7B92F : RNG Table
0x7AE10 : Last Target (1 byte)
0x7AE4C : Distance variable (2 bytes, signed)
0x7AE50 : Danger Value (2 bytes)
0x7954F : Danger Value of the Screen (1 byte)
0xCF4B0 : Ragtimer countdown (2 bytes) Ragtimer can only appear if it's above 400.

Right off the bat, we need to talk about RNG.
RNG
The game uses a pointer, which is a 4 bytes, hexadecimal value that will look like something like this : "8007B725"
If RNG is called at that moment the game will look up the value and go to this address. It will then use the value at this address, and the few following values as random numbers.
The frame on which we press New Game as well as what buttons we keep pressed determine which random numbers will fill the RNG table.
At the beginning of the game, the pointer starts at 0x8007B724, goes through it as it uses it, and when it reaches past 0x8007B92D, it goes back to 0x8007B725 of the table and numbers are shuffled.
How the game shuffle the numbers is, it takes the first 32 (0x7B724 to 0x7B743) and xor them with the 32 from (0x7B90D to 0x7B92C), then it takes the 492 following (0x7B744 to 0x7B92F) and xor them with the new 492 first (0x7B724 to 0x7B90F).
Movement
The Distance variable starts at -1440 when entering a field, world map or after a battle. It increases as we move by about 60 when we are running and 30 when we are walking (on fields).
But those numbers can very much vary, depending on terrain, if we are bumping into a wall and, (and this is important) how far the analog stick is pushed. It is possible to manipulate the increase by not pushing the stick entirely.
While the Distance variable is not useful on non hostile fields, it plays a part on how encounter checks work when the field is, hostile.
On those, no check happens while the value increases until 0. Then it goes from 0 to 960, and once it goes over 960, it resets to 0, Danger increases and an encounter check happens.
The exception is when you go over 960 on the last frame of the screen. Then it simply goes over 960 and no check happens. Some screens with very tight movement can use this to skip a check.
This is where the analog stick is important. Let's say that because of the terrain, your distance value is at 901. A full running step would make it 961 and trigger an encounter check that would be a battle for example. Well you can push the analog stick almost all the way but not exactly so the distance only increases by 59, which would make the distance value 960, so no encounter check on this frame, but on the next one.
Which can be a no encounter one. This makes it possible to not lose distance but delay encounter checks.
On World Map though, a step is around 112 but still can vary depending on terrain. The analog method doesn't work there, though for a step to be registerd the button needs to be pressed for 2 consecutive frames.
This is why perfect stutter-step doesn't trigger battles as the distance variable never increases.
It is also interesting to note, that the Distance variable doesn't increase while the name of the continent is displayed and until roughly a second and a half after.
Random Encounters
Pretty simple, when an encounter check happens, the game takes the current Danger value and divides it by 8. If the current RNG is lower than this, it triggers a battle.
RN here being a 1 byte value, the maximum it can be is then 255. Which means the maximum the Danger value can be before it's an automatic battle is 2047.
Stealing
There is 2 important steps to stealing an item.
First, the stealing must be successful. Without Bandit equiped :
It takes the current random number and multiplies it by 257. Let's call it current value.
If current value modulo (Level + Spirit) >= current value modulo (Enemy level) the steal is successful
Then it checks for the items from rarest to most common:
Random Number 1 : RN =0 => If there is an item there you steal it, otherwise, the steal fails. If RN > 0 then it checks Random Number 2
Random Number 2 : RN<16 => If there is an item there you steal it, otherwise, the steal fails. If RN > 16 then it checks Random Number 3
Random Number 3 : RN<64 => If there is an item there you steal it, otherwise, the steal fails. If RN > 64 then you steal the most common.
So even if there is an item in the most common slot and the first step was successful, it is possible to steal nothing by satisfying the condition of a rarer slot where there's no item.
For example, you can get the very rare first try "Couldn't steal anything" on the Masked Man by having Random Number 1 = 0.
Critical Hits
Like for stealing it takes the random number and multiplies it by 257. Let's call it current value.
if current value Modulo ( (Spirit / 4) rounded down) > current value Modulo 100, the attack will critical.
Because the same random number is used in both part of the formula, some values of Spirit make it impossible to do critical.
It also makes it that higher spirit doesn't mean higher chance to critical.
For reference :
With a spirit between 16 and 23, no critical possible.
With a spirit between 24 and 27, odds are 6/256
With a spirit between 28 and 31, odds are 9/256
With a spirit between 32 and 35, odds are 4/256.
It is important to understand that due to how slow the pointer is moving in battles, getting several critical hits isn't as easy or as fast as in some other games where rng updates constantly.
Trance Bar
The trance bar fills up from 0 to 255. When it reaches 255, you trance.
Every time the enemy attacks you, your trance bar increases by (RN*257) modulo Spirit.
Enemy List of Attacks
Most enemies have a set list of attack they can perform composed of between 2 and 8 possible moves. It is possible to have several copies of the same attack in the list. While it's the same attack, they are considered as different moves.
At the beginning of the fight, the list is randomly rearranged.
Let's take the Masked Man as an example.
His attacklist = [ Get some! ; Gwahaha! ; Oww! ]
So "Get some!" has a value of 0, "Gwahaha!" is 1 and "Oww!" is 2.
So when the fight begins it can be arranged [0;1;2], [0;2;1], [1;0;2], [1;2;0], [2;0;1] or [2;1;0]
Let's say it's [0;1;2].
When his ATB becomes full, the first attack 0 (Get some!) is queued, and is put back at the bottom of the list. Then it has a 50% chance to move up one rank. And 50% to move up one rank. And so on until it reaches the top of the list, where it's another 50% to go back at the bottom.
So the list has 62,5% chance to become [1;2;0], 25% chance to become [1;0;2], 12,5% to stay [0;1;2].
So there is basically a 1/2^n of doing the same move twice in a row in a list of n moves.
ATB and Starting ATB
The length of a character's ATB is : (60 - Speed)*160.
So at the start of the game for example, Zidane has an ATB length of (60-23)*160 = 5920.
At the fastest speed, every tick increments the gauge by 14. So there it would take 423 frames to fill it from 0.
How full an ATB is at the start of a fight is determined by (RN*257) modulo ATB length.
Because characters may have different speed and thus different ATB length, the same random number can give an almost full ATB to one character but an almost empty to another.
So it may sometimes be beneficial to change the order of the party.
ATB Wait Tricking
When a character is faster than an enemy, we can input his attack while the enemy is doing its move and hold time with another character while ours is attacking.
This will freeze the enemy's ATB close to 0, while waiting for ours to empty. Once our move is done, we release time, and because we're faster, we can act twice in a row.
About the run
We're not going immediately to the menu to put everything on fastest. Because text boxes will take the same amount of time to close and we're manipulating ATB to start close to full, it is faster to wait that we have to go in the menu later to do everything at the same time.
Renaming characters makes a really minimal difference. It can save time if their name appears in unskippable text, but it's a couple frames at best.
Against the Masked Man, we steal the Mage Masher which is a 1/16 chance and will considerably improve Zidane's damage, then suicide the party as it's faster than reducing the enemy's HP to 0.
Pressing L1+R1 to run while we're readying a move, skip the little animation and saves time every time we do it when the moves needs to go immediately.
When controlling Vivi, we perform the Puck Skip. By talking to the NPC at the same time we get hit, we can keep control and exit the screen. If we were to come back, though Puck would still be there trying to hit us.
Against King Leo, we want to avoid the use of magic by the enemies. The fight ends when King Leo's HP are down to 0, so we focus on him and kill the other just so he doesn't use magic. It's unfortunately not possible to do criticals yet.
A perfect sword play rewards us with 10 000 Gil.
Now that we have to equip the Mage Masher, we go into the menu, put everything on fastest, and use blue for good luck :)
Steiner 1 starts the battle one frame away from full. If the game were to use 23 as a random number for Zidane's ATB he would start at (23*257)=5911 and would also be one frame away from full and could outspeed Steiner.
Unfortunately there was no 23 nearby.
We steal a Silk Shirt to reduce damages done later and wait trick so Zidane attack twice.
Steiner 3 and Bomb skip : It is basically ATB wait tricking for the Bomb to Grow before Steiner last turn. Saved about 3 seconds.
EVIL FOREST
First hostile field.
Prison Cage 1 : We first start by defending with Zidane. The goal is to empty the trance bar as fast as possible so we can start filling it up again as trance will save time later.
Little manipulation so Left Stem give us a nice Trance increase (22/255) and again to do enough damages to finish the fight.
Prison Cage 2 : Stealing the Leather Wrist (RN3 < 64) as it will provide a +1 spirit to Zidane so he can start doing critical hits.
We put Vivi's ATB on Wait, so Prison Cage can do Right Stem before Vivi's Fire. It is a little manipulation so Left Stem does good trance increase to Zidane (41/255).
We then equip the Leather Wrist and Silk Shirt on Zidane. He now has a spirit of 24, so 6/256 chance of critical per attack.
When on the field, and we need the RNG pointer to go further away than it is, it is possible to slightly improve its speed. Usually, moving makes it go faster than standing still. Stutter-steping makes it go faster than moving.
Because stutter-steping makes you go less far than just running, it is beneficial to do it on screens where the RNG pointer moves the fastest already as we spend more time there.
Baku goes down really fast with a regular attack and a critical hit. Perfect increase of the trance gauge (64/255).
We heal Zidane fully so he survives Vivi's attack on the next fight.
Plant Brain : By attacking Zidane with Vivi, we push the fight in the second phase immediately. Having Zidane in critical hp or dead is the fastest way to do it.
Because we didn't kill, Zidane he can attack in the second phase which is way faster than using Vivi's Fire.
Overall with the time it took to heal first it saves about 2 seconds.
We heal again and get ready for the Plant Spider fight.
The goal is to use the Plant Spiders to fill Zidane's trance gauge so he's 3 hits away from full.
Because I better understand now how the list of attacks works, I was able to completely avoid the use of Thunder by the enemies.
Killing Vivi and Steiner move the RNG Pointer further by calling for randomness and also provide less target choices for the enemies as we only want them to target Zidane.
We end the fight with the trance gauge at 197/255.
ICE CAVERN
As we enter the Ice Cavern, we can see a sequence where Zidane moves his head from left to right back and forth. This is an example of the rng playing a part in how every game moment can go more or less fast depending on it. This is gonna happen very often. I'm not gonna mention any of the small ones, but just know there are a lot.
The white smokes trigger an encounter if we touch them. So, manipulating them away to take the shorter path.
Black Waltz 1 and Sealion : This is the fight we build the trance gauge for. It is way faster to trance than going the regular way, even with all the trance building.
Sealion is always gonna have first turn, no matter what. But we can be faster than BW1. So they both increase our trance while we steal the Mythril Dagger. It will once again do more damages in the upcoming fights.
The attack list of Sealion is manipulated to get 3 Wings instead of magic.
DALI
I, initially forgot to rename Dagger and TASed up to Dali's Shop. I went back and renamed her D but that somehow gave me worst RNG in the head turning sequence. So she stays as Dagger.
We need to visit 3 locations to make Dagger appear in the shop. But we can do the pub twice and it still works.
How fast Dagger and Zidane moves their head in the shop is based on RNG. This is unfortunately 40 frames away from perfect as we cannot manipulate rng between head turns.
We buy 2 Mage Masher to synth The Ogre, an Iron Sword for Steiner, 2 Feather Hat (1 for Dagger, 1 for Yellow Scarf) and 3 Leather Wrist (2 will be used for Glass Buckle, the 3rd one will be lost on optimizing Dagger, it's just so we don't have to lose time unequiping it).
We equip Zidane with the Mythril Dagger. Vivi and Zidane go to front row. Zidane to deal more damages, Vivi to receive more damages.
We can skip a small sliding animation by stopping right on the trigger. We also make Zidane face left ourselves. This is something that also happens a lot. When the game must turn the character in one direction, it is often faster to do it ourselves before losing control. Climbing down ladders is another example of this.
The rng pointer goes slower and slower as we pick up treasures. In this instance with Steiner, we pick up the bottom chest first, to slow down the pointer earlier.
We wait for Morrid to cross the trigger line before entering his house or it would take forever for him to show up.
We equip the Iron Sword and Bird Killer. Killer abilities do 150% damages on the correct type of enemies.
Choosing to observe the barrel is faster.
Black Waltz 2 : There we have a random number of 23 for Zidane ! So he can be one frame away from full and outspeed the enemy.
But not only that, there is also a number that makes critical hits nearby... and Black Waltz 2 targeting Vivi... It's just beautiful :)
When going under 515 HP, BW2 counters with Fira. Unless his current target is dead. Which was Vivi... who is dead. So Fira skip.
Dagger attacks to advance the pointer and Zidane steals a Steepled Hat so we don't have to go shopping specifically to buy one. Zidane can finish the fight with another critical.
We have to wait a bit before selecting "Depart Now" or the game would softlock.
The scene with Vivi trying to talk to the Black Mage is one where one can lost quite some time due to bad rng. Ideally he only tries to talk once, lift his head up and start walking towards us. It's not intuitive, but if Vivi runs it is overall slower because he actually tries to talk a second time.
Black Waltz 3 : BW3 starts with full ATB but it's used to put Vivi in trance, it then resets. On its "second" turn, it cannot target Vivi, so by manipulating Vivi as the target we effectively skip one of its turn.
Steiner's Sword Magic and Vivi black Magic don't trigger a counter from BW3, but Zidane attack does. BW3 counters by taking off, but when it does, its currently queued attack is cancelled and it chooses a new one once in the sky, effectively going back at the bottom of the queue.
Due to this, he won't have a chance to attack. Vivi killing on his 3rd magic, won't detrance either.
LINDBLUM
Not much happening in Lindblum, we synthesize The Ogre and a Yellow Scarf.
We need the Coral Ring reward from the Festival of the Hunt, which happens to be the fastest way to finish it as well.
The banquet scene also has decent RNG variation.
WORLD MAP
Leaving Lindblum, we can go to Chocobo Forest to activate the flag that let us call Choco. However doing so takes about 66 seconds on Bizhawk.
Unfortunately, even with using the Cliff Fall glitch later and without taking the time to pick up Gysahl Greens into account, we would never make up that much time.
Getting Quina in Disc 1 though is also slower as Limit Glove has a pretty long animation and we can use critical hits a lot, so it doesn't save enough.
So on to Gizamaluke's Grotto by foot.
GIZAMALUKE'S GROTTO
We equip The Ogre and Yellow Scarf + Bird Killer on Zidane and the Coral Ring + Man Eater on Freya (and she's put in front row).
With this configuration, Zidane can kill a Type A in one-shot with a high roll or a critical and Freya can with a Critical. This avoids having to wait for two turns from Zidane.
We skip the second fight and go back to pick up the bell.
Gizamaluke doesn't use an attack list, it's 50/50 whether it'll use Water or Crash. Because the tent silenced it and we manipulate Water each time, he effectively skips every turn. The crash it uses are counter to the critical, but they lose very little time.
Vivi seemingly random attacks are calls for randomness so the pointer moves faster to set up for criticals.
SOUTH GATE
In South Gate we pick up the Multina Racket for more damages by Dagger. We choose "Don't kill" and talk to Mary from the right so we avoid a little animation.
How much time Dagger takes before getting out of the bag is rng and can cost quite some time as well.
In the cab, thanks to analog movement it is possible to put Dagger facing the perfect direction before losing control.
BURMECIA
Burmecia : Same deal with the Type A. Critical or high roll from Zidane, Critical from Freya.
We can now transfer the Coral Ring from Freya to Zidane + Man Eater and Beast Killer (and remove the Feather Hat which was optimized so it'll go on Dagger)
Beatrix 1 : We steal the Mythril Sword. We have roughly 80% to have a succesfull steal and 1/256 odds to steal this one. So about 0.3% chance :)
Shock was manipulated to not happen, and we still do seemingly random attacks to set up critical as fast as possible.
END OF DISC 1
It is actually half a second faster overall to enter the hall of Summit Station by the bottom. While taking longer first, we save more time in the next cutscene because we regain control earlier.
We buy 2 Mythril Gloves (for Man Eater), a Headgear (Undead Killer), a Barbut (+2 spirit) and an Iron Helm (Level Up).
We equip the Mythril Sword (better damages), Barbut (so he can crit) and the Mythril Gloves + Man Eater on Steiner, and Multina Racket, Feather Hat and Yellow Scarf to increase Dagger's damages.
Black Waltz 3-2 : Because we stole the Mythril Sword, 2 Critical from Steiner make the fight very quick.
Marcus defend to take less damages from the hit (a Miss wouldn't bump the pointer enough ahead as it doesn't have randomness for damages). He will be automatically healed later, unlike Steiner.
TRENO
We watched the ATE to pick up the Power Belt. Even if it takes a lot of time, it is definitely worth it.
Letting Dagger be pickpocketed saves around 40 frames for an extra 500 Gil.
We sell a couple Ether for cash and buy the Ice Staff (Blizzara), 2 Glass Armlet (synth into Glass Buckle), a Bone Wrist (+1 Strength), a Magus Hat (boost Blizzara), a Chain Plate (Devil Killer) and 3 Chain Mail (Bird Killer + Synth into Power Belt).
GARGAN ROO
Equiping Steiner with Chain Mail and Power Belt + MP Attack (Does 150% damages for the cost of a few MP).
2 Critical from Steiner and a boosted attack from Dagger make quick work of Ralvurahva.
On the text "Oh Dagger ! Where could you be !?", having her named D would have saved a few frames.
CLEYRA'S TRUNK
Picked up the Magician Shoes (+2 Magic).
In the quicksand field, the rng at the entrance determines if you'll go clockwise or counter-clockwise. (I believe it's whether RN is over or under 128).
We equip Vivi with the Ice Staff, Magus Hat and Magician Shoes to boost his Blizzara magic.
CLEYRA
We buy the Partisan for Freya (more damages).
Antlion : 3 Blizzara + 1 attack from Zidane will kill. After using Sandstorm, Antlion skips its next turn, so even with less speed Vivi can get 2 Blizzara in a row. Zidane's attack has to be timed as Antlion will counter 2/3 of the time.
With Dagger, choosing to not believe Brahne is slightly faster (roughly half a second).
CLEYRA UNDER ATTACK
We equip Zidane with Headgear, Bone Wrist and Chain Plate. Freya got the Partisan, Iron Helm, Mythril Gloves and Chain Mail + Man Eater and Level Up.
The idea is for Zidane and Freya to have a range of damages, where they can either make the Soldiers flee or kill them depending on what we want.
Soldier will escape if they go below 1/10 of their max HP. In a fight against 2 Soldiers, making them escape skips the reward screen and saves around 2.5 seconds. However we don't get experience, AP or Gil.
So we do it a couple of times before starting killing again.
On the fight against 3 Soldiers, one will have a turn, so we use him to kill Vivi after he bumped the pointer. This will give more experience to Zidane and Freya as we don't need Vivi to level up anymore.
We revive Vivi and heal Zidane before fighting Beatrix 2.
Beatrix 2 : We steal the Ice Brand (1/16 item, around 79% chance of succesfull stealing) as it is faster than picking it up in Alexandria Castle. Her attack list was manipulated so she does Quick Attacks and a Thunder Slash to not kill. Otherwise, we manipulate critical hits as usual.
ALEXANDRIA CASTLE
RNG was manipulated so we can dodge the guards as fast as possible.
Before jumping on the rotating platform, we have time to kill so we keep running to make the pointer go faster and set it up at no cost for the next fight.
We give Steiner the Ice Brand and exchange the Chain Mail as we'll need it for synthesis.
Against Zorn and Thorn, only one has to reach 0HP, so we target the weakest. We use again, the one frame away from full trick to outspeed them (otherwise there is a few seconds delay before we can attack). However since we had to delay for a critical it only saves one second.
Running again while waiting to put the pointer further.
Beatrix 3 is manipulated to only do a Quick Attack. Vivi focuses to give Steiner time to refill his ATB. Otherwise Beatrix would get two turns.
Thanks to the level up ability, Freya is now level 12 instead of 11, so Beatrix joins the party at level 12 as well. Which will be important later.
Beatrix and Zidane can one-shot Bandersnatches with a Critical hit. Steiner can even without.
Against the 3 Type C, Zidane can one-shot with his highest roll. One of them is used to take out Dagger so we can spread the experience on the others only. Vivi has to stay alive, we'll need him in a few.
Against Ralvuimago, Blizzaras will do the trick with an extra attack from Zidane. We steal an Adaman Vest for Bird Killer. We could steal an Oak Staff instead as it will save a small amount of time against Hilgigars, but the time to take it and equip it makes it not really worth it.
LINDBLUM
Pinnacle Rock is uneventful, so in Lindblum we synthesize an Exploda (Lucky Seven) and 2 Power Belts.
QU'S MARSH
How fast the frog jumps towards us and the whole dialog sequence with Quina is rng heavy. It was manipulated to be as fast as possible.
We equip Zidane with the Exploda, Adaman Vest and Power Belt + MP Attack, Bird Killer, Undead Killer and Counter and we remove Beast Killer.
FOSSIL ROO
By running towards the enemy at the end of the sequence and coming back we can make it start spinning early. RTA can achieve pretty much the same result by keeping down+right pressed on the last screen. TAS is only 6 frames faster here.
We use Lucky Seven against Lani. It can do 7, 77, 777 or 7777 damages if Zidane's HP ends in 7. 1 Otherwise. If it ends with 7 then a simple modulo 4 is done to choose the output so they have equal chances. (=0 -> 7 / =1 -> 77 / =2 -> 777 / =3 -> 7777)
Lani also starts one frame away from full so it is possible to attack first if we are also, however this only works for attacks. Because we have to move the cursor to skill, we need more frames.
WORLD MAP
On long run accros the WM like this one, we have to be careful. If the Ragtimer countdown is above 400 and we cross a forest, we can trigger a Ragtimer encounter based on rng.
In our case, we have 283/65536 odds to trigger a Ragtimer encounter for every frame of movement in the forest.
CONDE PETIE
It's around 50 frames slower to go right to reach Vivi, on Bizhawk. Though it pushes the pointer quite further so it could be useful in some instances.
WORLD MAP
Again we pass the threshold for a Ragtimer encounter before reaching the big forest, so have to be careful.
The cliff fall glitch where you can directly jump straight down the forest in front of the Black Mage Village thanks to Choco saves a little over 16 seconds. Even doing it twice it just doesn't save enough time to make the detour profitable unfortunately.
BLACK MAGE VILLAGE
We can trigger the ATE manually to save about one second here.
MOUNTAIN PASS
We rename Eiko, "E". It'll save a couple of frame in Mt Gulug.
Hilgigars is a formality if we can have both Zidane and Vivi attacking first. This is where stealing the Oak Staff earlier would have saved about 2 seconds by using Drain, but stealing and equiping takes more than 2 seconds already.
MADAIN SARI
It's about half a second faster to do the whole sequence starting from the right.
Moogle Skip : The model of the Moogle is actually present outside and with positionning ourselves carefully we can talk to him without triggering his animation. This saves around a second and a half.
IIFA TREE
The zombies fight is manipulated to be only two of them and in preemptive. Since they're undead, Life will kill them. It would have been half a second faster if it was possible to throw a phoenix down with Vivi, but no such luck with the rng as phoenix down only have 1/10 chance to kill.
Then Dracozombie, the only reason we bought a Headgear, thanks to Undead Killer we can critical and kill with a single attack.
Soulcage is defeated with a Phoenix Down from Vivi (Manipulated for good ATB and kill)
MADAIN SARI
Scarlet Hair is quickly dealt with a counterattack and Lucky Seven.
We take Amarant in the team as we want him to get some experience. He'll be one of the heavy hitter for the end of the game.
IIFA TREE
Had to make the pointer go really further to get a good battle against the 2 Mistodons. But we were able to get a Phoenix Down kill with Vivi and a Critical from Zidane
Next one is a formality.
Going down the Iifa Tree : 0x77E80 is our X coordinate value. The game checks the rng value every single frame.
With a X value between 0 and 12, no Mistodon can follow you.
X between 13 and 49, if RN modulo 60 = 0, then a Mistodon chases you. (odds are 5/256 every frame)
X between 50 and 111, if RN modulo 120 = 0, then a Mistodon chases you. (odds are 3/256 every frame)
X at 112 and over, you're free.
If you're running constantly, X increase by 1 every 1/6th of a second. If a first Mistodon has already attacked you, there is a 800 frames cooldown before another one can chase you.
If I didn't mess up the maths, this should roughly equals to a 1/1485 chance of no Mistodon unmanipulated.
So in this run in particular, we managed to manipulate so there are only 5 addresses that would trigger a Mistodon. 3 we were able to jump over by simply stopping to run for a moment and 2 that were jumped over naturally. Needless to say, this was pretty lucky.
END OF DISC 2
Nothing really super interesting at the beginning of Disc 3. We pick up the 3927 Gil on the floor, it doesn't cost anything because we have time to waste.
TRENO
Card Tournament : Tetra Master uses the PRNG for randomness. It uses that value when the Tetra Master game load to set up the rocks on the board.
That's why we slightly delay taking the card at the end of game 1 & 2, to set up the board nicely for game 2 & 3.
Otherwise, because in a Tetra Master game, the PRNG updates constantly, we can manipulate the opponent's deck and coin toss by delaying by a few frames the moment we choose "Confirm Selection". And we can manipulate where the opponent puts their cards by delaying the moment we put ours.
The fastest way to deal with it, is too win one of their card without fighting and avoid battles the rest of the time.
Winning the first 2 games is mandatory. It is possible to lose the 3rd game and move on. A win rewards us with a Rebirth Ring which will be useful to boost Holy attacks later.
ALEXANDRIA
Giving the right orders rewards us with some Angel Earrings.
They are :
Gather information => Blutzen & Kohel
Protect the townspeople => Weimar & Haagen
Contact Lindblum => Breireicht & Laudo
Begin preparations => Dojebon & Mullenkedheim
To avoid the first Mistodon without having to lure it first, there is a nice little trick. If it's too close to you, it triggers a fight, however the game very often checks the rng and if the value is equal to 0, the Mistodon rises up and stop chasing you for a little bit. That's all we need, so we manipulate the rng to be 0 on one of the check and we can go.
On the second screen, there is supposed to be a mandatory fight if we cross a line, but at very specific coordinates, the exit zone sticks out a little bit in front of the line so we can reach the exit first. In a TAS all we need to do is walk for a frame while moving and stop moving on the last frame possible.
Because we had Level Up on Freya, Beatrix joined us at level 12. She is now at 13. This is important because at level 12, Beatrix cannot one-shot a Mistodon with a quick attack. At level 13, she has about 0,6% chance ^^ which we obviously manipulate.
We also take the opportunity to transfer the Thunder Gloves and Plate Mail from Beatrix to Steiner and activate Undead Killer and Devil Killer.
The next 3 fights are just a matter of quick Steiner ATBs.
For the final 2 Mistodons, they start with full ATB, but the first one uses its turn to activate Steiner trance, so its ATB reset. Beatrix being faster than it, she can quickly kill with a Critical (she has now enough levels and strength that it's not difficult anymore).
LINDBLUM
Choosing "Where's Dagger" saves about 8 seconds total. You have to talk to the guard but the dialog sequence is way shorter.
Then lot's of manipulations for dialog rng.
For the potions, we go first to the Theater District. By leaving the shopping in the Business District for when we are done with the potion we avoid a little bit of dialog and saves around 1.5 second.
We buy a Coral Sword for Steiner (damages + Charge!) and Poison Knuckles for Amarant (Just so he does enough damages against Ark to avoid a second throw).
KUJA PALACE
For our team to Oeilvert, we need Steiner and Amarant to do damages. If we steal the Holy Lance, Freya will be able to do big damages to Valia Pira. So for the fourth one we can compare which team is the fastest in dialog rng overall. The fastest is having Vivi as a leader in Desert Palace, so fourth one has to be Eiko.
FORGOTTEN CONTINENT
Going by foot to Oeilvert without encounter requires a lot of manipulation. 91 encounter checks, the last ones being almost 50/50.
OEILVERT
We buy a Silver Fork (To throw), a Mantra Band (HP+20%), and 2 Cross Helm (MP Attack+Devil Killer).
Then we equip the Mantra Band and Chain Plate on Zidane (+ HP+20% - Undead Killer), Coral Sword, Cross Helm and Bronze Armor on Steiner (+ Bird Killer and Add Status), Poison Knucles and Power Belt on Amarant (+ Bird Killer and MP Attack), and Adaman Vest on Eiko to survive first turn.
In the room with the 4 ships displays, it is faster to leave by the upper floor, though less safe RTA as it involves more encounter checks.
Ark : We need to steal the Holy Lance (1/16 item, 56,25% chance to have a succesfull steal, so roughly 3.5% chance overall)
Because we can manipulate a Critical from Steiner, Amarant doesn't have to throw twice, he can do enough thanks to the Poison Knuckles.
Boomerang is manipulated to end Zidane's HP in 7. 25% chance Lucky Seven hits 7777.
Eiko attacks Steiner to bump the rng for the critical hit.
DESERT PALACE
For the Red Light, Green Light mini-game, the Hedgehog Pie can turn more or less fast and will stare for short or long amount of time. However it will ALWAYS turn and stare, we cannot manipulate it so it doesn't move.
I basically brute-force the starting rngs I had and took the quickest result.
Most of the candle must be lit to be able to fight the boss and leave. However lighting some turns on Bloodstones that can be deactivated then. When active, they give boosts to Valia Pira.
We deactivate the one in the lobby to remove its immunity to elemental attacks and the one in the hallway that enhances its defense. We receive in exchange a Promist Ring and a Shield Armor.
We equip Freya with the Holy Lance (Damages), Cross Helm (MP Attack) and Angel Earrings (Holy boost) + MP Attack, Bird Killer and Devil Killer.
Because we deactivate the 2 Bloodstones, a Critical hit and a regular one from Freya will be enough to kill.
ESTO GAZA
We buy a Flame Saber (can inflict Heat), 2 Venetia Shield (Counter), the Diamond Gloves (Ability Up) and a Judo Uniform (Distract).
MT GULUG
We equip Steiner with the Flame Saber and Shield Armor.
Due to how the game uses random numbers (multiplying by 257), the Flame Saber doesn't have exactly 10% but only 9,375% chance to inflict Heat on the enemy with a regular attack when the ability Add Status is active.
When under Heat status, a character will die if they start doing a move.
Against the Red Dragons, we therefore, kill one thanks to a Critical hit, and inflict Heat on the other one. Before it does a move and dies, we queue Zidane's attack on Vivi, so everybody else gets more experience.
After the fight, we equip the Coral Sword back on Steiner, with Coral Ring and Diamond Gloves + Distract, Ability Up and Man Eater. Zidane gets the Judo Uniform + Devil Killer and Freya, Venetia Shield + Counter.
Distract will make Steiner harder to hit with physical attacks, Ability Up will make it that he learns Charge ! From the Coral Sword in the next fight.
For Eiko against Zorn and Thorn, we can use the L1+R1 trick to save half a second.
Meltigemini being weak to Holy, Freya is a killing machine. So we manipulate it to physically attack Freya and trigger a counter on top of 2 regular hits.
LINDBLUM
Little bit of dialog rng.
IPSEN CASTLE
Eiko is the fourth character with the fastest dialogs in Ipsen.
Choosing "Don't let him go", saves about 2,5 seconds.
We equip the Flame Saber and Thunder Gloves back on Steiner so he can inflict Heat on Taharka and the Ribbon to absorb Wind attacks.
Against Taharka, we steal the Orichalcon (1/16 item, about 56% chance of succesfull steal) as it's a really good weapon for Zidane, then inflict Heat for the kill.
When going back for Amarant it's roughly one and a half second faster to go down by the pole.
EARTH SHRINE
We equip the Orichalcon on Zidane.
It is faster to kill Earth Guardian rather than eat it with Quina, though it is not easy to manipulate, because all rng aren't reachable due to EG randomly taking its time before starting the fight. Critical hit, counterattack and regular hit will do the trick but we still need good rolls.
Answering "I don't know" to Amarant is the fastest option.
YOU ARE NOT ALONE FIGHTS
It is important to note that, with the rng moving very slowly between fights, we're not looking at optimizing each fight but rather getting the fastest sequence of 3 fights.
Amdusias :
Phase 1 : Will cast Bio and then take the sky. We basically want it to start with its ATB as full as possible.
Phase 2 : If Amdusias loses more than 5463 HP, moves on to Phase 3. Zidane can do it with a high roll.
Phase 3 : Its HP are set at 5463. A simple Freya attack is enough.
Abadon :
Phase 1 : Abadon attacks two times. When its ATB becomes full after that, this phase ends. We can skip a little dialog sequence by moving Steiner in the back row. Abadon having only 3 moves in its attack list, it has 1/8 chance to do the same move twice. We manipulate it for Blade, and Quina to die to give more experience to the others.
Phase 2 : Regular attack from Steiner and Critical hit from Zidane is enough.
Shell Dragon :
Phase 1 : Ends with Zidane in Critical HP. We attack it to manipulate its damage roll and run away to increase the damage. It also advances the rng pointer for phase 2.
Phase 2 : Manipulated a critical hit and a counterattack. Could have saved a few seconds if it were using Charge instead (which would also kill Dagger) but no such luck.
PANDEMONIUM POST YANA
We put Freya and Amarant back in the team, and that will be our team for the rest of the game.
We buy a Defender and an Avenger for damages, and 2 Coronet to nullify Wind damages.
Blue lights maze : Normally, going near a blue light triggers a fight, but by positionning ourselves carefully we can avoid the trigger zones.
We equip Freya with the Barbut and Bronze Armor + Dragon Killer, Zidane with the Coronet + Distract, Amarant with Avenger, Coronet and Chain Plate + Devil Killer and Man Eater and Steiner with the Defender, Venetia Shield and Plate Mail + Locomotion.
Same thing as for the You Are Not Alone fights, we need a good sequence of 3 here.
Silver Dragon : Nothing special. Two criticals to finish as fast as possible.
Garland : His Stop attack is fast, so we manipulated 2 in a row. Thanks to Locomotion, Steiner dodge the first one. Second one is dodge naturally but it doesn't even matter.
Kuja : We have enough characters pre-empting that Kuja only attacks once. And he uses Demi, which is the fastest of his 2 regular attacks.
END OF DISC 3
Nova Dragon : It has 1/3 chance to counter any physical attack. There was only one possibility for a critical hit in this fight but it would unfortunately trigger a counter.
Nova was manipulated to start with Psychokinesis on Zidane who can tank it, then Aerial Slash. Thanks to the Bronze Armor (halves Wind damages) Freya can survive and be in critical HP, the others absorb or nullify the damages.
The rest of the fight is just attacking without triggering counters.
We pick up the Tower as every single damage increase we can do will matter soon.
Maliris : Nothing special. As much Critical hits as possible, its attacks manipulated to be the quick ones. Freya jumps to avoid the death counter which would have killed everybody otherwise.
On the scene with the boat and the rain, the rng table is updated every frame. We wait a few frames so it is optimal for the end game.
We pick up the Rune Claws and equip them on Amarant as well as the Tower on Zidane.
We can start using Charge ! It's an ability that will make everybody in critical hp attack.
Tiamat : Thanks to Dragon Killer, Freya does the most damages. Then, as much critical hits as possible from those who do most damages and fastest attack from Tiamat.
Kraken : The tentacles cannot be killed with Charge ! This ability will make the characters choose a target randomly with almost equal chances. So we want 3 of them to hit Kraken and 1 a tentacle.
Then we can kill the tentacles with 3 regular attacks. Once the second tentacle is dead, Kraken's turn goes back at the bottom of the queue. So basically, 3 characters can have a free second turn.
Kraken can then counter every physical attack with a 2/3 chance but Charge ! attacks cannot be countered.
Ultimately by having 4 characters in Pre-empt, Kraken didn't even get a single turn.
Lich : Nothing special again. Its attack is manipulated to be the fastest one.
We pick up Excalibur II. With the Rebirth Ring to boost Holy attacks, Steiner will now always do 9999.
Deathguise : This is why every bit of Strength matters. With 4 pre-empt and 2 critical hits, it is barely possible to kill Deathguise before it uses Meteor. It has 55 535 HP, we did 55 539 damages :)
Trance Kuja : Counters when he goes below 50% of his max HP with Flare Star. Unless it's done with Charge ! So the strategy is simple, damages done until just above 50%, then Charge ! to get one hit away from death and final regular attack.
Necron : Necron has 4 ATB Bars. Each one does a different set of moves, however ATB2, ATB3 and ATB4 can be disable by having respectively 1, 2 or 3 characters in critical hp or dead.
We manipulated ATB3 to act first and use Firaga which, with our current stats, can put up to 2 characters in critical HP. Then it's ATB1 turn to do Blue Shockwave and put a 3rd one in critical HP.
Now with only ATB1 left, which just took its turn, we are free to finish the fight as quickly as possible.
And that's it ! I hope you enjoyed !

nymx: Claiming for judging.
nymx: Accepting as an improvement over the current publication.
fsvgm777: Processing. r3gamerz is handling the encodes for this one.
Last Edited by fsvgm777 on 9/5/2025 7:00 AM
Page History Latest diff List referrers Change Log