Actually that Leaf Storm 2 was pretty sloppy. I cut another 2 seconds off of it with a second pass of optimization. Then I found a ridiculous speed trick that saves about 8 more seconds (so act 2 is down to 0:39:87 now and I think it can go lower).
EDIT: Here is what that act looks like now if you don't mind being spoiled about it. Keep in mind that the second half is not optimized and that you might find it confusing.
This time I've hit the real speed limit: there is one point where Sonic's speed would have overflowed and wrapped around (32767 to -32768) if I had tried to go any faster. For reference, rushing speed is 3072, it's normally impossible to exceed 3840 speed for more than a frame, I can reach at most 4320 on flat ground, and 32767 is about 30 screenfuls per second.
I'm pretty sure it doesn't anymore.
I have no idea how to optimize the Leaf Storm boss. It seems like how long that battle takes is completely random. (I really hated that boss in normal play too.)
Joined: 10/11/2009
Posts: 52
Location: Sydney, Australia
...how the? How did you get that damn fast?! Also what happens if the speed wraps around to -32768?
With the Leaf Storm Boss, in fact with nearly all the bosses, luck is a huge factor. Something has to be determining what moves it makes. Wish i could help that in some way but i have no clue how to search memory for that stuff :/
If Sonic lands at the exact point where a somewhat-steep downhill slope meets flat ground, he'll gain a good amount of speed, and if he jumps off he'll gain even more speed and (if he was traveling fast enough and the slope is steep enough but not too steep) he'll immediately land on the slope again. So he can repeatedly jump and land all the way down the slope, gaining speed each time. Normally each speed gain only lasts for 1 frame, but by holding backwards the whole time they stay in effect and stack together.
Cruizer wrote:
Also what happens if the speed wraps around to -32768?
What I'm calling speed is perhaps more accurately called "potential horizontal velocity" and it takes effect whenever Sonic's feet are on the ground. So when it wraps around, Sonic suddenly shoots backwards at top speed. It might be possible to take advantage of this by doing the trick on a slope that's going the wrong way and then overflowing the speed to switch directions.
Thankfully, the camera never has trouble keeping up with Sonic no matter how fast he goes in this game. Also, it doesn't seem to be possible to get inside things and zip through them in this game... they must have upgraded how the collision works quite a bit.
Also, it doesn't seem to be possible to get inside things and zip through them in this game... they must have upgraded how the collision works quite a bit.
Thank god. Better let Sonic do speed and Megaman zipping.
Edit: I guess I could comment that what I've seen so far looks great.
Joined: 10/11/2009
Posts: 52
Location: Sydney, Australia
nitsuja wrote:
If Sonic lands at the exact point where a somewhat-steep downhill slope meets flat ground, he'll gain a good amount of speed, and if he jumps off he'll gain even more speed and (if he was traveling fast enough and the slope is steep enough but not too steep) he'll immediately land on the slope again. So he can repeatedly jump and land all the way down the slope, gaining speed each time. Normally each speed gain only lasts for 1 frame, but by holding backwards the whole time they stay in effect and stack together.
Oh I see now. Thanks for clearing that bit up for me.
nitsuja wrote:
What I'm calling speed is perhaps more accurately called "potential horizontal velocity" and it takes effect whenever Sonic's feet are on the ground. So when it wraps around, Sonic suddenly shoots backwards at top speed. It might be possible to take advantage of this by doing the trick on a slope that's going the wrong way and then overflowing the speed to switch directions.
So the Max speed will be 32767 no matter what way Sonic is facing, since if you wrap the speed more it'll approach 0 either direction. That sound right?
Uh, that's about right, if you go any faster you'll go in reverse and it will start approaching 0 from the other direction.
I shaved another 10 seconds off (putting this overflow to good use, actually), so Leaf Storm 2 is sub-30 seconds now. I guess I should look at act 1 more closely to see if it has any suitable slopes.
Joined: 11/11/2006
Posts: 1235
Location: United Kingdom
nitsuja wrote:
I shaved another 10 seconds off (putting this overflow to good use, actually), so Leaf Storm 2 is sub-30 seconds now.
This is why I love TASes. And nitsuja. TASes and nitsuja. :)
Just out of interest, have you found anything interesting with the boss(es)? Or have you been focusing on Act 1 and 2?
Edit: I suppose I should ask: with this glitch is it possible to underflow sonic's position and wrap around the level (a la sonic 3 & knuckles)?
<adelikat> I am annoyed at my irc statements ending up in forums & sigs
Just out of interest, have you found anything interesting with the boss(es)? Or have you been focusing on Act 1 and 2?
Just the first two acts so far. Well I tried the first boss but it seems it will be a very controlled boss fight that will still be boring even if it's possible to manipulate luck perfectly.
I also tried Blaze a bit. In a TAS her gameplay will be incredibly different from Sonic's. A spindash jump gets her up to higher speeds than rushing, she can't gain speed by jumping and pressing R, and the huge speed on hills trick probably isn't possible (because it relies on that move). She can however user her horizontal R trick to reach 5000 or so speed (in situations where Sonic can't always go that fast), which is only supposed to last for an instant but can be kept by doing it exactly flush with the ground and holding backwards. And of course her up+R tricks shoot her way high up into the air and her R move hovers which makes it possible to take shortcuts everywhere. Maybe the best place for Blaze is as part of a 100% TAS though? Or would it be better to put her in a separate movie, or tack it onto the end of an any%?
Raiscan wrote:
Edit: I suppose I should ask: with this glitch is it possible to underflow sonic's position and wrap around the level (a la sonic 3 & knuckles)?
Nope, it looks like they finally removed that feature. I was able to slam into the left boundary of act 1 with an x velocity of -20000 or so, but nothing much happened.
Great to hear. I had feared Blaze would just be a slower copy of Sonic's run.
nitsuja wrote:
Maybe the best place for Blaze is as part of a 100% TAS though? Or would it be better to put her in a separate movie, or tack it onto the end of an any%?
Whilst Blaze is not effected by the need to get Emeralds in a 100% run, she would presumably still need to get S ranks to fit the 100% requirements?
So I would not only use Blaze in the 100%, but have an any% for her too. (Either a seperate submission (even if she has to be unlocked somehow) or added on to the Sonic any%) Regardless having a Blaze run as well as Sonic would be cool.
You get a Sol Emerald for each boss you beat as Blaze, and they're needed to unlock the final boss, right? That's why I said that Blaze is required in a 100% run. I don't think we should concern ourselves with ranks; 100% in Sonic games has always meant getting all the emeralds, AFAICT.
If I recall correctly, you unlock Blaze as soon as you encounter her in the story when playing as Sonic. I don't think it's more than a couple of worlds in. It's been awhile since I last played though.
Pyrel - an open-source rewrite of the Angband roguelike game in Python.
Yes Sol Emeralds are collected automatically as you go through the game with Blaze, so you just have to finish her story to do her part of unlocking the last story. (As apposed to both finishing the story and clearing the special stages, that Sonic has to do.)
And she is unlocked after beating the first boss as Sonic.
Derakon wrote:
I don't think we should concern ourselves with ranks; 100% in Sonic games has always meant getting all the emeralds, AFAICT.
Though that is true, there have never been Ranks to consider in Sonic games here before this one.
I would have thought that at the very least S ranks would be needed in 100% to help differenciate from the Any%. Otherwise half of Sonic's levels will be identical. And I would imagine the levels which Special Stages will be entered would be very similar also.
Edit; (Off Topic) Just remembered SonicCD also has an 100% definition that is upto debate beyond Emeralds. (The 'Good Future machines' and Metal Sonic Holograms.)Edit 2; Also remembered Sonic Advance 3 technically has an addition to the 100%. You need all 3 Characters as well as all Emeralds.
So... has there been anything worth showing off, of the Blaze run or progress on Sonics run?
So... has there been anything worth showing off, of the Blaze run or progress on Sonics run?
The only progress so far is getting 0:26:33 on Leaf Storm 1 and 0:29:43 on Leaf Storm 2. I don't know if it's worth showing off yet.
Cruizer wrote:
Have there been any new developments with the Leaf Storm Boss? (I would love to see what you do while you wait for an attack opportunity too x3)
Well, I'm still trying to figure out how to get anywhere near 1:43:72 (the current record here). It might actually be impossible to even get below 1:50:00 without intentionally dying some number of times in order to manipulate luck, and I'm not sure what to do if that's the case. I've found that the number of time-wasting rolls the boss is about to do gets stored at address 0x20902E8, and that the boss can sometimes "change its mind" about how many rolls to do depending on where you are standing relative to the position the boss last attacked at and how close that is to either edge. (And a value that might be related to which random sequence the boss is currently following is stored at 0x20902DA.) In order to get a good enough time it seems necessary to manipulate the boss to do no more than 5 rolls in total (and preferably fewer) but the best patterns I've ever seen so far are 1+2+3 and 1+1+4. Anyway it seems like it will take some serious analysis of the code to be certain, and... I haven't started doing that yet.
Joined: 10/11/2009
Posts: 52
Location: Sydney, Australia
nitsuja wrote:
Cruizer wrote:
Have there been any new developments with the Leaf Storm Boss? (I would love to see what you do while you wait for an attack opportunity too x3)
Well, I'm still trying to figure out how to get anywhere near 1:43:72 (the current record here). It might actually be impossible to even get below 1:50:00 without intentionally dying some number of times in order to manipulate luck, and I'm not sure what to do if that's the case.
Well if SDM/mike89 and the rest all get those times, it has to be possible as they are all very trustworthy. Maybe it has something to do with Story Mode vs. Time Attack Mode?
nitsuja wrote:
I've found that the number of time-wasting rolls the boss is about to do gets stored at address 0x20902E8, and that the boss can sometimes "change its mind" about how many rolls to do depending on where you are standing relative to the position the boss last attacked at and how close that is to either edge. (And a value that might be related to which random sequence the boss is currently following is stored at 0x20902DA.) In order to get a good enough time it seems necessary to manipulate the boss to but the best patterns I've ever seen so far are 1+2+3 and 1+1+4. Anyway it seems like it do no more than 5 rolls in total (and preferably fewer) will take some serious analysis of the code to be certain, and... I haven't started doing that yet.
Would that "mind change" be stored somewhere else? And if i recall correctly, the last set of rolling is faster than the previous ones. So i think the 1+1+4 is better.
It might actually be impossible to even get below 1:50:00 without intentionally dying some number of times in order to manipulate luck, and I'm not sure what to do if that's the case.
Well if SDM/mike89 and the rest all get those times, it has to be possible as they are all very trustworthy. Maybe it has something to do with Story Mode vs. Time Attack Mode?
It probably has more to do with the fact that they are able to try over and over until they get the best possible luck, whereas a TAS can't do that without subjecting the viewer to watching all of the "failed attempts" that are used to manipulate luck. And it would be a shame if that were necessary, so I'm trying to avoid it. It seems like nothing else affects the randomness here, since nothing before the boss uses the RNG and it doesn't start in a random state, but I'm not completely certain of that yet. Possibly the only way to be completely certain about it is to understand the code that leads to the boss choosing its actions.
Cruizer wrote:
And if i recall correctly, the last set of rolling is faster than the previous ones. So i think the 1+1+4 is better.
It's still not good enough, though. And one of the times on TSC, not even the fastest one, claims to have been gotten with 1+1+3. And now that I think of it, maybe that 1+1+4 I saw was really a 1+1+4+2 or something equally bad, since I think whenever I change the second set from 2 to 1, the boss tacks on an extra set of rolls to compensate.
Joined: 10/11/2009
Posts: 52
Location: Sydney, Australia
nitsuja wrote:
It's still not good enough, though. And one of the times on TSC, not even the fastest one, claims to have been gotten with 1+1+3. And now that I think of it, maybe that 1+1+4 I saw was really a 1+1+4+2 or something equally bad, since I think whenever I change the second set from 2 to 1, the boss tacks on an extra set of rolls to compensate.
Well perhaps you could try 1+2+2 by rolling the last set over to the next one?
The only progress so far is getting 0:26:33 on Leaf Storm 1 and 0:29:43 on Leaf Storm 2. I don't know if it's worth showing off yet.
So, if I am assuming too much, tell me to sod off, but it seems this project is now on hold?
If that is the case I would really like to see what you have to show off...
Screw the boss manipulation.
Joined: 10/11/2009
Posts: 52
Location: Sydney, Australia
Paused wrote:
nitsuja wrote:
Screw the boss manipulation.
This.
Really, if you are struggling to get a good boss manipulation time, trade it off for something good to watch, like having Sonic bounce off the rolling capsule. Bosses in Rush are extremely based on luck and if you can't manipulate it, oh well. In any case, i'm just hanging on edge to see what remains for the other levels.
why didn't I see this topic! :O
what bugs me is #3 SpinDashMaster's comment "In honor of you teaching the method, I'll neither share nor use this method again." maybe someone already found a way to manipulate the boss?
I played competitively only the Adventure sequel so I have no idea about how to help in this TAS, but good luck to nitsuja, the speed gaining trick looks awesome :)