Joined: 3/17/2007
Posts: 97
Location: Berkeley, CA
Cool, thanks for the interest! Progress updates will go in this TASVideos->Snes9x thread, and I hope my work can help somebody.
About the timing, Phil, I do have a question. (I don't mean this as an argument.) Since JXQ backed up his findings with both a clear recipe for reproducing his results and a reminder of what they didn't prove, I'm not sure what part of his post you don't trust. Maybe it's this sentence?
But I read that as a half-joking comment about the lag added due to "more accurate emulation". Of course the timing changes were more subtle than just sprinkling lag frames here and there, but that's the main difference you see while playing games that 1.43 already handled well.
In any case, I'd be fascinated if somebody did more thorough timing tests (probably using a variant JXQ's method that makes sense for other games) and posted them on the snes9x.com boards. I'd definitely be doing this myself if my SNES had made it to grad school with me. :)
First of all, it's his technique to compare the "difference" which, imo, not really reliable.
2nd. There might be an inaccurate emulation but for the apu only not the game itself. Akaik, sound is independant for Snes.
3rd. There might be indeed a problem but only specific to some games such as Super Metroid.
So in the end, being sarcastic about "accurate emulation" is imo, not wise since there is a slim chance that "inaccurate emulation" is true. But, yes, it's not impossible.
I'd prefer testing against bsnes's output. So far it's the most accurate SNES emulator, and since we're talking about emulators and their timing, it's probably a way to go (not to mention that it doesn't require any additional hardware nor having to rely on any third parties).
Phil doesn't trust JXQ? My feewings is hurt ;_;
I posted that my testing wasn't anything official. I encourage someone who can sync videos to make a test more public so we can see which way is more accurate to the console. I just decided to do the best test I knew how to do to satisfy my curiosity, instead of sitting around waiting for someone else to test it, and not believing anyone who produces results that don't agree with what I hope for.
<Swordless> Go hug a tree, you vegetarian (I bet you really are one)
The speed of the APU is critical with room transitions that load new music. I've already reprogrammed it a bit to speed it up ~20% (39 frames is now 32 frames).
Super Metroid doesn't do anything particularly unusual or fancy, and it's a well known game. A good emulator should be able to emulate it nigh-perfectly.
And from what I know of the game, testing room transitions that load new music and graphics and a large room (west exit of Wrecked Ship would probably be really good) would probably be the best overall test of timing you can do - Lots of data movement between fast ROM, slow ROM, RAM, APU, VRAM, and DMA. There's no reason for different tries to change, so if the SNES is more than a frame or two different than the emulator, the timing is off somewhere.
Alright, I've discovered a new trick for Ceres. Turns out it really is possible to jump a frame earlier in the 3rd room of the escape, only it turns out to be 4 frames slower.
http://dehacked.2y.net/microstorage.php/info/140858459/Jumpearlier.smv
The reason I'm still posting it is because I figure somebody might be able to figure out how to "make" it faster. Just watch in frame advance to see what I did. :)
EDIT: Nevermind, this is nothing new.
That's not a new trick, that's what I was talking about here. Abusing the turnaround animation will inevitably make a jump slower than if you'd make it one frame later; and to make the jump at that exact point, you need to have a certain pixel position to clear the ledge without hitting it while turning around. Unfortunately, that position is impossible to get faster than by running.
Try looking into the door entry from debris room into the elevator shaft. There might be a way to enter it via spinjump turnaround but without hitting the ledge in the next room. That will gain the frames needed.
Warp wrote:
Edit: I think I understand now: It's my avatar, isn't it? It makes me look angry.
Today if one where to use the old TAS route (Kraid-->Phantoon-->draygon-->ridley) would he benefit from taking spazer without using murderbeam, if not then would the would the gain from actually using murderbeam be noteworthy (over 1 second)?
murderbeam = big game ownage dude :)! i would use it in all runs(if possible ) (maybe i have had enough of motherbrain and i want to see her dead as fast as it works :P)
Heh, well, in fact skipping Spazer in that route saves both ingame time and frame count. Murder beam saves 5 seconds at most, skipping Spazer saves about twice as much.
Warp wrote:
Edit: I think I understand now: It's my avatar, isn't it? It makes me look angry.
Murder beam saves 5 seconds at most, skipping Spazer saves about twice as much.
Only if you start it at the very beginning of the fight like usual.
Doing it in hotarubi style though, would indeed save around 10 sec, making it around same fast as skipping the Spazer for in-game time.
Of course it's better to skip Spazer anyway, as it would save much more realtime without in-game sacrifices.
On another subject, it's been a while, so I was wondering how is the progress of the NBMB run, evilchen/moozooh? I'm looking forward to see it done soon, as the simple and short route shouldn't require much work (except the Metroid part in Tourian) to finish it.
Joined: 11/14/2005
Posts: 1058
Location: United States
I am pretty sure they are collecting the ice beam, so the metroids won't be much of an issue.
moozooh,
I am starting to think that "7E0DBC" is the address for the X speed, not the one you used in your memory watch file. I measured pixels and everything, and this is a more accurate address.
Only if you start it at the very beginning of the fight like usual.
Doing it in hotarubi style though, would indeed save around 10 sec, making it around same fast as skipping the Spazer for in-game time.
Right, I just double-checked, Murder beam can save up to 11 seconds of ingame time if done that way… Well, it's stull fugly and long to set up.
Saturn wrote:
On another subject, it's been a while, so I was wondering how is the progress of the NBMB run, evilchen/moozooh?
Yeah, we haven't had any problems so far, just the general laziness from my side and lack of time from evilchen's. :) Don't worry, we're working on it and saving major time all around.
hero of the day wrote:
7E0DBC
That address shows both her speed and momentum combined (you still need the subpixel address to complement it, otherwise the value shown is incorrect). I prefer having them separated.
Warp wrote:
Edit: I think I understand now: It's my avatar, isn't it? It makes me look angry.
Yeah, it would probably be best to just collect the Ice Beam, as it's on the way to Speed Booster. After some tests I can now guarantee that it's impossible to get the latter with less than 2 tanks while suitless, and so the Kejardon-low% run isn't possible in a NBMB anyway.
Good luck with NBMB though, hope you both get your laziness a bit down in the future. :-)
7E0DBE has the total subpixel change in position. There's stuff missing still, though - it doesn't add in movement from environmental effects (0B56 - 0B5D, moving floor in Wrecked Ship, falling sand in Maridia) and it doesn't account for collisions. 0DA2 - 0DB9 tell how far Samus moved *last* frame in various ways.
It all depends on what you're particularly concerned about though. There's no best-choice for every situation.
Saturn: For Speedbooster with only one tank, are you abusing the life-lengthening glitches via pause screen? Samus will not die if the game is currently pausing or unpausing, and with perfect timing you can even enter a room with 00 energy and manage to start pausing the game before Samus dies to get as much as a two-pause extension before Samus dies. You just need to pick up even a 5 health drop right before the game finishes unpausing and before you start pausing again to be able to stay alive between energy recharges.
And with a reserve tank set to manual, you can keep refilling only enough health to finish the unpause transition and repause again with 01 energy, so you can for many purposes almost double the amount of energy in the reserve tank.
kwinse wrote:
Kejardon wrote:
Kriole wrote:
Samus is damaged by a Rinka in the opening.
That's a script action; no damage.
... it just dawned on me I know way too much about SM.
Saturn: For Speedbooster with only one tank, are you abusing the life-lengthening glitches via pause screen? Samus will not die if the game is currently pausing or unpausing, and with perfect timing you can even enter a room with 00 energy and manage to start pausing the game before Samus dies to get as much as a two-pause extension before Samus dies. You just need to pick up even a 5 health drop right before the game finishes unpausing and before you start pausing again to be able to stay alive between energy recharges.
OH MY GOD!
I just tested this, and it is indeed possible to survive the heat without ANY energy tanks at all using this pause screen abuse!
So the new Kejardon-Low% is 7% with this, as you won't need any Energy Tanks to get Speed Booster anymore. Very nice find Kej, and I'm surprised I didn't notice it in the RBO run. In a RBO run, this can now allow to immediately go for Ridley after getting Red Brinstar PBs, without even requiring to get any other items, though the constant pause screen abuse would make the run boring as shit to watch (not to mention much longer in realtime), and so I will stick to my "legal" RBO. ;-)
Cpadolf:
I'm pretty sure Hero confused something here. The current mockball method is the fastest possible for this room.
Joined: 11/14/2005
Posts: 1058
Location: United States
Saturn wrote:
Cpadolf:
I'm pretty sure Hero confused something here. The current mockball method is the fastest possible for this room.
Nope, it is one if about 70 little improvements I have for my new run. An unoptimized run using this new tech saved 10 frames. I showed it to moozooh a long time ago, he confirmed it.
It's kinda funny how the "fastest" methods are all slowly being obsoleted.
It really is. I'm amazed at how much progress is being made in this game after so many speedrunning and TASing attempts, and especially at how perfect and optimal all of you are making the game. Maybe there will never be a truly "perfect" TAS of Super Metroid, but if there ever is I have no doubt it will be one or all of you who make it.
Joined: 11/14/2005
Posts: 1058
Location: United States
Saturn,
Can you post a demo showing how to obtain the speed booster using zero enregy tanks? I don't know how the pause screen trick works. A 7%, NBMB, shortest run, would be awesome. It would kill 3 birds with 1 stone.
P.JBoy,
Where can I find your 100% speed route movie?