Submission #5370: keylie's Wii Rayman Origins in 45:31.30

Wii
4 players
(Submitted: Rayman Origins USA.iso USA)
Dolphin 5.0-424
2047939
749.803756452971
51913
Unknown
Submitted by keylie on 1/22/2017 8:51 PM
Submission Comments
  • Emulator: Dolphin 5.0-424
  • Idle Skipping and Dual Core Off
  • DSP HLE Emulation
  • Aims for fastest time
  • Uses four players
  • Uses death to save time
  • Uses major skip glitch
  • Genre: platform
I used the USA iso with MD5 checksum: bc1ddedc4782c44f952aa3a61dde224e
This game features the return of the Rayman character in a 2D platformer. It was published on several consoles and PC, and the Wii version was chosen as it is the best TASing platform. Unfortunately, the Wii version has longer loading times than the PC version. This game also features up to four players, which were used in this TAS to save a massive amount of time using coop specific techniques. I also have to apologize as you won't see any playaround during loading screens. This is the result of a bad decision for not making them right away, and heavy desyncs if hexedit them.

Moving techniques

Rayman Origins features a lot of different movements and animations. Speed are indicated below as game internal units (obtained through Cheat Engine). The game features a max speed of 20 units. Any character that has a speed higher than 20 will loose speed toward 20 in 2/3 frames.

Spin attack

The basic move to gain speed is the spin attack (forward+run+attack), which gives the character an instant speed of 13. This is higher than the running speed (10). The second half of the attack can be canceled by a jump, which preserves the speed. The spin attack can also be canceled by a kick-jump attack (jump+attack) which also preserves the speed, and has a lower height that the lowest jump. If the spin attack touches an enemy or any interactive element, it can be canceled right after by a jump, a kick-jump, or another spin attack.

Sliding

On downward slopes, sliding (by pressing down with enough speed) increases the speed depending on the slope.
Also, keeping a high speed is made possible by constantly jumping, but touching the ground even for one frame triggers friction and reduces speed. Pressing down on the ground triggers a slide and reduces friction, so it is better to press down+jump when touching the ground.

Brake boost

This technique is not fully understood by me. If you move on the ground and you stop moving, Rayman will enter a stop animation. This animation can be canceled by a slide, which sometimes triggers a speed boost (about +3 speed units on flat ground). It works similarly to Rayman Legends (hence the same name), but the conditions to trigger this boost are not the same. In this TAS, this is done on three situations:
  • After running, to gain more speed than the running max speed (only done during stage 1-1 when the spin attack is not available)
  • After a spin attack
  • After landing

Coop attack

This is the main technique used in a coop run. If a character in the air attacks another one, and if the attack cancels a turnaround (backward-to-forward only) animation, the attacked character will be sent at a speed of 20 (the max speed allowed by the game). The turnaround cancel can be down in two ways, and on special cases:
  • face backward, jump, turn around, cancel the turnaround by an attack
  • face backward, turn around on the ground, cancel the turnaround by a jump, attack
  • special case: the end of a walljump has this turnaround cancel property

Coop jump

This technique also allows to gain a speed of 20, but takes more time to setup than the coop attack. If one character steps on another one (which needs to hold up), presses the attack button and then hold forward+run, he will store speed during the attack animation. At the end of the attack, he can press jump to be sent at the speed of 20. This is only used a couple of times in the run when I have to wait.

Fast ground-pound

When making a ground-pound (down+attack in the air), the character has an animation where he first moves up before the actual ground-pound. If the characters hits a wall or a ceiling during the beginning of the animation, the ground-pound is triggered instantly. So sometimes it is faster to jump higher against the ceiling to trigger a fast ground-pound.

Swimming

Swimming with the run button gives a speed of 8. Pressing attack triggers a spin which gives a speed boost, depending on the timing. Constantly spinning gives boosts of speed 10, but spinning less often gives boosts of speed 14, which is ultimately a faster way of moving in water.

Water surface techniques

The surface of water holds very specific physics, depending on if you have the power to swim, and the type of water.
If you ground-pound in water, and hold down+forward+attack during the ground-pound, the character will gain a great boost (speed 18 at least) while swimming. However, the speed will then decrease rapidly. If this is done in the red water of world 3, the speed won't decrease.
With the power to swim, there is a faster method to move: press forward+attack the frame you enter the water to gain a boost, then press up the next frame to leave the water and preserve the speed. You can then perform this trick again, and easily reach a speed of 20 with only chaining this twice.

Tricks

Level skipping

Level skipping is an intended feature of the game: if you die eight times in a level, the game asks you if you want to skip it. This does not work in some levels such as the levels that give you powers, or the levels building bridges between worlds. However, it actually works in the level "Riding The Storm", were the game asks you to visit again previous worlds to save the four Kings. This made possible the actual route called "50 electoons" by the speedrunners, because there is one stage that requires 50 electoons to enter.
Normally, it is not possible to die in this level. However, using multiple characters, it is possible to move the screen scrolling using the 2P character so that Rayman (1P) is off-screen. Then, by pressing the suicide button on 2P, the game sees that every character is either dead or off-screen, and triggers a death.
This level skipping method is also used on many other levels, either because they are very long to do (autoscrolling levels) or as part of the electoons routing.

Room transition skip

Rarely, the transition trigger is located a bit above the actual door, so it is possible to skip this trigger by sliding when entering the door. This is done in stages 1-5 (Swinging Caves) and 4-1 (Port 'O Panic)

Rope glitch

If you press Pause when on a rope, you will continue swinging during the pause menu. When exiting the pause, the game will update your position. Swinging in the pause menu has several advantages: you are not subject to gravity or any other forces (wind), also you can pass through obstacles. This was used only once in the last stage to go through a wall and avoid a trigger.

Out of bounds

It is possible to go out-of-bounds in several places in the game, and it is even easier with multiple characters. This is however usually slower, because of long setups and because you skip lums. One place was found in stage 1-5 which saves time (about 4 seconds) because it skips a room transition.

Zipping

It is possible to zip in this game, but it was not used in the present run, as it is extremely precise and I did not find places where it saves time.

Coop specific mechanisms

Character differences

The starting characters in a four-player run are Rayman, Globox, a green Teensy and a black Teensy. It is possible to change characters but this requires time to go to the special place to do that, so this whole run keeps the same characters. Here are the differences that are important in this run:
  • There are minor hitbox differences between the characters. These are noticeable only on borderline situations, and does not have much impact
  • The Teensies have a longer recovery when hit with the coop attack. The exact recovery is 22 frames for Rayman and Globox, and 32 frames for the Teensies. Because of this, Rayman and Globox are the ones been attacked as often as possible, because a longer recovery means a more reduced speed on the ground before being able to jump.
  • The starting frames of the attack are slightly different: Rayman has a 5 frames starting and the other characters have a 6 frames starting.
  • This difference is not on the character but on the controllers: every controller except controller 1 can press the button A to kill its character (switching to the bubble form). Another press in this form removes the character from the game. This is very important in the next section.

Room transitions

Each stage is divided in several rooms. To trigger a transition from one room to another, at least one character must pass the transition door. Then the transition will occur if one of the following condition holds:
  • All characters either passed the transition door or are in bubble form.
  • About 5 seconds have elapsed since the first character passed the door.
So, the fastest way to finish a room is to bring one character at the end (or more if possible without costing time) and to switch the other ones to bubble form. Because Rayman (1P) cannot switch to bubble form with a button, he will almost always be the one going to the end of the room. The drawback to switch a lot of characters to bubble form is that they must be revived at the beginning of the next room, so sometimes it is faster to bring more characters at the end of a room to save time later.
There is another optimization regarding room transitions that I had difficulties to understand at first. When characters in bubble form are moved during a room transition, the time they take to move to the door depends on their distance to the door, but also on their speed when the transition is triggered. It is actually faster to have a null speed when the transition occurs, because they will be moving immediately toward the door.
Finally, it is possible to revive someone a few frames before the transition. He will still be considered in bubble form (so the transition occurs), but will appear alive in the next room.

Skull Coins

One major way to collect lums is to grab Skull Coins that hold 25 lums. However, collecting the coin is not enough, the character has to leave the coin original placement far enough to gain the 25 lums. This is problematic when a coin is close from a transition door, because a character does not have enough time to grab the coin and go away before Rayman enters the transition door (meaning other characters must enter bubble form). This was the main constraint for designing a lums route for each level. Sometimes, Rayman had a wait for a second to let other characters to gain the 25 lums.

Lums splitting

At the end of each stage, there is a lums counting screen. This screen takes less time if lums are more evenly split between characters. This was a real route challenge, which I handled only moderately well. Usually, I couldn't guess the lums splitting without doing the whole stage, and then I only could do moderate editing to get a more even splitting.

Off-screen physics

When a character is barely off-screen, he can still move without being killed by the game. In this state, the game pushes him toward the inscreen, and also can cancel animations like an attack, a recovery or a ground-pound. Also, a character in off-screen water falls down as if there was no water.

Stage-by-stage comments

Stage 1-1, 3 electoons (cage, 50 lums, 100 lums)

We don't have the attack power yet, so we use the brake boost a lot. I managed to get two characters to appear ahead after the first cage cutscene. I don't know exactly how it works but it required to summon characters using controllers not with the natural order (P2, then P3, then P4) but another order.

Stage 1-2, 5 electoons (3 cages, 150 lums, 300 lums)

Geysers are hard to handle, and I had a bad cycle during the second-last room, so I had to wait for the right geysers to come up.

Stage 1-3, 4 electoons (cages 1 and 3, 150 lums, 300 lums)

In the fourth stage, I had to wait with Rayman about half a second, because I was too short on lums. In the next room, I spent a long time to get Globox grab the Skull Coin and the 10 lums offscreen without dying.

Stage 1-4, 3 electoons (cage 3, 150 lums, 300 lums)

This stage is the longest non-mandatory stage, but I computed that it is still faster to complete this stage than taking more electoons from other stages. In the fifth room, I also have to delay Rayman by half a second to grab two Skull Coins with the other characters. Because of the level design of this stage, Rayman had to take a lot of lums on the way, so the lums balance between characters was not good.

Stage 1-5, 3 electoons (cages 1 and 3, 150 lums, 300 lums)

Because of the out-of-bounds in this level, much more lums needed to be collected in the first part of the stage. So in the first room, Rayman had to wait a full second for other characters to grab the two Skull Coins and almost every lums. In the second room, Rayman had to wait half a second for another Skull Coin, and to get join by a Teensy in bubble form for the next room. Indeed, there is a room transition skip to the next room, but we need at least two characters to perform the OOB. After Rayman get up to a platform that is not supposed to be accessible, he makes a jump to the right inside the wall, and another character follow him in bubble form. At a specific place in the ceiling, there seems to be a hole, so the characters could get back in-bounds using the temporary invincibility from getting brought back to life.

Stage 1-6, 3 electoons (cage, 100 lums, 175 lums)

This level looks very different if you can rush it like in the present TAS. I had to wait once to get the path opened. Again, it is not really possible to split lums between characters here.

Stage 1-7, skipped

In non-assisted speedruns, speedrunners use the fall of the column to kill themselves, but it is faster in TAS to use the offscreen death.

Stage 2-1, 4 electoons (cages 1 and 3, 150, 300)

Lums collection was very strict in this stage, due to skipping one Skull Coin and the second cage. The last cage was broken using a ground-pound which has a hurtbox that extends up a lot.

Stage 2-2, 3 electoons (cage 3, 150, 300)

I used the off-screen properties a lot in this stage. In the end of the first room, the recovery of Globox was canceled by offscreen status, so he could validate the Skull Coin. In the second room, the black Teensy grabbed a Skull Coin offscreen, got hit by the electric line, but could still validate the Coin somehow. In the third room, the Skull Coin was impossible to grab in a short amount of time using the intended way, so with Globox I used a wall jump and got hit toward the top of the screen, just before going offscreen. This canceled the recovery of the hit, and I could get over the wall to grab the Skull Coin. I used a precise ground-pound to get a diagonal angle thanks again to offscreen physics pushing you to the right, so that I could grab the Coin faster. This is why you see Rayman stopping at a particular place, to control the camera.

Stage 2-3, skipped

There is a gap in the beginning of this stage, so I used it to kill myself.

Stage 2-4, skipped

It is not (or hardly) possible to go offscreen in the first room of this stage, so I went to the second room.

Stage 2-5, 3 electoons (cage, 100 lums, 175 lums)

Ropes were really annoying in this stage, I tried to avoid them as much as possible.

Stage 2-6, skipped

Another really close gap.

Stage 3-1, 3 electoons (cage 3, 150, 300)

Ice ground does not cause friction, so ice levels were much easier to perform, because you don't need regularly two characters to get one at full speed. However the small state is much slower, because you cannot perform the coop attack or the coop jump, and the spin attack speed is 10 units.

Stage 3-2, 3 electoons (cage 3, 150, 300)

The fourth room was really hard to do because of the two Skull Coins at the end of the room, one being far from the path. I used the offscreen push to help the black Teensy getting the upper Coin, but then I had to wait more than a second to validate that Coin.

Stage 3-3, skipped

Getting offscreen in the first room is really precise, you need to advance the scrolling to the right, but get back up before the zoom out has started. Then, you only have a few frames to suicide before Rayman gets onscreen again.

Stage 3-4, 3 electoons (cage, 100 lums, 175 lums)

I let Globox go first to trigger the move of a creeper. At the end of the stage, I used a hard knockout on one creeper, caused by a coop attack, so that I stick to it and can damage-boost to the end of the stage.

Stage 3-5, skipped

This is not a real gap there, so I need to wait a little for the fire to come.

Stage 4-1, 3 electoons (cage 3, 150, 300)

There is another room transition skip, followed by a cinematic, which is convenient because it brings back all characters. In the fourth room, I used the fact that I have to way for the cage to come to grab the Skull Coin underwater. However, I don't have the swim power yet, so it was made possible by a ground-pound to get the right depth, and a series of underwater attacks to bring Rayman to the Coin and away. Indeed, if the cinematic triggers before the Coin is validated, it is lost. To save a bit more time, it is possible to store an underwater spin attack during a hit recovery, which will trigger at the end of the recovery after the cage is broken, even if characters are not suppose to be able to move.
The next underwater section was really hard, because it is not possible to catch up on Rayman, and many lums were collected offscreen. This was not sufficient actually, so Rayman had to make a little detour to grab more lums.

Stage 4-2, skipped

Entering water during a coop attack recovery keeps the same speed, which is very convenient.

Stage 4-3, skipped

Same strat as 4-2.

Stage 4-4, 3 electoons (cage, 100 lums, 175 lums)

I thought I could get above the wall without waiting, but it extends a bit on top, and the game pushed you down when you go offscreen, so...

Stage 4-5, skipped

I used a ground-pound at a specific place to skip the ground-pound animation.

Stage 5-1, 3 electoons (cage 3, 150, 300)

Getting hit upward in a air flow sends the character at an increasing speed. He cannot do anything until he left the screen, which cancel the recovery state. This saves a lot of time during the long ascension in the air.
In the room after getting the power to run on walls, I pushed on NPC multiple times because I need him to climb the mountain as early as possible. There is a known bug in the following minigame: if a character enter its spot in a rolling animation, he will be stuck in the animation, but can still input up and down to gain lums.

Stage 5-2, skipped

Thanks to the spikes, killing yourself is easy.

Stage 5-3

The wind gives you the maximum speed, so no need for coop attacks. We don't need any electoons, so we can quit the stage just at the beginning of the lums counting screen.

Stage 5-4, skipped

Another fast death.

Stage end-1, skipped

Skipping this stage is what allows this route to exist.

Stage end-2, skipped

Another fast death.

Stage end-3, skipped

In this stage, unfortunately, I have to wait a little before being able to get killed.

Stage end-4

In the first boss phase, there is a known trick where you can go under the boss when he jumps. Before he jumps, there is a kill scrolling, you cannot go at his left without dying. When he jumps, you have a small window where the scrolling is unlocked. You can then go back to the previous room, and enter the door again to trigger the second boss phase.
In this second phase, I used for the only time the rope glitch, which allowed me to pass through the wall and avoid a trigger that would make saws appear from above.
The last phase is a mandatory autoscroller where afaik no time can be saved. I kept Rayman at 0 lums, so that at the end I remove all the other characters to get a 0-lums count. This way, I can confirm the lums counting screen as soon as possible, which trigger the credits.

Special Thanks

  • yoshifan: for writing the lua framework to use Cheat Engine together with Dolphin
  • twyn_o: for giving me some tips on the game

Fog: Judging.
Fog: I'm unable to play this movie file back in either the official version of Dolphin, or the custom build used by keylie to create this TAS.
I'll need more information from keylie to figure out what's going on here.
Fog: Sync checked by Spikestuff (thanks!), the judging can continue.
Fog: Finally confirmed sync on my computer as well, had some settings in Dolphin not visible in the UI causing the desync.
This was a great TAS to watch, and utilizes all four players to their maximal potentials. The audience response is also well received.
Accepting for Moons!
fsvgm777: Bring it on!
NOTE: This is going to take a long time.
Last Edited by adelikat on 10/20/2023 12:52 AM
Page History Latest diff List referrers