At first glance, this basic platformer doesn't have much going for it in terms of speed. You move at the fastest speed by holding R while moving to dash. You don't lose speed by jumping, either. To see this, load up the Bizhawk emulator and create a WRAM watch with the following addresses:
Note: there are 255 sub-pixels in a pixel. The Game Boy Advance's native resolution is 240 pixels x 160 pixels.
0422B4 signed, 4 bytes X (horizontal) sub-pixel position (negative on left edge) 0422B8 signed, 4 bytes Y (vertical) sub-pixel position (negative on top edge) 0422F0 signed, 2 bytes character's X speed in sub-pixels (negative is left) 0422F4 signed, 2 bytes character's Y speed in sub-pixels (negative is up)
Interestingly enough, your maximum speed to the right is 600, but your maximum speed to the left is 585. I couldn't explain why.
However, there are things you can do to make some things go a little faster. I will explain each of them as they appear:
1-2 frame-perfect double-jump: Why does a single jump that saves a second have to be so annoying? There's only a single frame in Littlefoot's jump where you can press jump again and make the platform high above you. The problem is that each unique frame in Littlefoot's jump animation lasts for four frames (60fps game) so you can't use that as a visual cue. You also spend seven frames at your maximum jump height and the jump can only be done by pressing A on frame three. Each failure loses a second and a half. It's generally not worth your time. There's a platform to the right you can easily use to not go through the frustration.
1-2, 1-3, 2-4: For the most part, knockback does not exist in the game. When you run into an enemy, you just lose a portion of your health bar. You don't lose speed. The game doesn't lag from your flickering invincibility frames. No effect on your time whatsoever. 1-2 and 1-3, however, have pits with bones sticking out that knock you back in the opposite direction you're facing. 2-4 has some bramble bushes that do the same thing. You can take advantage of this by holding the opposite d-pad direction slightly before landing in the obstacle so that you're facing backwards and get knocked forward. Over the course of the three stages that these appear in, you can save about three seconds.
end of 1-2: The end of 1-2 is designed to make you jump across island platforms to the left, up, and then back to the right before exiting the level. You can bypass this by jumping towards the right when you would make the left turn and then alternating between Select and A to go up. Select goes to the Character Select screen where you can normally switch characters. When you select your character with A, your sprite goes upward by one pixel. If you hit Select again immediately, you can keep that one pixel height and press A again for another pixel. You can go up as high as you want with this, but the upward ascent is really slow. Somehow, it still saves three and a half seconds here. This is the only place I found where it was useful.
1-4: The bosses in this game are generally broken. This scorpion is the least broken, but it can still be sped up a bit. The scorpion alternates between tail and claw attacks. It's normally invulnerable during these attacks. However, a well-timed and positioned double jump can make it vulnerable during the claw attack, allowing you to get in more hits.
2-4: I still don't have a great understanding of why this works. Sometimes, if you let the sharptooth kill you (the chase is so slow that you practically have to try to die) and run immediately to the right afterwards from the start of the stage, the sharptooth does not come back. Other times, it appears back on the screen, but doesn't lock the screen into a slow scroll like in the rest of the boss stages. I cannot find an earlier point in the stage where this happens. For what I do at the next boss, I need Littlefoot's lives so I offer Cera as a sacrifice. You need to immediately switch back to Littlefoot and dash or the scrolling will come back.
Breaking this level saves about 15 seconds over the course of the run. No, this is not the only level where it saves time. In fact, this glitch persists until you reset the game, even on new runs, and is the reason why all runs need to start from either reset or power on.
3-4: This boss fight deviates the most from developer-intended gameplay. There are two things happening here that, in total, cut multiple minutes from this fight.
First off, it helps to constantly take damage during this fight as there are death warps you can do. When you die by making contact with the megadactyl, the megadactyl warps to the left side of the screen. If it's moving left when this happens, it will skip to the next step in its attack sequence (which is set in stone for when it swoops down to attack, but the items it drops in between are set based on your life counts going into the fight). This saves about five seconds each time you do this warp optimally. My route tries to trigger this as much as possible.
The biggest time save in this fight, however, comes in the ability to hit the boss twice per cycle. If you perfectly time a jump as you bounce off of an enemy, you will get a bigger bounce. For whatever reason, the megadactyl has a hitbox for a very small amount of time as it re-enters the screen. You can take advantage of this by getting a big bounce off of it as it leaves the screen so that you interact with its hitbox as it comes back. Not going for these bounces loses about two minutes. Seriously, this is the most important trick in the entire run.
4-3: There isn't any special speed tech here specifically. The spider is one giant hitbox. You'll just save time running to the end of the level from breaking the scrolling in 2-4 so keep that in mind.
5-3: In a blind setting, this level is very difficult to keep all twelve lives in, if you even have all twelve lives at this point. There's actually a glitch to underflow one character's lives to 255 by having one character "die" and selecting another "dead" character in the next prompt to revive them via minigame (which you can play once per 100 treestars collected), but you're likely not going to figure out how to do that your first time playing. (So how did I ever figure it out the first time?)
Fortunately, the sides of the stage are complete safe zones from the instant death boulders that rain down on this stage. So long as you hide behind the foreground so that only the tail is showing, you're only going to lose health from the fire coming out of the rocks on the side.
To see a lot of this in action, check out my TASVideos thread and the nearly-complete TAS I made: http://tasvideos.org/forum/viewtopic.php?t=17937 http://tasvideos.org/userfiles/info/31556311110634778
There may even be something useful in my old Speed Demos Archive run that explains more about the other levels: http://speeddemosarchive.com/LandBeforeTimeGBA.html