Several people suggested I do a run of Sonic and Knuckles 3 to see if I could improve on SprintGod's run. I didn't think I could improve such a perfect run by more than a few frames, but it soon became clear that I was completely wrong about that. SprintGod's movie is full of amazingly precise playing and several tricks I have to admit I never would have found, but there were still some glitches he didn't find and some occasional slight imprecision in the playing. Also, he played 1-player with Sonic instead of 2-player with Sonic and Tails. Tails makes quite a difference, although my (extremely rough) estimate is that about 50% of this improvement could have been made without him. I should emphasize that I had (/made) much better tools for making this run than SprintGod had. Speed display + camera hack for each character + map maker + jump predictor + multitrack recorder... In any case, the result was a significantly (about 10 minutes) shorter movie.
Level
Time
Units Improved
Angel Island 1
0:38
5
Angel Island 2
1:16
2
Hydrocity 1
0:33
10
Hydrocity 2
1:04
16
Marble Garden 1
0:37
10
Marble Garden 2
0:35
25
Carnival Night 1
0:34
8
Carnival Night 2
1:08
38
Icecap 1
1:16
11
Icecap 2
0:00
41
Launch Base 1
1:38
10
Launch Base 2
1:07
2
Mushroom Hill 1
0:46
2
Mushroom Hill 2
0:37
23
Flying Battery 1
1:08
36
Flying Battery 2
1:14
98 (1:38)
Sandopolis 1
1:45
8
Sandopolis 2
1:28
39
Lava Reef 1
1:12
26
Lava Reef 2
0:51
129 (2:09)
Hidden Palace
0:26
0
Sky Sanctuary
0:52
3
Death Egg 1
1:04
27
Death Egg 2
2:18
34
Total
24:07
565 (9:41)
I chose to not use death to save time, either in-game or real-time; SprintGod didn't use death either, and probably more people would be annoyed by it than appreciate it in this case. This also applies to entering bonus games, which interrupt the action and put you back at the last checkpoint and roll back the timer in a way similar to dying.
Thanks to Upthorn for showing how to activate the glitch in Icecap 1 and another glitch in Marble Garden 1, and for his Knuckles movie to give another source of ideas and comparison, and for giving some feedback about this movie while it was in progress, and for his recent work on Gens and help with some tools in it. And I believe it was mike89 on Sonic Center who revealed the Marble Garden 2 glitch.
See SprintGod's comments for a good explanation of the game's basic physics and quirks/glitches. Some more detailed (but currently very incomplete) information can be found at Sonic the Hedghehog tricks. A few things to add are: Acceleration is better in the air than on the ground, but deceleration is better on the ground (unless rolling) than in the air. Most of the glitches used to pass through objects work by tricking the game into putting those objects offscreen long enough for Sonic to pass through them, because the game does not do any calculations with objects that are offscreen.
Sorry for what I do to Icecap 1 and 2, but it is clearly much faster than beating it normally, and at least Icecap 1 has some nice music to listen to.
Some things that might seem like mistakes:
At the end of Mushroom Hill 1, Tails has to hit the signpost to the far left, otherwise Knuckles won't appear. I get a fire shield earlier because it is not in the ground anywhere on that screen to get from the signpost.
In Hydrocity 2, I have to wait for the third timed object, but starting that level enough later to save another time unit would place the first and/or second timed objects in places where I would need to wait even longer to get through.
The "teleport" glitch I use mainly in Launch Base and Lava Reef requires that Sonic be on the ground and at high speed from more than half of a screenful away (so it is not possible to use it in very many places), and sometimes it is slower even when it is possible because there is rarely enough time to do a full-speed spin dash when doing it.
Ending Flying Battery 2 where I do is actually faster than ending it with Sonic all the way to the right because of the jump, and the flying glitch I would normally do to save time is not possible there because of the type of ground.
At the very end of Hidden Palace zone, the game has a bug where it forgets to return control to player 2. The level won't end until both Sonic and Tails are in place by the teleporter, so I make Tails go there indirectly by using Sonic's command for a spindash as a jump for Tails.
In Launch Base 1, I run past a booster without triggering it because I am already moving faster than the booster speed, and rolling down that decline would be slower because rolling has a speed cap (which running does not).
I briefly pause the game before the fight with Metal Sonic in order to manipulate his random attack pattern into something better (the same one SprintGod had).
When Tails is uncontrollable, he can be tricked into landing early by jumping at the right height near him. But it is difficult to make him actually arrive anywhere earlier; the game will take away his control and teleport him to a predefined nearby spawn point when he has spent too much time offscreen, giving player 2 typically less than a second of control over when he starts flying (very slowly in the vertical direction) to reach you. He only arrives quickly at boss fights because the edge of forced screen boundaries will push him there.
The start of Mushroom Hill 2 (while offscreen) progresses more slowly than normal because all of the loops are broken (they are impenetrable walls that must be jumped on top of) and the springs and other objects are not there.
In Sandopolis 1, I don't use Tails to bypass the red spring under the sand river because it's not enough faster to avoid the next wait for a timed object.
I found a way to skip the midboss of Launch Base 2 that would save time, except it causes the timer to not stop for the extremely long cutscene.
The Launch Base 1 boss is "afraid" of Sonic and moves up when Sonic is in the air nearby it, so it's faster to kill it with Tails alone and keep Sonic always under it.
Sonic can't touch any of those moving platforms in Flying Battery without losing the glitch.
It's possible to zip further into the level in Launch Base 1, but doing so would skip the speed shoes and ultimately be slightly slower.
No death
Aims for fastest (primarily in-level) time
Ignores delays caused by bonus effects
Takes damage to save time
Abuses programming errors in the game (a lot)
Manipulates luck (a little)
One player controls two characters
Emulator used: Gens Movie Test 9j (works with 9f, etc.)
OMG, This is better than porn!!!
I rarely comment on this board but i had to say.
This movie defines TASing
i was so entertained right form the start.
The whole tails and sonic acting together just makes it so much next level(many times i was laughing at their antics).
This is sheer abuse, i LOVE it
Seeing as I can finally vote, I'm obviously going to vote yes to this. This is one of my favorite games from my childhood and I was very amused as to how much Nitsuja broke it.
Can't even wait for the score to add up in Mushroom Hill 1, eh?
Joined: 6/13/2006
Posts: 3300
Location: Massachussetts, USA
we are very fortunate that spezzafer is giving this another try. While Nitsuja would be the man to do it if spezzafer couldn't finish it, just be glad it's being worked on again, assuming spezz can find the tool to help him see Yoshi's speed (mem watch?)
Could you explain that better? Tails can't damage Knuckles when Knuckles is landing from being hit, and Tails doesn't have control once the floor falls.
Perhaps he was thinking similarly to the fact that if you stand where Knuckles lands as Super/Hyper Sonic, you damage him a lot faster.
But I doubt that will work with Tails spindashing in place.
What a weird situation. Faster in real time, but it keeps the timer going, but it's a cutscene that some might say could be ignored for purposes of "bonus effects" or whatever. I would vote to actually skip that boss, myself.
Edit: Also a note could be included to say what the time would be if the timer had stopped.
<Swordless> Go hug a tree, you vegetarian (I bet you really are one)
There's a similar choice to be made with Knuckles but it's much more extreme. Knuckles can get to the mid-boss that Sonic fights, and stop the timer, which then doesn't restart until Mushroom Hill, which saves 15-20 seconds of in-game time, but then he has to sit through the cutscene, and fight both of his bosses on a completely flat surface, which adds up to about 70 seconds of extra real time.
But the other thing to take into account is that duplicating the glitch, as I understand it, could easily take 30000 to 50000 rerecords, and Gens doesn't have any bisqbot-like tools to simplify the process.
Edit: Not to mention that the submission clearly states that it aims for fastest in-game time, and there are other places where he does something which is slower in real time, but causes the timer to stop.
How fleeting are all human passions compared with the massive continuity of ducks.
I generally disagree with going for in-game time over real time, the exception being end of level bonuses. Kinda arbitrary and weird I know, but that's my opinion.
If you really wanted to go all-out with the in-game time thing, it would make sense to abuse checkpoints to reset the subseconds to 0 when it would save an in-game second. It would even make sense to get a time-over in every level and start from a checkpoint at 0:00. I think both of these ideas are horrible, and most people seem to agree.
So to sum up, my opinion is that not skipping the midoss, saving real time in the process, is a very bad idea.
If you really wanted to go all-out with the in-game time thing, it would make sense to abuse checkpoints to reset the subseconds to 0 when it would save an in-game second. It would even make sense to get a time-over in every level and start from a checkpoint at 0:00. I think both of these ideas are horrible, and most people seem to agree.
Which, if you read the submission text, is why Nitsuja chose not to use death, even where faster in real time. Thusly allowing him consistently to go for in-game time over real time, without going to absurd extremes.
How fleeting are all human passions compared with the massive continuity of ducks.
If you really wanted to go all-out with the in-game time thing, it would make sense to abuse checkpoints to reset the subseconds to 0 when it would save an in-game second. It would even make sense to get a time-over in every level and start from a checkpoint at 0:00. I think both of these ideas are horrible, and most people seem to agree.
Which, if you read the submission text, is why Nitsuja chose not to use death, even where faster in real time. Thusly allowing him consistently to go for in-game time over real time, without going to absurd extremes.
I hear you. However, there's no real good reason these "absurd extremes" aren't used, except for "they suck". Which, don't get me wrong, is a good enough reason, I'm just saying that when you decide that the cutoff between what's absurd and what's being used is at a certain point (checkpoint abuse is not ok, stopping in-game timer in exchange for long cutscene etc is ok), you'll have people disagreeing with it, probably from both extremes ("more absurdity!" and "less absurdity!"). In this case I'm saying less absurdity.
I'm basing my decision on the basis of "go with what looks cooler!" In Angel Island 1, the trick that prevents the clock from starting for a bit is in exchange for real time, and it's cool looking. Launch Base 2's idea would give up some game time, but it still would look cooler than the alternative (I would think).
Or find a way to skip the boss and have Tails stay behind and kill it so the clock still stops. :)
<Swordless> Go hug a tree, you vegetarian (I bet you really are one)
Joined: 8/8/2005
Posts: 296
Location: NSW, Australia
JXQ wrote:
Or find a way to skip the boss and have Tails stay behind and kill it so the clock still stops. :)
THAT WOULD BE SO COOL
Upthorn, as for the Knuckles path through LB2 (which, for the record, is my finding) I think 30-50 rerecords might be a better estimation. As in, I can do that in real time (though not nearly as effectively).
Here's a sample GMV (with GST) which demonstrates this route. I think Upthorn also tried it and was a bit quicker...
Mike89, I think Upthorn was talking about skipping that boss with Sonic taking so many rerecords. But an interesting movie for Knuckles there :)
I have another question, after understanding Sonic more and watching this run a bit more closely - how does the zipping at the end of Lava Reef 2 work? Does that part of the platform just not have sufficient flooring?
<Swordless> Go hug a tree, you vegetarian (I bet you really are one)
When Sonic is moving forward while jumping, and collides with a corner, depending on his y position, and x and y speeds, the game will let him pass through the corner.
Meanwhile, collision with flooring is only checked when the player is falling downward (or is already on the floor)
With the right combination of x and y speeds, it's possible to pass through the corner there, and then fail to make the height onto the step, at which point the player falls through, and lands on the step below.
But since he's still inside the step he just fell through, he can hold left or right to zip.
How fleeting are all human passions compared with the massive continuity of ducks.
I remember I used to do a trick where Knuckles and Tails ended up constantly hitting each other (since they were occupying the same position), but I don't remember exactly how it was. (And it was on real time, so it should be easy to do on a TAS)
I remember I used to do a trick where Knuckles and Tails ended up constantly hitting each other (since they were occupying the same position), but I don't remember exactly how it was. (And it was on real time, so it should be easy to do on a TAS)
Well try making a video of it or something. I already spent a few hours trying to get that to work with no success, and knowing that someone else thinks it's possible (but doesn't know how) doesn't change anything.
JXQ wrote:
Launch Base 2's idea would give up some game time, but it still would look cooler than the alternative (I would think).
It would save about 2 seconds of real time, if it can be completely optimized. It would lose 46-48 seconds of in-game time. It does look cooler (and it would unquestionably be the most difficult-to-optimize trick in the entire run), but it also looks like a big mistake to get such a poor time on that act.
JXQ wrote:
Or find a way to skip the boss and have Tails stay behind and kill it so the clock still stops. :)
It might be possible, but if it is it's slower. 7 invulnerability periods of that boss > 2 seconds. EDIT: Also, Tails needs to be on the top part of the level many screenfuls above, and can't possibly fly down fast enough.
It might be possible, but if it is it's slower. 7 invulnerability periods of that boss > 2 seconds.
The glitch must be different than I thought, or require Tails or something. I meant you could perform the glitch, jump in the little Robotnikmobile, while Tails kills Robotnik as fast as he can (hopefully as fast as Sonic would), saving real time and getting the same game time.
<Swordless> Go hug a tree, you vegetarian (I bet you really are one)
I just noticed, thanks to AKA's March Fools' Day submission, that the level time listed in the submission for Marble Garden 2 should be 0:35, not 0:34.
<Swordless> Go hug a tree, you vegetarian (I bet you really are one)
ehh... I have a question...
Is it possible to finish Launch Base 2 by the Knuckles end with Sonic, to skip the animation (with knuckles when he hit sonic's ship) just before the boss...
...sorry for my english...
Is it possible to finish Launch Base 2 by the Knuckles end with Sonic, to skip the animation (with knuckles when he hit sonic's ship) just before the boss...
It's easily possible, but (unfortunately) the game forgets to go to the next level after the bonus countdown