Chrono Trigger any% TAS by inichi

Finally, I made it. I'm sorry for keeping the entire movie-making process secret and not posting any WIP on the forum. The expected improvement was so gigantic that I couldn't resist an inpulse to make the run surprising. Also, the submission text is still incomplete. I think this is a bad thing. However, considering these facts:
  • Most part of the run is totally new stuff. So it would take a long time to cover them all, even in Japanese, my native language.
  • This is a long-term project; I started making the run in August 2007.
  • Chrono Trigger is a very popular RPG, and not a few people have been interested in how the run is going.
I thought it would be better to submit the run as fast as I could than to write up full texts and submit it. I will upload the rest of the submission texts little by little.

Emulator Details

  • Recorded on snes9x-1.51-rerecording-svn-r51
  • Left+Right/Up+Down - off
  • Volume Envelope Height Reading - off
  • Fake Mute desync workaround - on
  • Sync samples with sound CPU - off
Note: To play the movie correctly, you must use Snes9x1.51 v5 or newer version; otherwise the movie will desync in about 1.5 minutes. You can get the latest Snes9x 1.51 here. YouTube link is also available. Thanks to nesrocks!

Run Attributes

  • Abuses glitches
  • Abuses programming errors
  • Aims for fastest possible time
  • Corrupts save data
  • Manipulates luck
  • Genre: RPG
Note: I'd highly recommend you skip 1:45-3:45 because that part is very repetitive for abusing the item duplication glitch.

About the game

Chrono Trigger is a memorable role-playing game developed and published by Square in 1995. The story is about a boy named Crono who travels through time with his friends to save the world from an alien parasite, Lavos. The game is also recognized as one of the best RPG, attracting a lot of new fans even today.

About the movie

This is a 3 hour 59 minute 48 second improvement over Hero of the Day's current published run. The improvement mostly came from massive new tricks and glitches. See the below "Tricks and Glitches" section for details.

Tricks and Glitches

In this section, I will give a full explanation of all glitches and tricks I used in the run.

Item duplication

This is a glitch to duplicate items by loading a corrupted save file.
Mechanics: It takes 2 frames to save the game in Chrono Trigger. some values between 7E2400 and 7E264F are overwritten in SRAM in order in the first frame; the rest of them and values in addresses after 7E264F are overwritten in order in the second frame. That means you can get a half-saved save file if you reset the game in the first frame of saving. Off course, this is an invalid procedure for the game, so the target data is deleted. In Chrono Trigger, however, you can load the corrupted data by pressing A and up/down key at the same time in the load screen.
Also, for the reason mentioned above, you can only affects on 7E2400-264F by resetting in saving. What are in those memory addresses are like this:
  • 7E2400-FF: Item ID (last 14 bytes are unused).
  • 7E2500-FF: Item number (last 14 bytes are unused).
  • 7E2600-4F: Crono's status
How many addresses between 7E2400-264F are overwritten in the first frame are slightly influenced on the previous key presses and cursor movements. Basically, you can manipulate it to some extent by changing them or costing a few frames. To make things easier, I used a lua script.
How to duplicate an item? Item duplications are basically classified into three methods. I'll explain for each method.
Explanation of the chart: Using data is a data that you use to save. Object data is a data that are saved in the glitch-use. Result data is a data you get after the glitch-use. Bronze means Bronze Helm; Hide means Hide Cap. Null means there are no items in the slot. Numbers next to them means item number.
Method 1:
Using dataObject dataResult data
Null 0Null 0Null 0
Null 0Null 0Null 0
Bronze 2Hide 1Bronze 1
Hide 1Bronze 2Hide 2
This method is kind of switching. Only item ID is overwritten, and you can get two items with different ID. This is done in one reset.
Method 2:
Using dataObject dataResult data
Null 0Null 0Null 0
Null 0Null 0Null 0
Bronze 2Hide 1Bronze 1
Hide 1Bronze 2Bronze 2
This method is basically the same with the first one except that the below item ID isn't overwritten. As a result, you can get the same items that have different numbers. This requires extreme precision, unless you insert some null slots around the border, which is slower. This is also done in one reset.
Method 3:
Phase 1:
Using dataObject dataResult data
Hide 1Null 0Hide 1
Bronze 2Null 0Bronze 2
Null 0Hide 1Null 1
Null 0Bronze 2Null 2
Phase2:
Using dataObject dataResult data
Null 0Hide 1Null 1
Null 0Bronze 2Null 2
Hide 1Null 1Hide 1
Bronze 2Null 2Bronze 2
Phase3:
Using dataObject dataResult data
Hide 1Null 1Hide 1
Bronze 2Null 2Bronze 2
Null 0Hide 1Hide 1
Null 0Bronze 2Bronze 2
This method is the most complicated, but most powerful one of all. With this method, you can extend items over the above null slots. This actually can be done with Method 2. However, it is much slower because it requires you to buy other items for replacement in each use, which takes much time. This method also requires extraordinary precision, unless you insert some null slots around the border, which is slower. You need to reset three times for this method.
How they were used in the run? Duplicating Hide Caps and Bronze Helms and having them in 98 slots with three methods. This is what I did in the first 3.5 minutes in the run. I'll write it down step by step:
First, I bought 1 revive and 20 Tonics from the merchant at the fair for 400G, Crono's pocket money. With Method 1, Two items ID were switched, resulting in 20 Revives and 1 Tonic, both of which were immediately sold. With that money, I bought a Bronze Helm and 5 other items from two merchants. Second, with Method 2, I changed 5 items into Bronze Helms and Hide Caps. Now I had Bronze Helms and Hide Caps in 7 slots. Finally, with Method 3, I extended them over the above null slots. The actual pace is like this: 7-13-25-49-98. Thus, I got Hide Caps and Bronze Helms in 98 slots.
Having the same type of equipment in 98 slots allows you to access various memory addresses via the equipment screen in Chrono trigger. This is actually the only purpose of all item duplications I did in the first 3.5 minutes. I'll explain the detail in the below section.

Accessing various memory addresses.

As stated above, Having same type of equipment in 98 slots allows you to access various memory addresses that you normally can't.
Mechanics: When you call on the individual equipment screen, item ID that corresponds the equipment type that the cursor currently points out is stored in 7E0F00-60; item number in 7E0F61-C2 as well. All they appear in the equipment selection screen. Yes, as you can see, each has only 96 bytes for their purpose. So if you have the same type of equipment in more than 96 slots, item numbers will flow into 7E0FC3 or later addresses. It is required to flow them into 7E0FC4-6 to access various memory addresses. This is why you need to have them in 98 slots at least. I write down the function of those addresses:
7E0FC4: Decides how many the cursor can move in the character selection screen.
7E0FC5: Decides where the cursor is in the equipment screen. It also works as an offset when you equip, which is stored in C2A4AB-A5AA, and it works like this: 7E2600+xx (in Crono's case)
7E0FC6: Decides how many the cursor can move in the equipment selection screen.
In my run, I accessed and overwrote these three addresses: 7E2985, 7E2980 and 7E2990.
7E2985: An address for a third reserve character. You cannot access 7E2983-84 because any appropriate address doesn't have 13-15, 63-65, B3-B5. I stored 0A in 7E2985, which saved a lot of time when accessing 7E2980. Also, although the address is for a third character, it is treated as it is just under the main three characters when no one is in the first or second reserve.
7E2980: An address for the first party character. You can't access 7E2981-82 since any appropriate address doesn't have 11,12,61,62 B1, and B2. This was rather inconvenient, but not much. This address was heavily accessed and overwritten throughout the run to call out a character who must be in a cutscene or to use "Character warping" trick that will be picked up later.
7E2990: An address for the configuration setting. By modifying the configuration setting, you can store any value out of 256 in the address. Because you are accessing it via the equipment screen, if you equip something with it, the value in the address appears as an item in the item inventory. The thing is, you can retrieve any item from this address.
The alternative way to retrieve an item is to use an address of one character of name strings. The problem with that plan is, once you retrieve an item from it, you can't use the character for that purpose again. I needed three different items in the run, Bike Key, Elixir and Green Dream. That means I have to change the item order twice to withdraw an item from another character, which would consume time.

Character warping

Every time you open the pause menu, all your three character X-Y coordinates are stored in proper addresses. However, if a missing number is in your party and he is not in the first, the appropriate address is not updated. And then, if you replace the missing number with a normal character, the character appears on the coordinates which was stored in when you previously opened the menu. Now a second or third character warping happens. After you use the warping trick at least once in an area, coordinates stored in the addresses always take the same value with a normal character one even if a missing number is in your party. Therefore, you can make even the first character warp by keeping the missing number in the party in the first warp, and just replacing him with a normal character.
Very unfortunately, this isn't applied to overworld coordinates. If it was feasible, the run would shrink by another 10 minutes.

Character sliding

Normally, a second and third character mimic the first character's movement. However, if he is a missing number, he can't mimic the first. Instead, the movement he should have mimicked stacks up in proper addresses until a counter reachs 128 and erases them all. With enough such stacks, if you replace a normal character with the missing number, the character starts sliding, mimicking the movement that has stacked up. While sliding, the character can go through any obstacles.
To make the most of this, you need to use the character warping once or change a character order beforehand so that missing number's next X-Y coordinates could be subject to the normal character's one. Otherwise, a character called out will warp far away and start sliding there, which is unfavorable.

Marle join skip

If you talk to either one of the two merchants with Marle in the party, he sets a flag to remove the men who block the way to Telepod area. Thus, you can entirely skip the marle joining cutscene and enter Telepod area.
Alternatively, you can go through those men in the same way as used in the Factory, which will be mentioned in the below section. When you go back from Telepod area, however, they block your path, and you have to go through them again. So it's a waste of time, though it might be useful for a new game+ run.

Pause menu abuse

By opening the pause menu and leaving it when the screen starts to fade out, you can have a few frames to move in another direct. If you repeat this again and again, you can get to a point that would trigger a certain event, keeping the fade-out status. If you set a flag that determines if the event completed and let the fade-out be done, you are brought to the previous room and it is considered the event already finished.
This trick could have been featured as a main timesaver to skip some boss battles. However, due to the discovery of the more sequence-break glitch, the trick was used in only one place moderately: Telepod area, to skip Lucca’s dialogue.

Playing around at the Telepod area

Unless Crono picks up the pendant, you never lose control, which provides a first huge play-around time. This is useful not only to mess around, but also to make a moving counter of Taban and Lucca faster. Normally, the moving counter of them are incremented by 1 per 4 frames. However, if you keep touching him/her, it is incremented by 1 per 1 frame. Also this is a necessary step to completely skip Middle Ages. See the below section for details.

Middle Ages skip

In every gate transition, a flag that determines if you are in warping is set a few frames before the fade-out completes. That is, you can escape the area with the flag is on if you interrupt another fade-out, which was the entrance of Telepod area in my run's case. If you enter the gate area with the flag is on, the game considers you just got through the gate, and consequently open the gate with your character. In Telepod area's case, the game also considers you just returned from Middle Ages, and increments the storyline counter enough to trigger the trial events. A big timesaver, certainly. Also, Marle must be in the party when you enter the castle; otherwise the game freezes right after entering the castle.
Alternatively, I tested to go to Guardia Forest gate area instead of entering the Telepod area right soon, hoping to entirely skip the trial cutscene. As expected, Magus appeared from the gate; however, the gate disappeared soon and I wasn't able to go into it, proving it not useful for the run.

Candy skip

A flag that triggers the candy cutscene is set when Marle joins in Crono. Since Crono and Marle never met in a intended way in the run, the candy cutscene also never happened.

Getting out of the trial

In the flashback scene of the trial, the game makes the first character appear there. And if the first character isn't Crono, you can move him at free. If he is a missing number, nobody shows up there, but you can still open the menu. And then, if you call out a normal character, it meets the condition of "Character warping trick" and he appears in the same position with where you previously opened the menu. In my run, it is the south entrance of Leene’s Bell area. At this point, the storyline counter is enough to trigger the Marle runaway cutscene. Thus, you can skip the latter half of the trial and all the events in the jail. A huge time-saver, off course.
Also, Lucca must be in the party when you enter the castle; otherwise the game freezes after Marle runs out of the castle.

Arris Dome skip

Johnny appears at Lab 32 if you enter there with a Bike Key. That means you can completely skip Arris Dome, where you can get a Bike key from Doan after you finish all the events there. This may be not intense, but definitely a solid timesaver.

Bike Race skip

This is very similar to Middle Ages skip. A flag that determines if the race was over is set a few frames before a fade-out to the race track completes. Also, the fade-out is slower than the usual screen transition one. The thing is, if you start a fade-out to overworld just after you turn the key, you can escape to the overworld with the flag is set. "Character warping trick" only makes it possible, so you need a set up beforehand. I used a north edge of Lab 16 east for that purpose because it has the same Y coordinate with the south entrance of Lab 32. You may notice I did a strange behavior in Lab 16 east. That is exactly the set up for Bike Race skip.
Alternatively, you can directly get the needed Y coordinate at the south entrance of Lab 32. However, it requires to go out and in Lab 32 to avoid the freeze that results from the lack of characters. After all, it will be slower.

Warping to the main area of Lab 32

Once that flag is set, the entrance to the Lab 32 main area is activated. In Chrono trigger, most entrance never causes the fading out unless you move in there. That entrance, however, doesn't require such movement, and lets you go into the next area by just standing there. If you enter any location followed by a missing number, the game considers you are at (255,0), the right above place, which is in the entrance of Lab 32 main area. So the game immediately sends you into the main area.
There is another reason I had to use this trick: If you enter there followed by a normal character, Johnny tries to speak, but since he is outside the screen, he can't do it and the game freezes. Using this trick is the only way to avoid the freeze and advance the game.

Going through the barrier sprite

You can vertically go through the barrier sprite if it is outside the screen. To achieve this, you have to enter the room with a missing number in the first character. By this, the game considers you at (255,0) and then focus the camera on that point, which allows you to go through the barrier.
Alternatively, you can go through the barrier by using "Character sliding" trick instead. However, it requires one extra menu-opening, so I didn't use it, though I had no choice to use it when trapped out. Because this time it was required to move horizontally to go through the barrier.

Playing around with R-series

R-series bounce off only Crono. That means you can move around during the cutscene by fitting other character in the first, providing a second huge play-around time. It should be noted that Marle and Lucca won't do because they will take their regular position and just stand still. Like the Telepod area, this free-time is useful for shaving off frames. I did these two things for that purpose: 1) Erase the dialogue screen of R-series or Robo before they pop up by getting them out of the screen at the right timing. 2) Increments the moving counter of R-series by touching one of them at certain timing.
Normally, after Robo is knocked down, you become unable to move a character anymore. However, if you interrupt a fight with Alkalines just before losing control, R-series are also caught in the battle. This was supposed to be the fight with only Alkalines, so you can escape from them. Thus, you can gain control again. When the real R-series battle is about to start is the best timing you interrupt another Alkalines battle. With this, you can not only escape from them again, but also increments the storyline counter enough to open the door in Proto Dome.

Smoothly escaping

An escape counter builds up even when you open the technique or item menu in battle. The thing is, you can escape from a battle without being attacked by setting the battle mode "Wait", opening the either menu and holding the L+R buttons. This trick was featured in all the three battles in the Factory.

Robo repair skip

If you enter Proto Dome from overworld after the R-series fight, the game considers you just dragged Robo into, and make characters appear in front of the door for repair. That area is actually in warning area of the below enmies, so the characters start running down for fighting, though a fight starts halfway. When the fight finishes, you gain control and the repair cutscene never starts. At this point, the door to the gate room already opens; consequently, you can completely skip the Robo repair cutscene.
 
Also, when you enter Proto Dome, the first character must be Crono for these two reasons: 1) If you enter the gate room without Crono, the game freezes. 2) If a character is other than Crono, Marle, Lucca and Robo, he/she appears near the entrance, which doesn't awake the enmies and the game freezes.

Playing around at the End of Time

When you speak to snoaring Gasper, you are given a few frames to move around until he starts talking. And if you take the opportunity of talking to Robo twice, you can avoid losing control. This is actually temporary, and you will lose control as usual after you skip the dialogue. However, if you check the healing bucket right after skipping the dialogue, three party characters get together and you can gain control again, providing a third huge play-around time. In the non-glitched run, the trick saves little time, only allowing you to get slightly faster to the point that Gasper shouts "Hey!" to Crono. In the glitched run, however, the trick serves as the set up to perform "Lavos Shell skip" more smoothly and dramatically. I'll pick it up later.

Confusing Spekkio

If you talk to Spekkio while you are still running around the room, he claims to do it over. However, if you continue and complete it keeping the dialogue screen open, he thinks it as succeeded. This doesn't save any frames, but I added it to the run because I felt it would slightly enhance the entertainment value.

Lavos Shell skip

This trick makes full use of the characteristics of gate transition as well as Middle Ages skip does. This is definitely the most difficult trick to pull off. Here are some important facts:
  1. In every gate transition, your starting X-Y coordinates in the next location is set a few frames before a fade-out completes.
  2. If you open the menu in that tiny window, you can overwrite them with the current X-Y coordinates.
  3. If your characters appear at (7-8, 0-8), the entrance into Lavos's body, in the day of Lavos, they immediately jump into Lavos's body. The reason is that the entrance has the same features as the Lab 32 one: Fade-out occurs by just being at the appropriate position.
The thing is, if you manage to open the menu at (7-8, 0-8) at the End of Time just before the fade-out to the day of Lavos completes, you can completely skip Shell Lavos. Normally, this is out of the question. In the first place, (7-8, 0-8) is outside the moveable area. Second, you lose control right after checking the bucket to the day of Lavos, which means you can neither move nor open the menu anymore. To solve this problem, I used the following glitches:
  1. If you run around the End of Time autofiring the A button with a dialogue screen opened, the second and third character eventually fall behind the first.
  2. If the two are too far behind the first, they stop catching up with the first and newly start it with reference to the position they stopped. Note: You need to use the trick "Playing around at the End of Time" to reproduce these two glitches in a timely manner.
  3. Hold two gate messages, choose yes for each. Then if the second message screen closes just before the rest characters, who run at the first to fly for the first gate waping, joins in him, you can restore the function to open the menu even while flying.
  4. Under these conditions, if you change the order of characters twice, you can get out of flying and freely move.
To pull off these four glitches are required to skip Shell Lavos. Here is what I did in the run:
First, use the "Playing around" trick and get the other characters out of the screen with the first and second glitch while Gasper gives the long speech. Second, replace the three characters with Ayla, Magus and $17 when Gasper finishes the speech. The reason I call out Magus and Ayla is they don't take any action when Spekkio tries to give Magic, which saves a few hundred frames. Although it's not visible, Lucca, the third character, is at (8,0) at this point. These coordinates values are stored in the proper addresses, which will be really helpful later. Third, enter Spekkio's room and acquire Magic from Spekkio, no one actually gets it though. Now the bucket to the day of Lavos is activated. Fourth, check the bucket so that the Gasper's warning message doesn't hinder the third and fourth glitches.
Fifth, talk to Gasper because it is needed to show his dialogue to hold more than one gate message. Sixth, hold the Proto gate message, which is the shortest one of the three, and check the bucket. Seventh, use the third and fourth glitches and get right to the save point. Since the Lavos gate message was the first, warping to the day of Lavos is going to occur at this point. It should be noted that (8,0) is still stored in the addresses because only the first and second character were swithced. Eighth, right after the starting X-Y coordinates in the day of Lavos is loaded, use the character warp trick, send the first character into (8,0) and save the game. The save point effect lasts for a few frames after you leave there, so that's no problem to save on that position. Now the save file includes the day of Lavos as the current location, and (8,0) as the current position. Finally, reset the game and load the save file. Magus appears at (8,0) in the day of Lavos. As I stated above, that position is in the entrance to Lavos's body. Therefore, the game sends him into the inner body in a blink.
Now we've done Lavos Shell skip!
It is extremely difficult to pull off, but the result is priceless. For the record, this is my favorite trick of all I have discovered.

Instant kill

Normally, when a character with the Green Dream is defeated, he automatically revives. However, when two RNG conditions are satisfied, the game temporarily considers him as dead. and if the other two characters are really dead at that point, he becomes unable to use an item on enemies instead of himself. If you use an Elixir on an enemy and the sum of its current HP and the HP heal is more than 32768(0x8000), that causes overflow and does instant kill. Inner Lavos has 20000 HP; Lavos Core has 30000 HP. Therefore, you can immediately finish those battles with the glitch. This is why I had to get a Green Dream and an Elixer from the configuration setting address.
Also, for some reason, the glitch never occurs if the character has any status effect such as protect or chaos on him/her. I guess this is why the trick had not discovered for a long time.

Useful key combinations

There are three useful key combinations to be mentioned:
X: If you press the X button in battle, you can point at an enemy as an attack target wherever the cursor is. This was helpful for targeting Lavos in using the instant kill glitch.
Start and Up/Down/L/R: Normally, you need 2 frames to move the cursor, as you have to insert null frame in each key press. However, if you press either the Up or Down key holding the start key, the cursor moves per one frame, which makes it possible very rapid cursor movements. The same goes for the L/R buttons. It normally requires 5 frames to scroll three pages; however, holding the start key reduces it to 4 frames. It should be noted, however, that it can be applied in only three places: the item inventory, the equipment selection screen, and the shopping window. In battle, for example, holding the start button will do nothing. This really comes in handy in a save-corruption run because you have to move up and down in the item inventory multiple times to perform the item duplication glitch properly.
B and Start: Once these two buttons are pressed in the pause menu or the character change menu, every frame is treated as the B button pressed until you leave the menu. Thus, you can immediately get out of the menu no matter where you are. Note that this is slightly faster than the normal method because it requires null frame in each B button presses.

Thanks

(in no particuarly order)
  • Bisqwit - For running the whole TAS Videos community. He is also one of them who tried to make a CT TAS.
  • Geiger - Using his Snes9x debugger, I could develop the item duplication glitch into the setup for a game-breaking glitch. Also his various texts on his CT hacking results were very informative and helpful.
  • Gocha - I learned how to make a TAS from his weblog. He also has fixed various bugs and implemented some good features on Snes9x 1.51.
  • Hero of the Day - Watching his TAS, I decided to make a CT speedrun. He developed lots of good boss strategies, all of which are just plain awesome. I used most of them in my speedrun, some in my test TAS.
  • Mashmallow - I referred his movie on SDA several times when I tried to break his record.
  • Molotov - He introduced my first CT speedrun to SDA and TAS videos, which broadened my perspective and has finally brought me here.
  • Nanashi(七誌) - He implied there were more tricks that I had not known then, which motivated me to discover new tricks more and more.
  • Okuto(オクト) - A Japanese CT speedrunner. It was his reports on his run that I first knew about CT speedrun.
  • Reudy(ロイディ) - A very skillful Japanese CT speedrunner. he made a 100% CT run on console and even found some useful tricks for TAS.
  • Ryuuou Leo(竜王レオ) - A website manager of Japanese CT site, providing a community to discuss CT speedrun. He is also a good CT player.
  • Saturn - I learned how to make an optimized CT TAS by analyzing his new game+ TAS.
  • Tilus - At the beginning of making a CT speedrun, I followed his posts one by one, which were really suggestive and helpful.
And finally, I would really thank to all the people on TASvideos. If you had not been, I would never be able to make this run. I'd really appreciate it.
I hope you will enjoy the run!

adelikat: Accepting for publication as a "glitched any%" category.
ShinyDoofy: Might as well get some use of the effort I put into Snes9x 1.51 on Linux... Claiming for encoding.

adelikat: Some good points in the discussion in the forum topic has caused me to change my mind. This will obsolete the current movie. Mainly this keeps our options open the most. The published movie is very outdated. This gives the option of re-deciding if we want a non-glitch any%, or a 100%, or a "all aspects" run, or whatever category might be most appropriate.


1 2 3 4 5 6 7
Editor, Player (69)
Joined: 1/18/2008
Posts: 663
This has got to be the best TAS replay I have ever watched. And here I was, waiting for your skip bosses trickery and other things you've posted. I guess a lot of that isn't so necessary anymore.
true on twitch - lsnes windows builds 20230425 - the date this site is buried
Joined: 11/22/2004
Posts: 1468
Location: Rotterdam, The Netherlands
Warp wrote:
Omega wrote:
At this point, save manipulation is sufficient to split the Chrono Trigger any% run into two categories, but I don't think there's a reason for us to not make game-specific categories in the future. It's probably perfectly acceptable to say "this game can be completed through two completely distinct routes, one vastly slower than the other, both of which are enjoyable to watch in their own rights, so let's allow people to keep both runs up-to-date".
As long as we remember that this concept cannot be applied to all games which contain glitches. There are some games where separating "heavy glitch abuse" and "no heavy glitch abuse" versions (whatever their game-specific definition might be) makes sense and produces two enjoyable movies. However, there are many games where a less-glitched version does not contribute anything significant. There are also some games where a less-glitched version might in theory be interesting, but where defining exactly which glitches are allowed and which aren't is very arbitrary and hard to justify in a logical manner. (As I commented earlier, trying to make a "no glitches" version of many games can become very difficult because it's really hard to define what constitutes a glitch and what doesn't.)
Yeah, I absolutely agree with you. That's why I think we should decide on these things on a per game basis. There's no need to be overly broad in deciding this. In fact, it would be very strange and backwards to say "here's a category, now go make some movies that fit in it". So I would support simply doing the same as what we did with Metroid. The criteria used is simply that both the long and short routes are interesting in their own rights.
Joined: 10/20/2006
Posts: 1248
Because the old run is so outdated I'm for this one to obsolete the older. I just don't see much reason to keep the old version public. If somebody was interested in it for historical reasons, they could still find it in the obsoletion chain. Obvious yes vote btw, I mean he figured out most of that stuff all by himself. o_O It totally breaks the game, but is no glitch straight to the credits run either. Instead it follows a rather exciting route. I was very entertained and can't wait for an in-depth description. ;)
adelikat
He/Him
Emulator Coder, Site Developer, Site Owner, Expert player (3573)
Joined: 11/3/2004
Posts: 4754
Location: Tennessee
For the record, I totally agree with you.
It's hard to look this good. My TAS projects
Joined: 11/22/2004
Posts: 1468
Location: Rotterdam, The Netherlands
Kuwaga wrote:
Because the old run is so outdated I'm for this one to obsolete the older. I just don't see much reason to keep the old version public. If somebody was interested in it for historical reasons, they could still find it in the obsoletion chain.
The question being posed here is if this run, being so different in concept than the old one, warrants being placed in a category of its own. If the answer is yes, there's no need for it to obsolete the old run (since it's in a different category). It's not necessarily a quality issue in the first place.
Banned User
Joined: 3/10/2004
Posts: 7698
Location: Finland
Omega wrote:
The question being posed here is if this run, being so different in concept than the old one, warrants being placed in a category of its own. If the answer is yes, there's no need for it to obsolete the old run (since it's in a different category). It's not necessarily a quality issue in the first place.
OTOH it wouldn't be the first time a run in a different category "obsoletes" an existing run. I think it happened with LoZ:OoT. (But as I have been saying, these things should really be estimated on a per-game basis. Not all rules can be applied to all games.)
Banned User
Joined: 8/2/2008
Posts: 420
Location: italy
I'm not sure what I just watched, but I liked it, some sections even made me laugh (like when that guy runned through the gate). Yes, obsolete.
Gone.
Joined: 4/2/2008
Posts: 103
Location: The Netherlands
This run should get its own category (any% with savegame abuse / savegame corruption abuse) but I think it should obsolete the old run because their goals are the same. I think there's room for a 'best ending' run or a 100% run and an any% run that explicitly avoids savegame abuse. (but would still be a lot shorter than the current run considering findings made since that run's publication)
Editor, Expert player (2330)
Joined: 5/15/2007
Posts: 3933
Location: Germany
After seeing that Pokemon Yellow run and now this one... Wouldn't it be a good idea to add a "save corruption" category/tag? It would also solve the obsoletion debate... As for the run itself, I lost count of how many resets were used. :P Good run!
Joined: 2/12/2008
Posts: 67
Location: San Francisco Bay Area, CA
MUGG wrote:
After seeing that Pokemon Yellow run and now this one... Wouldn't it be a good idea to add a "save corruption" category/tag? It would also solve the obsoletion debate... As for the run itself, I lost count of how many resets were used. :P Good run!
Exactly, I was thinking the same thing myself. Save corruption is something that I suspect a lot of games are vulnerable to. It basically comes down to whether the game has a checksumming algorithm (that can't be defeated, unlike Chrono Trigger's) or uses atomic transactions (does any game do this?). It's cool when it can be exploited, but you're really exploiting undefined behavior rather than bugs. (Not to mention that, given Snes9x's inaccurate timing, I bet a lot of these would work out differently on the console.) Since so many games are potentially vulnerable to save corruption, this site could become SaveCorruptionVideos.org if we consider save corruption to obsolete actual gameplay bugs. So IMO a general guideline of "separate categories for save corruption" would be best.
Former player
Joined: 12/5/2007
Posts: 716
MUGG wrote:
As for the run itself, I lost count of how many resets were used. :P
$ hexdump chronotrigger_any%_inichi.smv | grep -c "ff ff"
17
adelikat
He/Him
Emulator Coder, Site Developer, Site Owner, Expert player (3573)
Joined: 11/3/2004
Posts: 4754
Location: Tennessee
MUGG wrote:
After seeing that Pokemon Yellow run and now this one... Wouldn't it be a good idea to add a "save corruption" category/tag?
I highly agree with this.
It's hard to look this good. My TAS projects
Joined: 3/14/2005
Posts: 43
:O So this is what happens when you tamper with the fabric of space-time... (DEFINITE YES)
Skilled player (1652)
Joined: 11/15/2004
Posts: 2202
Location: Killjoy
Nightwatch wrote:
Save corruption is something that I suspect a lot of games are vulnerable to.
Unless the game is capable of saving in a single frame, which may be unfortunately often... Which sucks, because I love these save corruption runs. Also, console vs. TAS save exploits will be enormously different - TASes can only reset consoles at the frame marker - a console can technically stop the code at ANY point during the save, opening tons of new possible exploits. Unless, of course, the coders of the emulators allow for resetting the game at any point in code execution - but I doubt any coders would, seeing as the trade-off in time to implement versus the pay-off in TASes wouldn't be worth it.
Sage advice from a friend of Jim: So put your tinfoil hat back in the closet, open your eyes to the truth, and realize that the government is in fact causing austismal cancer with it's 9/11 fluoride vaccinations of your water supply.
Player (206)
Joined: 2/18/2005
Posts: 1451
If there are arguments that hero's run is just too old and outdated to maintain the best category this game can offer, you could always replace it with inichi's legit any% in 3:13 run, that according to himself is only improvable by ~30 sec, nothing over such a long time span. Just a note. EDIT: Sorry, fixed.
See my perfect 100% movie-walkthroughs of the best RPG games on http://www.freewebs.com/saturnsmovies/index.htm Current TAS project (with new videos): Super Metroid Redesign, any% speedrun
BigBoct
He/Him
Editor, Former player
Joined: 8/9/2007
Posts: 1692
Location: Tiffin/Republic, OH
You dropped the trailing V from that link, Saturn.
Previous Name: boct1584
Emulator Coder
Joined: 3/9/2004
Posts: 4588
Location: In his lab studying psychology to find new ways to torture TASers and forumers
Okay, I have to say this run is very bad. You have the chancellor saying that Marle kidnapped Princess Nadia, and putting her on trial? They're the same person! What are you doing? Ripping off the plot from that Hitchhiker's Guide to the Galaxy movie? Looking for a lawsuit? It's not fair use. It's not proper law. It's not proper playing. It's not a proper TAS. Just delete it now.
Warning: Opinions expressed by Nach or others in this post do not necessarily reflect the views, opinions, or position of Nach himself on the matter(s) being discussed therein.
Joined: 2/12/2008
Posts: 67
Location: San Francisco Bay Area, CA
DarkKobold wrote:
Unless the game is capable of saving in a single frame, which may be unfortunately often... Which sucks, because I love these save corruption runs. Also, console vs. TAS save exploits will be enormously different - TASes can only reset consoles at the frame marker - a console can technically stop the code at ANY point during the save, opening tons of new possible exploits. Unless, of course, the coders of the emulators allow for resetting the game at any point in code execution - but I doubt any coders would, seeing as the trade-off in time to implement versus the pay-off in TASes wouldn't be worth it.
Hmm, I hadn't thought about it that way before. I guess what it boils down to is that movie files are based on the assumption that input can never affect the game until the game decides to read it (i.e. no interrupts are generated on button presses), and that the game reads the input at most once per frame. These are pretty safe assumptions in the case of controller input. But resetting breaks these assumptions: whenever you hit reset, that causes an immediate interrupt on most systems. So reset isn't just a 13th button: all the other buttons are passively monitored by the game, while reset isn't (and in the case of the SNES isn't even under software control). Now most TAS's that use reset just use it as a quick way to jump back to the beginning of the game: it doesn't really matter when reset is done, so the fact that it can only be triggered at the start of the frame doesn't hurt anything, besides perhaps the loss of 1 frame. But when you're talking about save corruption, the timing of reset matters a lot. TAS-ing, being based around the concept of frame advance, just isn't designed for this very well. IMO it's another reason why save corruption should be in its own category.
Joined: 3/22/2007
Posts: 7
Random fact: The time improvement in this run is greater than the total time of the 79 fastest runs on this site, combined.
Joined: 6/2/2007
Posts: 55
Oddly enough, I agree with everybody in the the thread on this run. Watching it wasn't that entertaining, because I didn't really know what was going on. However, the concept of the video itself (and to a point, the graphical glitches, I guess) make it entertaining. It's something that's stimulating conceptually rather than...errr...visually, I suppose. For instance, let's say that with even more work, more memory address searching, more glitch abuse, and more exhaustive testing, it were possible to walk out of the house, and into the final battle. Even with a full explanation of why and how, the run wouldn't be very fun to watch - but it would still be an amazing technical breakthrough. For this, a yes vote - simply because it's an unrivaled technical feat...but I'd personally much rather watch the 0-star Mario64 run or the Harmony of Dissonance Maxim run. Amazing work, inichi
SXL
Joined: 2/7/2005
Posts: 571
The youtube video just begs for annotations, Foda.
I never sleep, 'cause sleep is the cousin of death - NAS
Player (48)
Joined: 3/11/2007
Posts: 94
Location: Japan
Just added an explanation for most of the tricks used in the run. I hope my explanation is not broken, and also make it clear more or less what was going on in the run.
Omega wrote:
Do the glitches work differently in that version?
You can reproduce what I did in the run in the Japanese version as well. Also, there are some memory addresses that you can't access in the Japanese version, but can in the English version such as Crono's second speed value, though I can't find any use of it.
DarkKobold wrote:
Also, console vs. TAS save exploits will be enormously different - TASes can only reset consoles at the frame marker - a console can technically stop the code at ANY point during the save, opening tons of new possible exploits.
When I tested the glitch on console, I succeeded in overwriting an address for character's technique, which Snes9x should deal with between a frame. I might give it another try, looking for something interesting. Also, I even tested the glitch on CT DS. The result was... please do not ask:)
Editor, Player (69)
Joined: 1/18/2008
Posts: 663
Nightwatch wrote:
IMO it's another reason why save corruption should be in its own category.
Completely agree.
onReload wrote:
Watching it wasn't that entertaining, because I didn't really know what was going on.
Did you ever play Chrono Trigger? Are you a fan? I am guessing not... For those who love the game, this TAS is likely to be extremely entertaining. For those who haven't, I can see how it wouldn't be. The entertainment comes from the complete rape of the plot - if you don't know it, you won't get it.
true on twitch - lsnes windows builds 20230425 - the date this site is buried
Joined: 11/22/2004
Posts: 1468
Location: Rotterdam, The Netherlands
inichi wrote:
Also, I even tested the glitch on CT DS. The result was... please do not ask:)
Now you got me all interested. Was the game broken completely?
Joined: 10/20/2006
Posts: 1248
Shouldn't method 3, phase 3 read Hide 1 Null 1 Hide 1 Bronze 2 Null 2 Bronze 2 Null 0 Hide 1 Hide 1 Null 0 Bronze 2 Bronze 2 ?
1 2 3 4 5 6 7