One of the potentially most annoying parts of any attempted speedrun of *Final Fantasy IV* is the prospect of random encounters. They are rarely actually fought, and the potential for a back attack or surprise attack means precious seconds lost. The routes listed on this page serve to minimize the amount of time wasted on random encounters.

Essentially, a step route is a series of extra steps or alternate paths taken while running the game with the goal of decreasing the total amount of time the run takes. This page provides ready-to-use step routes for the original US SNES release of *Final Fantasy IV* (originally released as *Final Fantasy II*). Routes for other releases may also be available at some point.

If you use any of the routes and something goes wrong, please let me know and link me to a video so I can attempt to investigate the problem. It could simply be a mistake in execution or a misinterpretation of the instructions, but it could also be a problem with the route generation or with this site.

For an introduction to step routing, I recommend reading the Step Routing Basics guide. If you have suggestions or comments regarding that guide, please contact me.

In addition, each route has its own individual *Tutorial* tab which should help newcomers.

In order to find your seed during a run, I recommend using my Seed Finder tool.

All modern routes are now available with tutorial and summary data and are twin safe. The next step is adding more recovery options.

These are the standard routes people are most likely to use.

Route | Twin Seed Safe | Optimization Status |
---|---|---|

Paladin% | ✓ | Optimal |

Any% NoCW | ✓ | Optimal |

Any% No64 (Rosa) | ✓ | Optimal |

Any% No64 (Rosa) (Safe) | ✓ | Optimal |

Any% No64 (Rosa) (Marathon) | ✓ | Optimal |

Any% No64 (Edge+Excalbur) | ✓ | Optimal |

Any% No64 (Edge+Excalbur) (Marathon) | ✓ | Optimal |

Any% Glitchless | ✓ | Near Optimal (Optimal Estimate: Late 2024) |

Any% Glitchless (No Seed Manipulation) | ✓ | Suboptimal (Optimal Estimate: Mid to Late 2025) |

These routes are intended to be used to recover a step route in case the original one was permanently lost.

Route | Twin Seed Safe | Optimization Status |
---|---|---|

Any% No64 (Rosa) (Marathon) (Recovery: FuSoYa) | ✓ | Optimal |

Any% No64 (Rosa) (Marathon) (Recovery: Paladin) | ✓ | Optimal |

Any% No64 (Edge+Excalbur) (Marathon) (Recovery: FuSoYa) | ✓ | Optimal |

Any% No64 (Edge+Excalbur) (Marathon) (Recovery: Paladin) | ✓ | Optimal |

These routes are uncommon alternate routes that are less likely to be used during a run. They currently have no summary or tutorial data. They may or may not be twin seed safe.

Route | Twin Seed Safe | Optimization Status |
---|---|---|

Any% No64 (Rosa) All Bosses [riversmccown] | ✓ | Suboptimal |

Any% No64 (Edge+Excalbur) All Bosses [riversmccown] | ✓ | Suboptimal |

Pre-Mist Clip | Optimal |

These routes are archived from the old version of the site. They have not been updated to the new data structure, and their optimization status is unknown (though they should be near optimal relative to their input data). There is no associated tutorial or summary data. Eventually, I would like to convert them to the new structure, but this is not a high priority. These routes are not guaranteed to be twin seed safe (though some of them may be).

Route | Optimization Status |
---|---|

SFC Any% NoCW | Unknown |

SFC Any% NoCW (Toru_1988) | Unknown |

Any% No64 (Edge+Drain) | Unknown |

Octomamm% (Cecil+Kain+Darkness) | Unknown |

Paladin% Single Segment | Unknown |

Any% No64 Single Segment (Edge+Excalbur) | Unknown |

Any% No64 (Edge+Drain) Marathon Safe (AGDQ 2016) | Unknown |

Any% No64 (Edge+Excalbur) Marathon Safe (AGDQ 2016) | Unknown |

Any% No64 (Edge+Excalbur) Extra Bosses Marathon Safe (AGDQ 2016) | Unknown |

Unprecedented Crisis v2.1 Any% No Major Skips | Unknown |

Unprecedented Crisis v3.1 Any% No Major Skips (riversmccown) | Unknown |

Unprecedented Crisis v3.1 Any% (Mist Clip%) | Unknown |

The Darkness Within v1.07b Any% | Unknown |

*Final Fantasy IV* uses a relatively simple system for determining when encounters occur. There are 256 possible seeds. For any given seed and encounter rate, the step numbers where encounters occur is fixed. By following the path through the game, we can determine exactly when encounters will occur and what formations they will be.

There are two ways we can adjust our route:

- Optional Steps
- Not every tile will increment the step counter. On certain maps, by choosing to walk in certain ways, we can increase the step counter by a different number of steps, even as we move across the same number of tiles. For historical reasons, these are called
*optional steps*(because the increase in the step counter is optional). - Extra Steps
- We can simply take extra steps, mostly by pacing back and forth.

Including healing time, an encounter will waste anywhere from 5.6 to 32.0 seconds. The overall average is somewhere between 8 and 10 seconds per encounter. Knowing this, there are three primary ways taking extra steps can actually be beneficial:

- Fewer Encounters
- By taking extra steps in areas where the encounter rate is zero (or simply lower than the rate in the next area), we can directly skip encounters that would otherwise occur.
- Faster Encounters
- Not all enemy formations are created equal. Some are easier to run from, and some have fewer or shorter enemy attacks in the event of a surprise or back attack. We can take extra steps to move encounters from one area to another, potentially changing the enemy formation to a more favorable one.
- Guaranteed Encounters
- In certain cases, we actually want to have a particular encounter. (The primary example of this is searching for the grind fight in the
*No64*run.) By manipulating our encounters throughout the game, we can ensure that this formation appears exactly when we need it to. This saves us from a potentially lengthy save and reset cycle or from walking around aimlessly searching for the required formation.

All of this sounds wonderful, of course, but as I'm sure you can imagine, trying to figure this all out in your head would probably be a fool's errand. Instead, we use a computer to solve the problem. Specifically, I use a tool I've written called Rosa to generate the routes.

For the standard routes, the first place there is an option to take extra steps is the Watery Pass-South Save Room. In most cases, any two seeds can be told apart by the time you reach this room. However, there are several pairs that cannot. These pairs have been named twin seeds. These can roughly be divided into two groups:

The following pairs, while indistinguishable solely by encounter steps, can be distinguished by the encountered formations. For this reason, when using the Seed Finder, it is highly recommended to choose formations as you go. In fact, twin seed-safety is only guaranteed if you do select formations.

- 7 and 8
- 98 and 99
- 101 and 102
- 109 and 110
- 168 and 169
- 231 and 232

The follow pairs of seeds are completely indistinguishable by the time you reach the Save Room. If using the Seed Finder with a twin seed-safe route, if you get one of these pairs, you will be given instructions on how to proceed to identify your seed. Alternately, you can load both routes, and follow one as long as encounters match exactly. If at some point it doesn't match, you switch to the other. That said, this option produces a much higher workload.

- 14 and 15
- 22 and 23
- 30 and 31
- 41 and 42
- 47 and 48
- 63 and 64
- 68 and 69
- 78 and 79
- 132 and 133
- 143 and 144
- 175 and 176
- 183 and 184
- 247 and 248

This section documents the effects of changes made to routes to ensure twin safety. Any unlisted pairs required no adjustment and were safe by default.

- 14 and 15
- Recalculated seed 15 with no time loss.
- 30 and 31
- Recalculated seed 30 with a 6.600 second time loss.
- 68 and 69
- Recalculated seed 69 with a 9.202 second time loss.
- 132 and 133
- Recalculated route 132 with a 0.135 second time loss.
- 143 and 144
- Recalculated route 143 with a 1.204 second time loss.
- 247 and 248
- Recalculated route 247 with a 2.379 second time loss.

- 14 and 15
- Recalculated seed 15 with no time loss.
- 30 and 31
- Recalculated seed 30 with a 6.447 second time loss.
- 68 and 69
- Recalculated seed 68 with no time loss.
- 78 and 79
- Recalculated seed 78 with a 0.026 second time loss and seed 79 with no time loss.
- 143 and 144
- Recalculated seed 143 with no time loss.
- 183 and 184
- Recalculated seed 183 with a 5.719 second time loss and seed 184 with no time loss.
- 247 and 248
- Recalculated seed 247 with a 1.579 second time loss.

- 14 and 15
- Recalculated seeds 14 and 15 with no time loss.
- 30 and 31
- Recalculated seed 30 with a 6.815 second time loss.
- 47 and 48
- Recalculated seed 47 with a 0.188 second time loss.
- 68 and 69
- Recalculated seed 68 with a 2.580 second time loss.
- 78 and 79
- Recalculated seed 78 with a 0.026 second time loss.
- 132 and 133
- Recalculated seed 132 with no time loss.
- 143 and 144
- Recalculated seed 143 with no time loss.
- 183 and 184
- Recalculated seed 184 with a 14.407 second time loss.
- 247 and 248
- Recalculated seed 247 with no time loss.

- 14 and 15
- Recalculated seed 14 with a 0.364 second time loss.
- 30 and 31
- Recalculated seed 30 with a 2.553 second time loss.
- 47 and 48
- Recalculated seed 47 with a 0.188 second time loss.
- 68 and 69
- Recalculated seed 68 with a 2.580 second time loss.
- 78 and 79
- Recalculated seed 78 with a 0.264 second time loss.
- 143 and 144
- Recalculated seed 143 with no time loss.
- 183 and 184
- Recalculated seed 184 with a 0.763 second time loss.
- 247 and 248
- Recalculated seed 247 with a 1.943 second time loss.

- 14 and 15
- Recalculated seed 15 with a 1.046 second time loss.
- 30 and 31
- Recalculated seed 31 with a 5.265 second time loss.
- 63 and 64
- Recalculated seed 64 with a 0.355 second time loss.
- 68 and 69
- Recalculated seed 68 with a 4.336 second time loss.
- 78 and 79
- Recalculated seed 79 with a 7.934 second time loss.
- 143 and 144
- Recalculated seed 143 with no time loss.
- 183 and 184
- Recalculated seed 183 with a 0.404 second time loss and 184 with a 1.512 second time loss.
- 247 and 248
- Recalculated seed 247 with no time loss.

The Excalbur routes are currently highly suboptimal, so there's no point recording the exact modifications done in the name of twin seed safety. The situation should be rectified by Fall 2020 or so.

- 14 and 15
- Recalculated seed 15 with no time loss.
- 30 and 31
- Recalculated seed 30 with a 8.788 second time loss.
- 68 and 69
- Recalculated seed 68 with no time loss.
- 78 and 79
- Recalculated seed 78 with a 0.264 second time loss.
- 143 and 144
- Recalculated seed 143 with no time loss.
- 175 and 176
- Recalculated seed 176 with a 5.126 second time loss.
- 183 and 184
- Recalculated seed 183 with a 3.183 second time loss and seed 184 with no time loss.
- 247 and 248
- Recalculated seed 248 with a 6.725 second time loss.

I don't know exactly what his contribution was, but some early work on the concepts of step routing was done by the_roth, who is one of the top runners of FF4 in the world.

I'd also like to thank Myself086 for his instrumental work in the development of FF4 step routes. His pioneering work used a truly optimal solver, though it operated on a simplified model that didn't take individual encounter times into account and did not optimize the final descent. His routes were originally used to seed the generation of my own.

Later on, many of the routes were optimized with encounter timings using an optimizer written by fcoughlin. I've since enhanced the timing information even further to change based on the current party, so we can no longer use his optimizer. Until I wrote my own optimal solver, the routes available here were descended from optimal routes generated by his software.

My previous optimizer, Spoony, as I've hinted above, did not generate truly optimal routes as it used a stochastic optimization algorithm. However, testing has indicated that it gets very close.

The routes are now generated by my truly optimal solver, Rosa. However, the routes have become significantly more complicated since the time of Myself086 and fcoughlin, so the process is more time consuming. (For example, no64-excalbur had 56 variables at the time. Today, it has over 200. Suffice it to say that the relationship between number of variables and time to complete is not linear. Paladin% currently has 45 variables and processes something like 180 times faster than no64-excalbur.) Anyway, they'll be done eventually.

If you have any questions, comments, suggestions or any other feedback, please send me an e-mail or message me on Twitch.