Submission #1943: Randil's NES Moai Kun in 15:00.02

Console Nintendo Entertainment System Emulator FCEU0.98
Game Version JPN Frame Count 54001
ROM Filename Moai Kun (J).nes Frame Rate 60
Branch Rerecord Count 26169
Unknown Authors Randil
Game Moai-kun
Submitted by Randil on 4/18/2008 2:44:51 PM

Submission Comments

Moai Kun TAS by Randil

This run improves
The improvements come from new strategies, several new tricks, and optimized movement.
I recommend that when you watch this run, open Memory Watch and enter address 003C. This address tells you what stage I'm currently on, and it will make it a lot easier to refer to a specific stage if you have any questions.

About the game

The goal on each stage is to rescue all the pink easter island figues. After you've done that, you have to reach the door to continue to the next stage.
Our easter island stague hero has a head attack that can crush blocks, kill enemies, and move boulders. He can also place bombs to blow up blocks and to kill enemies.
If you touch an enemy or spikes you die, and have to restart the stage.
There are a few ice levels in the game, and when running on ice, our hero moves twice his normal speed, but cannot turn around normally. The only way to turn around is by bumping into a wall.

Tricks and strategies

Jumping: You get pushed 1 pixel each time you jump, so I always jump instead of walk where it's possible.
Attack left, move right: By pressing left+right+B you will attack to the left but face right. This is useful when you want to keep moving to the right but have to attack something to your left (example: frame 1526).
Head butt pixel push: I know, it's an awesome name for a trick. When you use your head butt to crush a block or move or boulder, you will instantly move next to it. By using my head butt when I'm 5 pixels away from the block, I instantly get pushed these 5 frames, saving some time. (example: frames 5171-5174.) This trick doesn't work when you attack enemies.
Head butt long jump: This is a special case of the head butt pixel push trick, which allows me to jump over holes that are 2 squares (32 pixels) wide, which normally isn't possible. By performing a head butt when I'm within 5 pixels from the block on the other side, I get pushed these extra 5 pixels, allowing me to land on the other side (example: frames 2324-2350). This trick only works when there is a breakable block or a boulder on the other side.
Wallzipping: By jumping towards a block that and turning around before you start falling down, the game won't recognize that there is a block next to you and you'll move through it. You can always zip through a block that is one level above you (example: frame 1886), but you can only zip through a block that is on the same floor as you if there is another block above it (example: frame 2016). The block doesn't want me inside of it, so it will try to push me out, and by turning around at the right times while inside the block, I get pushed out faster.
Walljumping: This trick is pretty similar to the wallzipping trick. If you zip just frame into a block that has a block both above and the below itself, you can perform a jump. (example: frame 2289. You'll see that there is a blue block both above and below the one I stand on, and therefor a walljump is possible). You can only jump straight up when standing on the block like this.
Jumping through blocks: Basically the same as with wallzipping, but I don't move inside the block, instead I'm just slightly inside. (example: frame 605). By turning around after I've jumped, I'm able to move through the block without it blocking my way, saving some time.
Bomb pause trick: Once you have placed a bomb, it will explode once a certain in-game timer reaches a certain value. This timer increases when the value of another in-game timer is divisible by 4 and the game is not paused. If you pause the game when the in-game timer that determines when the bomb timer increases is divisible by 4, you can delay when the bomb explodes. This is used on stage 19 in order to allow me to jump up on the boulder before it falls down due to the bomb exploding (frames 15530-15535).
The bomb trick can also be used the other way around: By pausing at the right frames, the bomb will explode on the same frame, but I won't have moved as far. This is used on stage 21 to allow me to blow up a brick and fall down through the hole it creates. If I wouldn't pause the game, I would have run right past the hole, since I can't stop running when on ice.
Head rest trick: Normally, if you crush more than 5 blocks in 3 seconds or so, your character gets dizzy and you can't crush blocks for several seconds. I found that if you press the A button when RAM address 001B is even, you can cure your dizziness much faster. This allows me to crush as many blocks as I want without having to worry about getting dizzy. It's a little more complicated than this, but the core of the trick is to press A button every other frame to cure your dizziness much faster. (example: frames 9126-9133) This trick saves a lot of time on stage 12.
Boulder climbing: The core of this trick is to abuse that when a pile of boulders start falling down, there's a hole inside in which you can stand, right under the block that is currently falling down. Before it hits the block below, you jump up, passing through it, only to land on the block above. By repeating this, you can climb piles of boulders pretty fast. This trick is used a lot on stage 38 (frames 34193 to 34657).

Improvements table:

Note that Nitrodon's incomplete run ends after stage 29.
How to read this table: For example, I improved stage 7 by 32f over my cancelled run, 33 frames over Nitrodon's run and 40 frames over Soulriver's run.
StageRandil v1NitrodonSoulrivers
1032
2088
32827
41043314
5001
61316
7323340
82219
98563386
1040190687
119299237
125291347
13000
1401578
153016
1601215
1715091292
1827999531
199760340
203543832
2116843256
2236392
231473113
2421325
253371279
261111230
2716191
2818468296
294135225
30174-369
313-432
32234-906
33190-318
3482-704
35103-327
3620-2099
3713-166
38190-629
39103-144
406-348
4145-1031
42215-514
433-344
44125-383
452-26
4619-230
471-549
48969-1402
4915-190
50111-1260
5113-388
52180-1809
536-124
5480-441
5569-1319
562-1057

Possible improvements:

I know that stage 7 can be improved by 37 frames, but I don't feel like redoing this whole run for those frames.
Of course, it would be foolish of me to think that I found the optimal strategy for all 56 stages. I tried my best to find the best strategy, but the levels get quite complex by the end, so it's hard to find the best route. However, I tried many different routes and picked the fastest one of those, so I think it's still pretty tightly optimized. :)
Then there's the usual things like further lag reduction and things like that, but I don't think that will make up a lot of time.

Thanks to:

  • Soulrivers for his run.
  • Nitrodon for his run.
  • And you for watching! ;)
If anyone wants to give this game a try, feel free to ask me for RAM addresses, I have collected quite a lot of them.
Well, enjoy the movie!

NesVideoAgent: Hi! I am a robot. I took a few screenshots of this movie and placed them here. Here goes! Feel free to clean up the list.

Truncated: Accepted as an improvement to our published movie.
Bisqwit: Processing for publication.

Last Edited by TASVideoAgent on 11/6/2008 9:16:39 AM
Page History Latest diff List Referrers