In that case, don't forget to take into account the (many) Hydrocity 2 glitches in both my v1 and v2 runs. They were very different from each other and from SprintGod's, and neither of them went through the left edge of the level. If nothing else, skipping the Knuckles cutscene should still be possible, since you have the bubble shield then.
Also, while I went through the left edge of Carnival Night 1, the bug that made that possible was really weird and might be able to save time in other ways too, at least near the start of the level.
And, I'd say "no deaths" should be a goal too.
Mmm...my personal opinion is that if you're going to block one glitch, you should block all of them. That would make the run markedly different from the existing glitchy runs, and I know there's a sizable audience for a glitchless S3K run.
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
I implemented one of them, yes: the initial wall zip from the second run. It had the very nice side effect of placing all timed objects in the best possible position to reach the final giant ring in Hidrocity 2. I haven't tried skipping Knuckles yet, but it is a good idea.
I will keep it in mind; but how does that bug work?
Agreed. I am planning on getting hit here or there to lose a shield so I can use Supersonic or Hypersonic (primarily the latter), but I will definitely avoid deaths.
If you brush against one of those (ferris?) wheels without actually landing on it (which is relatively easy to do from a balloon pop jump, but maybe it has to do with the item monitors under it), you'll land back on the ground, but the game will apply on-the-wheel physics to you. So you can stick to any surface, and if you walk off an edge you'll fall off of it very quickly even if that means falling sideways or straight up. Sometimes it can push you through things too. It's really tricky to put it to good use, like it's a puzzle, but it could be possible (I didn't fully explore it going up/right). Canceling the effect is easy: just jump, and the game will think you jumped off the wheel and return you to normal wherever you actually are.
WIP until end of Hidrocity 1.
I have been having problems duplicating the trick to bypass Knuckles in Hidrocity 2 because my subpixel position is in the wrong range, so it is still there for now.
Marble Garden 2 benefits slightly from Supersonic; towards the end of the stage, the junk above the top of the stage is different than in SprintGod's run, but still passable; using Supersonic there helps because of higher acceleration.
In Carnival Night 1, I can go Supersonic on the way by avoiding the fire shield, and it results in a decent improvement; I am still toying with using the wheel glitch.
As Carnival Night 2 (not in the WIP): this level is really frustrating me to no end. The wall zip used in Nitsuja's run is surprisingly difficult to do and it always leaves me either too high or too low in the wall, resulting in me getting stuck. Also, differences in timing (luck?) prevent me from getting to that initial pole as efficiently -- and even though it allows me to get inside a wall (say, by using the bubble shield at the right frame) and zip, it is still slower as I appear in the room with 3 monitors and have to fall to the ground, pick at least one of the monitors and exit right.
I also have been trying to glitch into Knuckles' route, without much success.
Yeah, a lot of this stuff is surprisingly difficult...
I remember the Hydrocity 2 Knuckles bypass trick being more a matter of perfect timing than anything else, but it was a little hard to get it to work so I wouldn't be surprised if subpixels have something to do with it too. Actually, it could be that this trick requires Tails and I'm telling you to do something impossible, but I thought I was able to do it with Sonic alone too (just with more difficulty and a slightly slower setup). The alternate path for skipping Knuckles used in my v1 run should definitely work, but that should be a last resort since it's a lot further out of the way. Also, there's a trick with going through the cross of slides that would start to happen around frame 39500 in your movie that you didn't do, did you decide it wasn't possible somehow due to the route you'd taken? And the zipping near there didn't work well either? One more thing, I know it doesn't matter too much, but I'd try to prevent the drowning countdown from interrupting the music in that act.
The Carnival Night 1 wheel glitch is a long shot... I brought it up since we should be sure all the possibilities are covered, but there's a decent chance that just going Super as soon as possible will win out. I think you forgot to keep the camera scrolled down at the end of this act to make the goalpost hit the ground faster.
Carnival Night 2 is packed full of hard-to-do-even-in-a-TAS tricks. I wouldn't worry about it too much yet though, in case Act 1 affects something.
I think it saves a little time to use the fire shield right before entering Hydrocity 1.
If you're not already doing this (my guess is that you aren't), I suggest setting up your emulator to draw ghost images of the other TASes so that you can compete against them more directly and see more precisely where you fall behind or pull ahead, and also so that you can compete against yourself (your other savestates) for general optimization even when the other TASes aren't anywhere near you.
By the way, did you make this video? Well, that looks like something to look forward to in Ice Cap 1...
I remember the Hydrocity 2 Knuckles bypass trick being more a matter of perfect timing than anything else, but it was a little hard to get it to work so I wouldn't be surprised if subpixels have something to do with it too.
So far, I have encountered many tricks that require high subpixel precision to pull off like you did in your run (like the jumping-at-the-end-of-the-tunnel trick at the end of Angel Island 2, which requires subpixel position to be off by no more than 3 subpixels -- in either direction -- at the next-to-last spindash before the final tunnel).
nitsuja wrote:
Actually, it could be that this trick requires Tails and I'm telling you to do something impossible, but I thought I was able to do it with Sonic alone too (just with more difficulty and a slightly slower setup.
Tails didn't seem to be doing anything useful there; I will double-check the timing issue and try a little bit more to see if I can get it to work.
nitsuja wrote:
Also, there's a trick with going through the cross of slides that would start to happen around frame 39500 in your movie that you didn't do, did you decide it wasn't possible somehow due to the route you'd taken? And the zipping near there didn't work well either?
I still have to test whether or not the position of the rotating cylinders is helpful if I zip, or I may end up wasting as much time reaching the big ring as I save with the zip. I hadn't tried it yet because they were in an unhelpful position in your run (and the left cylinder was moving down rather than up); but then again, I don't have Tails to give be a boost around the point you mention either, so it may be that it works well.
nitsuja wrote:
One more thing, I know it doesn't matter too much, but I'd try to prevent the drowning countdown from interrupting the music in that act.
Drowning countdown? What drowning countdown? [watches section in real time] Oh, I had missed it completely! I will see about fixing that. Of course I could leave it if it had gotten close to zero, but it doesn't... (in my first try, I ended up going slightly above the waterline as I turned around, which would have prevented the countdown; but then Sonic died a mysterious death when hitting the corner).
nitsuja wrote:
I think you forgot to keep the camera scrolled down at the end of this act to make the goalpost hit the ground faster.
I missed that, yes; but I am still thinking if I want to grab a 10-ring monitor (for Supersonic) or the bubble shield, so I haven't completely finished Carnival Night 1 yet.
nitsuja wrote:
Carnival Night 2 is packed full of hard-to-do-even-in-a-TAS tricks. I wouldn't worry about it too much yet though, in case Act 1 affects something.
Ah, that is refreshing to know...
nitsuja wrote:
I think it saves a little time to use the fire shield right before entering Hydrocity 1.
Hm. I was aware that using a bubble bounce was faster, but I had thought that you did the fire shield trick for "show"; nevertheless, I will try it.
nitsuja wrote:
If you're not already doing this (my guess is that you aren't), I suggest setting up your emulator to draw ghost images of the other TASes so that you can compete against them more directly and see more precisely where you fall behind or pull ahead, and also so that you can compete against yourself (your other savestates) for general optimization even when the other TASes aren't anywhere near you.
How do I go about doing that? So far, I have been using multiple emulator windows, all synchronized to about the same spot in the different runs so I can compare how things are going (and all watching the relevant RAM addresses); but the ghost images of other savestates would definitely be interesting.
nitsuja wrote:
By the way, did you make this video? Well, that looks like something to look forward to in Ice Cap 1...
No (I don't have an YouTube account yet), but I was immensely amused by it! I will definitely try to replicate it.
New WIP up to the end of Carnival Night 1.
The flame shield indeed saves several frames at the end of Angel Island 2.
Subpixel manipulation at the end of Hidrocity 1 allows me to duplicate the start of Hidrocity 2 to be exactly like Nitsuja's second run, saving a ton of frames; the lack of Tails to boost me places the timed objects in exactly the right position to immediately reach the giant ring by delaying the exit from the second wall zip by a few frames (also saving several frames - about 140 compared to the bottom route, which now had the cylinders in the wrong positions). Moreover, I managed to skip Knuckles there too.
Marble Garden and Carnival Night 1 are unchanged.
How do I go about doing that? So far, I have been using multiple emulator windows, all synchronized to about the same spot in the different runs so I can compare how things are going (and all watching the relevant RAM addresses); but the ghost images of other savestates would definitely be interesting.
Well, try saving this Lua script (download link) and running it in Gens, then TASing like normal. You should notice it working right away for comparing against yourself for any savestates you make going forward, which I think is already pretty useful. Note that you need Gens11a or newer for it to work, it will be kind of broken if you try running it in Gens11 instead of Gens11a.
This script can also already handle comparing against other (existing) movies, but that takes a little extra setup since you have to actually provide it with the ghost data for those movies. The comments say how to add in ghost data (start running the script, start playing the other movie and fast-forward until the end, save a state, then rename the newly-created .luasav file in your savestates directory to something in-between "YOURROMNAME - YOURMOVIENAME.gs10.luasav" and "YOURROMNAME - YOURMOVIENAME.gs14.luasav") but I can provide that data later if you want, possibly in a Lua-only format instead of .luasav if that would be easier.
i like what i see in these WIPs. but i fear for this run's future. what exactly is "low glitched"? not using zips to go directly to Eggman, but using them elsewhere is going to be tough to justify when it comes to judging. it could be considered an arbitrary restriction.
if it were me making this run, i would play it safe and never enter a wall.
i like what i see in these WIPs. but i fear for this run's future. what exactly is "low glitched"? not using zips to go directly to Eggman, but using them elsewhere is going to be tough to justify when it comes to judging. it could be considered an arbitrary restriction.
Underflow of the horizontal position variable is a very specific abuse of the program, which is different from zipping, and in certain situations would not even require zipping. However, those situations do not exist in this game.
If he additionally does not travel above the level cieiling at any time, this could very easily be justified as "Stays within level boundaries".
How fleeting are all human passions compared with the massive continuity of ducks.
i like what i see in these WIPs. but i fear for this run's future. what exactly is "low glitched"?
As Nitsuja pointed out earlier in the thread, the only really meaningful "glitch categories" are "anything goes", "anything goes except instantly warping from start to end of act" and "no glitches". There are published runs in all of these rough categories (such as Tompa's Zelda runs). Hence, I opted to use the second category.
upthorn wrote:
If he additionally does not travel above the level cieiling at any time
This is done in Marble Garden 2 to reach Knuckles' boss (and, technically, in Mable Garden 1); so I would have to restrict it as "does not underflow horizontal position" (or maybe "does not warp past levels").
The more I watch those special stages, the more I think there might be room for improvement. I'm probably thinking about it too much, but maybe not.
For example, at the end of special stage 2, the last two sets of 12 blue spheres occur right next to each other. Pardon my crappy paint skills here:
This has probably been tested, and I haven't tested it myself, but on paper it looks faster. My understanding of the special stages is that they are done to get as few rings as possible, mainly to reduce the length of the score count-up at the end of the stage, but surely it would be faster to accept a few rings in order to travel a shorter distance overall? Besides, there wont be that much difference between the speed of a 5 ring count-up and a 2 ring count-up, for example.
I'm probably just splitting hairs, but I still cant shake the notion that the special stages don't all follow the most optimal route and there is room for improvement. With it being a somewhat 3D area it is understandably harder to plan for, but not impossible.
At the starting speed walking straight to the next "intersection" takes 16 frames, turning takes 14 frames. At the next speed level walking to the next intersection takes between 12 and 13 frames, turning still costs 14.
At the starting speed your proposal is 6 frames faster by my calculations.
Current route = 8*16 + 14 + 2*16 + 14 + 8*16 + 14 + 16 + 14 + 5*16 = 440
Your route = 8*16 + 14 + 2*16 + 14 + 3*16 + 14 + 16 + 14 + 2*16 + 14 + 16 + 14 + 3*16 + 14 + 16 = 434
He was already going at a faster speed though.
Actually, moving speed walks somewhat like this:
Between two interesection there are 8 steps Sonic has to move.
At his initial speed he takes a step every second frame. That's 4 steps in 8 frames.
At his second speed he pauses 3 frames for 5 steps. (pause, move, pause, move, move, pause, move, move). After having Sonic turn the chain doesn't always start from the same point. That's 5 steps in 8 frames.
At his third he puases every fourth frame. That's 6 steps in 8 frames.
At his fourth he pauses every eigth frame. That's 7 steps in 8 frames.
At his final speed he moves 8 steps in 8 frames.
There are 5 speed levels. Here is how many frames it takes Sonic to go from intersection to intersection on average for any of them:
lvl 1: 16 frames
lvl 2: 12,8 frames
lvl 3: 10,67 frames (10 2/3)
lvl 4: 9,143 frames (9 1/7)
lvl 5: 8 frames
turning: 14 frames
Edit: First input is accepted 3 frames before Sonic's shadow appears. That marks the start of the bonus level. From there on every 1800 frames the speed level increases.
Jumping doesn't affect speed.
Walking into a bumper and getting reversed:
lvl 1: 16 frames
lvl 2&3: ~14 frames (only got 14 frames by testing, but it feels strange)
lvl 4: 12 frames
lvl 5: 11 frames
Turning around by pressing forward at lvl 1:
18 frames till you're at the same position
By turning around 6 frames earlier, then immediately turning right or left only 8 frames are wasted for turning around.
Instead of 8 steps you need to go to the next intersection, some events seem to be triggered earlier than that. Blue spheres turning into rings or the level ending happen 3 steps early for speed lvl 1 and 4 steps early for lvl 2.
Collecting a ring costs 1 frame at the score screen.
If you time it right you can jump over the rings the blue spheres turn into, saving one frame.
Wow, major new shortcut in Carnival Night 2: the (extremely provisional) WIP showing it is here.
As you can tell from the choices at the beginning, I was aiming for Supersonic; despite the slower start, there was a point that I was over two seconds faster than Nitsuja's run -- that is, until I reached the second pair of rotating cylinders. At that point (and the long diagonal poles afterward) I lost enough time that I finished the level 4 seconds slower.
I then noticed (in one of Upthorn's maps at the Sonic Center) the very convenient location of a ledge that could be bubble-abused; after a couple tries, I got into the wall. There is a set of hidden spikes there that prevent me from zipping immediately; after they get above ground, I can zip at over 8000 subpixels per frame to the end of the level, bypassing the offscreen (hence, inactive) boosters -- which would actually slow me down to 4096 subpixels per frame if they ever got into the screen. Sadly, it does not seem to be possible to skip Knuckles.
I haven't finished the level yet -- and will be redoing it from scratch for the new shortcut -- but I thought I should share this.
Now the actual WIP until the end of Carnival Night 2, being a "mere" 25 seconds faster than the existing runs; and now it has a few offscreen slope jumps for extra speed. I guess I just broke the Sonic landspeed record, reaching a whooping 8840 subpixels per frame for over a full second.
I feel the need to mention that sometimes in my general playthroughs, I've managed to go super/hyper without it changing the music. If anyone figures out how to do this intentionally I will love them forever.
So is this run going to become basically a zip a thon like the current run, but with the added bonus of having to sit through the special stages to get there, and instead of seeing the tile sets for each stage scroll by with the levels music, we get to enjoy the Super Sonic music?
Not understanding why this was restarted to not include Tails. I would have thought thats the last thing that people would have a problem with being too similar with considering where we are now.
I would have thought the point of doing the special stages would be to see Super/Hyper play through the levels. Something which the current any% Sonic run does not.
Still these might just be the ramablings of an anti zip (or whatever the correct term is.) fanboy.
Very nice find on Carnival Night 2. This gives at least one substantial thing to change in any further revisions of the other TASes.
Oh, maybe you just stopped entering new input before this, but the cannon launch from Carnival Night 2 to Ice Cap 1 should be done faster.
Paused wrote:
...basically a zip a thon like the current run... seeing the tile sets for each stage scroll by...
I don't feel like that's a valid description of anything, because most of these runs are not spent zipping. The zips are over very fast, with the exception of the "going around the level instead of through it" cases (which are more teleports than zips), and this run is omitting those. Sure, they replace a lot of gameplay, but what you see right away after each one is other gameplay...
Part of the reason for not including Tails was that Tails is required for a lot of the glitches, therefore it forces showing more of the levels. (And if we're trying to show off Hyper Sonic's capabilities then Tails would probably be dead weight most of the time.) A totally glitchless run would be a separate (and very much longer) run, although I'm not trying to argue against it being attempted.
NrgSpoon wrote:
I feel the need to mention that sometimes in my general playthroughs, I've managed to go super/hyper without it changing the music.
I think it's as simple as going super/hyper right as the "got an extra life" music starts to play. For example, on the exact frame that you get a 100th ring.
Oh, maybe you just stopped entering new input before this, but the cannon launch from Carnival Night 2 to Ice Cap 1 should be done faster.
I don't think it is possible without Tails; at least in your run, it is Tails which fires the cannon the first time, making it faster for Sonic; but all input for Sonic is ignored in the tries I made to replicate it.
nitsuja wrote:
(And if we're trying to show off Hyper Sonic's capabilities then Tails would probably be dead weight most of the time.)
Quoted for truth. I have been making a separate "concept demo" of Hypersonic in all levels to get used to TASing Hypersonic, and Tails would only slow Hypersonic down. This concept demo is available here; is through only Angel Island. The first 65984 frames is a copy-paste-rinse-repeat job, collecting all emeralds through the level select code; I recommend fast-forwarding through them and starting playback at frame 65985. Beware: may trigger seizures in susceptible people.
How likely would it be to find a time saver for one of the bonus stages? How much effort has been invested to come up with these strategies?
Tried to beat levels one and two, but couldn't come up with anything faster.