Submission #2173: Cpadolf's SNES Zero the Kamikaze Squirrel in 09:38.85

Console Super NES Emulator Snes9x
Game Version USA Frame Count 34731
ROM Filename Zero the Kamikaze Squirrel (U) [!].smc Frame Rate 60
Branch Rerecord Count 64331
Unknown Authors Cpadolf
Game Zero the Kamikaze Squirrel
Submitted by Cpadolf on 2/6/2009 10:03:27 PM

Submission Comments


    * Aims for fastest time
    * Manipulates luck
    * Abuses programming errors in the game
    * Emulator used Snes9x v1.43 Improvement 12

About the game

This game is about Zero, Zero is a squirrel. A Insanely fast, shuriken throwing nunchuck wielding somersaulting glideyflying badass bandanna wearing squirrel. He sets out to save some guy from a evil lumberjack whos evil scheme is to cut down a bunch of trees and make money out of them (the horror!). In order to complete the game you have to play trough a bunch of pretty linear levels in ordinary platforming fashion and fight a few bosses.
The physics in this game lends itself very well to TASing because it allows you to quite quickly gain a lot more sped than you can reliably do unassisted. The normal top running speed is 1280 (speed address is 7E0015, I don't know what units it is measured in, but I presume that one unit is 1/256 of a pixel), but this can be overcome by abusing the glideflying function. When you have fallen a great enough height while in "trying to look like Superman" (entered by pressing R or L) you can start glideflying either to the left or the right, this increases your horizontal speed by a lot, and if you do it close to the ground so that you land before loosing the speed, or if somersaulting when reaching the highest speed you can keep on running with this high speed. Doing so I can in a very short time attain such speeds that the screen can't keep up with me (I frequently go over 2100, which is almost double the normal speed, I seems that the screen scrolls at a speed of 2048). Unfortunately though you can't go of screen on the horizontal plane, because you lose all speed if you crash into the edge of the screen, so when I'm at such high speeds I have to do whatever I can to slow down just enough to keep at the edge.
You can also quickly gain some extra speed at the beginning of a level or after you have to accelerate again after slowing down by pressing R or L (depending on direction) for 2 frames, this makes you do a little jump and bumps your speed up a bit. This is also much more effective in downward slopes where you gain a lot more speed, and it can't be done in upward slopes.
There are also some programming overlooks/glitches I use. One is floating by going back and forth between somersaulting and gliding 60 times per second, it makes you stay completely static in mid air. It can be used to get hits in at bosses easier, and there is a special case scenario in stage 5 where it saves some time. Then there is going through enemies and hurtful obstacles by either somersaulting/starting to glide at the right moment, or repeatedly throwing shurikens which for some reason just makes you pass straight through some things. Lastly after crashing in to a wall while gliding there is a 1 frame window where you can jump again from the wall, this is abused in level 2-2.
Most of the levels in this run have been redone multiple times because I kept finding a lot of small stuff and better ways to gain speed faster (found 13 frames in level one when in the last level for example, so that hurt a little to redo. But I found some more in the process anyway). This game was a lot of fun to work with, though at times incredibly hard to optimize, and I really like the end result.

About the run

This run is a improvement of 6162 frames, or almost 103 seconds, over LLCoolDaves previous run. It does so mostly through the speed abuses mentioned earlier, but also a lot from overall tighter optimization, new shortcuts and tricks.
Level 1-1 Not much to say here, I pretty much instantly gain enough speed to outrun the screen, so after that it is just a matter of slowing down just enough. 537 frames saved (yes I saved 9 seconds in a level that consists of nothing but holding right and jumping...)
Level 1-2 Same as the first level, though I could not gain a high enough speed in one jump here (well I could but it would have taken longer). 513 frames saved.
Level 2-1 Took a new shortcut at the start of the level possible thanks to the acceleration trick mentioned earlier. Also used the same acceleration trick at the end of the level to gain some more time. 368 frames saved.
Level 2-2 Abused the walljumping glitch pointed out by Derakon here, and it saved about 8 seconds. Other than that the last bossfight where faster and I saved a bunch of frames from optimization. 1354 frames saved.
Level 3-1 Just kept a much much higher speed through the major part of the level. I also abused the floating trick at the canonballs, I had to wait for it to sink just a little bit to be able to land on it and that saved plenty of time. Also due to comming there at a better time (I guess) I didn't have to wait for the last cannonball to destroy the wall. The boss has a stupid long invulnerability time (like a second or so), and the nunchucks that does the most damage can only be used on the ground. 828 frames saved.
Level 3-2 Nothing really significant here. The boss has a lot of health and the nunchucks deals like 3 times as much damage as somersaults, so I manipulate him to land more often (though he has to be damaged a set amount of times first before he does that, and when he is about to die he will not land anymore). 486 frames saved.
Level 4-1/2 Yay autoscrolles, just what every good TAS needs :/. Well anyway, I actually managed to gain some time here, by releasing forward for one frame after reaching the highest intended speed then pressing forward again you de-accelerate a little and then get a increase in speed greater than the previous loss. So I go one 8th of a pixel faster per frame through these two levels (weeee). 76 frames saved.
Level 5-1 Don't think there is anything really noteworthy here, although the level looks really good with a lot of quick turns and jumps. 394 frames saved.
Level 5-2 Mostly a lot of jumping in this level, which you can't really save a lot of time on. 265 frames saved.
Level 6-1 Same as 4-1/2 72 frames saved.
Level 7-1 In the middle rooms where you have to kill the enemies the doors take a while to open, so I can go ahead and get my speed up without loosing any time there. And I greatly abuse the going through obstacles glitch here. Also on the last screen there is supposed to be a fight with 3 enemies, one of which takes a long time to kill, but going through the door with such high speed and being right at the edge of the screen I somehow bypassed this, as the door at the end just stayed open. 931 frames saved.
Level 7-2 (I count this together with the last boss battles too) There really isn't anything new here, just a much of ordinary timesavers. In the axeguy bossfight I hit him on the first frame all the time and in the end I also place myself in a slope to use the acceleration trick after he dies to reach the end faster. The last boss is stupid in all his unmanipulatebale predictability. 338 frames saved.
So that's that. Oh, and the game seems to desync sometimes when fast forwarding past certain parts, and the game WILL desync if you have the sound muted for some reason.

adelikat: Replaced the submission file at request of author. The new file uses a wall jump trick in 2-2 and saves approximately 8 seconds.

adelikat: Accepting as an improvement to the published movie.
ShinyDoofy: Processing...

Last Edited by ShinyDoofy on 2/10/2009 5:26 PM
Page History Latest diff List Referrers