I decided to have some fun trying to beat an already well optimized run only by optimizing it even more. Gladly I also found some minor tricks along the way that at least got the improvement into the seconds-range instead of the "few frames"-range which I first thought. The improvement is 109 frames (~1.8 seconds).
- Aims for fastest time
- Takes damage to save time
- Abuses programming errors (zipping through objects and killing the big enemies in the last level by hit)
- Manipulates luck (bosses)
Subpixels in this game
Most new tricks in this run are so simple to describe that I'll just mention them straight in the level-by-level walkthrough. A general minor trick involving the subpixels in the y-direction deserves to be taken up more deepely though. If you have no interest in subpixels you can skip this the rest of the paragraph. The y-subpixels (which will hereby be referred to as just subpixels) change every frame regardless if you're on ground or in air. If you're in air the subpixels just change according to the jumping or falling physics, while on ground the next subpixels value will always be [current value + 85] mod 256. The quick mathematicians can thus see that eventually all 256 values will be gone through. In this game the subpixel 0 means you're in the highest spot and 255 the lowest, but that doesn't mean you should jump when you see the value 0 to acheive an as high jump as possible - since when it comes your starting position for a jump the game instead takes what would be the next value in the calculation. So instead you should jump when the value is 171 to get the highest jump. This positioning is importent when you're about to jump up a platform that's four blocks above you. Most often you need to hold down the jump button 13 frames to reach such a platform, but if the subpixels value is in the range 171-191 when you start the jump you only need to hold it for 12 frames. If you're jumping up many consecutive such platforms you can't do it holding 12 frames every time so the main goal is to find what starting subpixels value you need to have at the beginning of a series of platforms in order to be able to perform the 12 frames jump as many times as possible. A nice example of such a positioning is by the first vertical platform sequence in the first level where only 1 of the 256 values will give you the best result (4 such jumps)! It should be mentioned that this is by no means something new to this run because it was already abused in the last one, just that I got a little better outcome; and it definitely hasn't been documented before.
Improvement
Level | Frames saved | Total frames saved |
---|
Zone 0 | 7 | 7 |
Zone B | 9 | 16 |
Zone D | 5 | 21 |
Zone F | 18 | 39 |
Zone G | 11 | 50 |
Zone H | 7 | 57 |
Zone I | 28 | 85 |
Zone J | 24 | 109 |
Zone 0
Better precision due to subpixel positioning(this was done in all levels but I just mention it here), and a small route change that saved 1 frame.
Zone B
I zipped through the apple in the first room which was missed earlier. I brought a box to the taps so I could shut down one of them as fast as earlier but being positioned better. I used a new zip method on the bomb in room 3 where I entered it from above.
Zone D
Used the new zip method on the apple in the first room, did some better zipping at the switches in room 2.
Zone F
I picked up a box to go through a ball faster. In the vertical room I made sure that those pipe platform things appeared as fast as possible.
Zone G
I zipped through the first bomb in room 2. I also picked up an iron block there so I could perform a zip at the end of the room.
Zone H
I took the right path instead of the middle one in the vertical area. Took damage on the crab afterwards.
Zone I
Surprisingly this was the level with the biggest improvement, and this due to a really stupid idea I had where I thought that - if I throw a box when walking against the fan, maybe I will be unaffected by the fan for 1 frame? This was exactly what happened, lol.
Zone J
New route at the beginning of room 2 and overly better gameplay.
Below you can see how much I'm ahead of the previous run upon entering Fat Cat's room
[dead link removed]
2-player run
I've also done some testings with the 2-player run and have found some major improvements to the current run. I might consider doing that one as well, but since the 2-player run is roughly 53,67 times harder to optimize than this run was I'd like to have someone to co-operate with. So if anyone is interested in the making the 2-player run, or just want to ask something about it, you can PM me.
Thanks...
goes to Genisto for making such an awesome job on the previous run even though it was done so long ago, and the previous autors + Bisqwit for additional discoveries.
Enjoy!
Nach: Nice to see how far we've come since Famtasia. Nice run, accepting.