Tiny Moth Dik
Elements of the fight
Before the fight, Mothula sits around, then she gets up. From there on, she alternates between shooting and moving.
Spike blocks are spawned with a routine that's outside of Mothula's main AI, so they are completely independent of what she is currently doing.
When taking a hit, Mothula's beam countdown will be set to 64 frames and she will immediately begin moving if she was firing beams. Taking a hit does not change Mothula's movement cycle. When recoiling from damage, she is not immune to further attacks for 10 frames. During this time, she can hit a spike to recoil again and have that damage overwritten by Link's attacks. Or vice versa, she can have Link's attacks overwritten by a spike. When Mothula is able to recover from recoil successfully, she will be properly immune to attacks for 32 frames.
- Flap around
- Check the beam timer.
- If it's time to shoot, sit still for 63 frames to shoot beams.
- After shooting, choose a random number between 64 and 95 for the beam timer.
- Flap wings
- Increase or decrease altitude, as determined by how flappy Mothula feels
- There is a repeated cycle of movements with a period of 8:
- For 7 movements: move in random direction for between 31 and 95 frames
- For the 8th movement: move towards Link for 128 frames
- For any movement, if Mothula hits a wall, her movement timer immediately ends
Spikes attempt to spawn from a random position every 64 frames. Spawns will fail if there is no spike tile on the chosen point or if there are too many sprites. When chosen, the decided spike will turn into a sprite and wiggle for 64 frames. When it's done wiggling, it will accelerate to its maximum speed of 2px/f towards the other side of the room. When it reaches the other side of the room, it will sit for another 64 frames, then travel to its original location at 1px/f. When it reaches its original location, it will turn back into a tile.
Conveyors move in a random direction for between 96 and 223 frames. Before choosing a new random direction, the floor will sit still for 32 frames. (Technically, the floor's timer is between 128 and 255 frames, but the wait period has been factored out.)
The floor stops moving as soon as Mothula starts exploding.
Josh's Mothula Tutorial is excellent. You should watch it.
- You can start the fight by hitting Mothula twice every time. This can be done by either dashing into the block on top of the screen right as she's getting vulnerable, or by doing a prolonged Pokedash.
- Since Link lands in the same place every time, and the conveyors can only go in one of four different directions, it's possible to find visual and movement cues to get the double hit no matter what. This takes a lot of practice.
- You can hit her into a block tile to damage her.
- As long as the conveyors aren't going downwards, you can usually get off a Pokedash when she's camping near the spikes at the top. This is a fairly advanced strategy to go for and requires a lot of practice.
- When Mothula is in the middle on the left or right side, try to get below her and slash her upwards. If you slash her from a diagonal in this situation, she might bounce into the spikes, but being below her in the middle should work.
- The best way to deal with the moving spikes is to practice the double hit, and pokedash.. The faster you kill her, the less of a problem they will be.
- There is a lot of pattern recognition to this fight. You will have to do the fight hundreds of times in practice to get a feel for what works and what doesn't work. Good luck!
Individual Mothula Pattern Tutorials by Xelna