Final Fantasy TAS by TheAxeMan

  • Takes damage
  • Heavy luck manipulation
  • Uses soft and hard resets
On TASvideos perfect runs are continually improved, often through very unexpected changes. This run improves the current Final Fantasy TAS by 547 frames (about 9.1 seconds) by getting lower stats and spending more time at inns and item shops.
The original reason I started working on this was to use some tricks from Vcimdarf who does realtime speedruns on this game on SDA. It took some work to fully incorporate those techniques and along the way I discovered a couple other unexpected improvements.
  • 1 frame gained by entering names sooner by pressing start instead of A at the beginning.
  • 40 frames saved by changed pirates battle so that neither surviving character gets INT on levelup.
  • I stay at the Pravoka inn and hit the reset button as soon as my game is saved. After loading the game I am outside of town 170 frames faster than if I had walked.
  • The remaining 336 frames are the net result of some more significant changes in item usage. After beating the pirates I head to the Pravoka item shop. The items I get are used in a new luck manipulation technique. In the outer world I can save my game just before getting into a random encounter. I start to move and then reset. On loading my game, the encounter mechanism has moved past that encounter so I can move on without a battle. The downside is that this adds a step that needs to be managed. Adding a battle destroys any gain from this trick. After accounting for the time needed to buy and use the tent there is no time saved. However, the battle RNG does not get used. This can work in my favor if it cuts a cycle of the RNG before a boss. But if I just have to wait for the RNG to increment in battle then it actually loses time. After upgrading my optimization scripts to consider this I was able to find enough places where this helped to make the considerable detour in Pravoka worthwhile.
Here are the details on how the save-reset fight skip trick affects this run:
I buy 8 tents and a cabin in Pravoka.
The tents start getting used after beating Astos. The three tents used between Astos and Vampire save one cycle on the RNG and reduce the number of preemptives I need. A big bonus worth about 100 frames is that I can equip the Dragon sword on one of those menu trips.
On visiting Elf Castle to get the key, I step in and out of Elfland to save 5 steps. I use some of those steps to sail all the way into the docks at Coneria and Elfland.
In Dwarf Cave I do not pick up the house and cabin from the treasure room, only the Dragon sword.
Before entering Earth Cave the second time I skip another fight to save a cycle. In this case the fight is against the shadow enemy group with very high initiative.
After exiting Earth Cave I still need to deal with that shadow group because one more step would add a fight before reaching the ship. But between Lich and Eye I use 3 fight skips. I need to save steps for this by using the dock trick at the Crescent Lake dock.
After beating the Eye that trick is no longer useful as it does not save an RNG cycle on any stretch for the rest of the game. Conveniently everything at that point on is the same as the previous run so I just copied.
The reason the Dwarf Cave treasure is skipped is because it is faster to buy the items in Gaia. I need to pick up another treasure chest in Ice Cave but it is still worth it. Takes too long to walk around to the chests. Also, buying a cabin in Gaia is 2 frames faster than buying a tent in Pravoka so I maximize the number of items bought in Gaia.

Bonus!

This year marks the 25th anniversary of this game's release. So I decided to put together a few extras to make this a 25th anniversary edition TAS.
First of all, I have included subtitles in the fm2 with a lot of information about this game and the run.
As I did with Crystalis and the white mage run, I am releasing all the code I used to make this run. That includes the pathfinding script that plans encounters, the battle planner used to optimize Garland and the pirates and the run analyzer that optimizes running from random encounters.
Finally, there are many choices to make in an RPG run. One of the most difficult is always what to name your characters. So I have created a program that will generate a custom TAS that uses whatever hero names you like. I noticed early on that once names are input at the beginning of the game they do not affect the timing of anything. So all that is necessary to allow for this generation is to generate the controller input that inputs the names. The rest of the run is the same, but the names will be whatever you like. Windows users can run the executable version. Linux users and the curious can download the source and choose between command-line or GUI (wxpython).

Thanks

Big thanks to Vcimdarf for the reset button ideas.

adelikat: Claimed for judging
feos: Added HD and SD streams.

adelikat: Accepting for publication as an improvement to the published movie.
feos: Processing...


TASVideoAgent
They/Them
Moderator
Joined: 8/3/2004
Posts: 15585
Location: 127.0.0.1
This topic is for the purpose of discussing #3656: TheAxeMan's NES Final Fantasy in 1:09:57.70
Player (127)
Joined: 3/23/2012
Posts: 296
Location: In X position=50 y position=20
Yes vote. I never did "no vote" on axeman's movie
Jungon wrote:
if I was to have a Tool-Assisted real life ... I'd.. I could abuse death, just to see if it saves time ..
Joined: 1/9/2011
Posts: 31
This is ridiculous. I'm absolutely voting "yes."
Editor, Experienced player (570)
Joined: 11/8/2010
Posts: 4036
Great run and nice improvement! I liked all the subtitles that explained what you were doing at each point in the run and trivia about people who worked on the game. I also had some fun naming the characters (Krby turned out to be the hero that stayed alive the whole run). Yes vote.
Post subject: Final fantasy: YouTube + lossless video file
Joined: 3/18/2006
Posts: 971
Location: Great Britain
NitroGenesis
He/Him
Editor, Experienced player (556)
Joined: 12/24/2009
Posts: 1873
The name maker is hilarious and probably provides hours of fun on its own. I named all my characters "Guga" except the third one, which I called "Trog". Guess who survived.
YoungJ1997lol wrote:
Normally i would say Yes, but thennI thought "its not the same hack" so ill stick with meh.
Cooljay
He/Him
Active player (397)
Joined: 5/1/2012
Posts: 468
Location: Canada
NitroGenesis wrote:
The name maker is hilarious and probably provides hours of fun on its own. I named all my characters "Guga" except the third one, which I called "Trog". Guess who survived.
Guga survived of course. The world wouldn't be the same without him.
Guga
He/Him
Joined: 1/17/2012
Posts: 838
Location: Chile
Cooljay wrote:
NitroGenesis wrote:
The name maker is hilarious and probably provides hours of fun on its own. I named all my characters "Guga" except the third one, which I called "Trog". Guess who survived.
Guga survived of course. The world wouldn't be the same without him.
<_<
Spikestuff
They/Them
Editor, Publisher, Expert player (2643)
Joined: 10/12/2011
Posts: 6441
Location: The land down under.
Cooljay wrote:
NitroGenesis wrote:
The name maker is hilarious and probably provides hours of fun on its own. I named all my characters "Guga" except the third one, which I called "Trog". Guess who survived.
Guga survived of course. The world wouldn't be the same without him.
True to that
WebNations/Sabih wrote:
+fsvgm777 never censoring anything.
Disables Comments and Ratings for the YouTube account. Something better for yourself and also others.
Expert player (2468)
Joined: 6/2/2009
Posts: 1182
Location: Teresópolis - Rio de Janeiro - Brazil
I'm sorry to completely disagree with you guys, but you are all wrong! The only one of those red head guys that have any chance to survive to the end of the run is "Trog". We can pretend that "Guga" survived, but it's not true and would cause some confusion to the audience. In any case, I'm with you about the run being something really impressive, and I'm also voting Yes.
I am old enough to know better, but not enough to do it.
Active player (435)
Joined: 9/27/2004
Posts: 650
Location: Canada
What! Awesome!
Ambassador, Experienced player (709)
Joined: 7/17/2004
Posts: 985
Location: The FLOATING CASTLE
Glad everyone likes this and is having fun with the name generator. I set up the generator so the order on that screen is the final order after the party is down to one survivor. According to the google code stats more people have actually downloaded the optimization code than the name generator. So I was wondering if I could get some feedback. Is it easy to understand? Could simulation like this help on other games? Any other python fans? I originally did this in python to practice the language and now make my living coding in python. For anyone interested in making some other run with different classes or some other goal like including class change this code should be a good start. I don't plan on making any other versions myself though.
Active player (435)
Joined: 9/27/2004
Posts: 650
Location: Canada
This is far and away the best tas I have ever watched. Thanks a lot axeman.
Site Admin, Skilled player (1254)
Joined: 4/17/2010
Posts: 11478
Location: Lake Char­gogg­a­gogg­man­chaugg­a­gogg­chau­bun­a­gung­a­maugg
I guess I will prepare all encodes for that submission.
Warning: When making decisions, I try to collect as much data as possible before actually deciding. I try to abstract away and see the principles behind real world events and people's opinions. I try to generalize them and turn into something clear and reusable. I hate depending on unpredictable and having to make lottery guesses. Any problem can be solved by systems thinking and acting.
Post subject: Movie published
TASVideoAgent
They/Them
Moderator
Joined: 8/3/2004
Posts: 15585
Location: 127.0.0.1
This movie has been published. The posts before this message apply to the submission, and posts after this message apply to the published movie. ---- [2079] NES Final Fantasy by TheAxeMan in 1:09:57.70
Former player
Joined: 8/15/2004
Posts: 422
Location: Minnesota
It says a lot about how technically good this movie is when at over an hour long it manages to shave just nine seconds off. I recommend watching the movie with the subtitles to understand just how hard that can be! :) Awesome job AxeMan!
Ambassador, Experienced player (709)
Joined: 7/17/2004
Posts: 985
Location: The FLOATING CASTLE
Hey, could we link the name generator program from the movie page? I noticed that no one is downloading that but the counter for the Crystalis script that is on the published page is still going up.
Publisher
Joined: 4/23/2009
Posts: 1283
Sure Edit: natt beat me to adding it.
Joined: 1/20/2013
Posts: 4
Hello ! First of all, sorry for my bad english ^^" I have a question about this, from the Game Resources : Levelup Depending on class and level, you either gain each stat unconditionally or have a 25% chance. To make the roll, an rand8bit number is generated. The roll for luck succeeds when the low two bits are 0. -> Do you know what are the conditions for the four others stats ? There are 8 bits and 5 stats :o Thanks !
Ambassador, Experienced player (709)
Joined: 7/17/2004
Posts: 985
Location: The FLOATING CASTLE
Sorry, it wasn't helpful to fully understand it so I didn't look any deeper. But you can examine in the FCEUX debugger to find out more. Also, I think that the low two bits may only be right for fighters or certain levels.
Joined: 1/20/2013
Posts: 4
Well, I used FCEUX and I obtained these informations : -> The low two bits are used for Str, Agi, Int, Vit and Luck, for all the classes. I don't know about the levels. But I think that will be always these 2 bits. -> For each not guaranteed stat, a ran8bit is generated, with a random seed incremented by one. That's ugly, especially for the black mage : sometimes, there are 4 not guaranteed stats, so this is impossible to have +1 for each one (in fact, I would like to create a small but complete guide about Max Stats in FF1) -> Finally, I found that HP bonus (between 20 & 25) is also depending on random seed. Between 00 and 32, you earn 20 HP, between 33 and 55, 21 HP, and so on. Thanks for your help :)
Ambassador, Experienced player (709)
Joined: 7/17/2004
Posts: 985
Location: The FLOATING CASTLE
Suppose I discovered a 2-frame improvement to this run. It wouldn't be noticeable at all and it doesn't change anything significant. In fact the two frames are gained just before fighting the final boss with everything else the same. Should I submit the improvement? I can remake all the extras included in the current run to use the new trick.
ars4326
He/Him
Experienced player (778)
Joined: 12/8/2012
Posts: 706
Location: Missouri, USA
To give an honest opinion, a 2 frame savings on an hour+ long RPG is a bit of a tough sell (not that it wouldn't technically be accepted). You mentioned incorporating a new trick from the current run. Is there any other ideas you have for improvements, or new methods that would add new entertainment value?
"But as it is written, Eye hath not seen, nor ear heard, neither have entered into the heart of man, the things which God hath prepared for them that love him." - 1 Corinthians 2:9
Ambassador, Experienced player (709)
Joined: 7/17/2004
Posts: 985
Location: The FLOATING CASTLE
ars4326 wrote:
new methods that would add new entertainment value?
Not for this any% run. Though please let me know if there are ideas for other interesting variations.
Editor, Skilled player (1202)
Joined: 9/27/2008
Posts: 1085
External links to the code mentioned in the submission text and the publication text are no longer working. Error 404. Requesting new public access to the code. I would like the pathfinding, battle planner, and run planner not to be lost to time.