Submission #5579: The8bitbeast's SMS Land of Illusion Starring Mickey Mouse in 22:48.28

Sega Master System
(Submitted: Land of Illusion: Starring Mickey Mouse)
baseline
(Submitted: Land of Illusion Starring Mickey Mouse (U) [!].sms Europe)
BizHawk 1.12.2
81991
59.9227510135505
77304
Unknown
Submitted by The8bitbeast on 7/1/2017 11:34 PM
Submission Comments
Update: The button file provided syncs on Bizhawk v2.0.1 with the latest SMS improvements, but the TAS was originally made for and optimized for v1.12.2. The original button file can be found here: userfiles/info/40239298283571806
Land of Illusion: Starring Mickey Mouse is a platformer released in 1992 for the Sega Master System, and later released on the Game Gear in 1993. Gameplay is very similar to the popular Castle of Illusion: Starring Mickey Mouse which was released on Sega Master System and Sega Genesis. In this game, Mickey must travel get back the Crystal stolen by the Phantom by travelling through many different areas and picking up lots of new abilities and items along the way.
This run completes the game as fast as possible. Another possible category is completing the game 100% by obtaining all of the Power Stars (Health upgrades). This is a 8620 frame improvement over #4369: Mephistus's SMS Land of Illusion Starring Mickey Mouse in 25:11.05 thanks to some new strats and overall optimization.
  • Emulator used: Bizhawk 1.12.2
  • Plays at 60fps as Land of Illusion had a Brazilian release

Summary of timesaves

LevelFrames Saved
1. Forest41
2. Lake308
3. Blacksmith’s Castle116
4. Lake 2115
5. Castle Ruins860
6. Tiny Cavern209
7. Flower Field216
8. Toy Workshop472
9. Palace Ruins237
10. Craggy Cliff58
11. Desert2135
12. Good Princess's Castle53
13. Sand Castle2487
14. Island374
14.5 Map (Entering Phantom's Castle)94
15. Phantom's Castle839

Tricks and Techniques

Castle of Illusion Similarities and Differences

When I started this TAS, I began by reproducing some of #5323: Tee-N-Tee's SMS Castle of Illusion Starring Mickey Mouse in 11:46.53 While I learnt a lot from this and some of the stuff was transferrable, some of the physics seemed quite different in Land of Illusion. I was never able to get a ladder jump in Land of Illusion and I don’t think it is possible to do so. Speed preservation from slopes is also in Castle of Illusion but in Land of illusion you always mash down to keep speed. Castle of illusion seems to just take any inputs on alternating frames.
Fun fact: The X position is in the same address for both Land of Illusion and Castle of Illusion.

Corner Boosting

If you jump into a corner of a roof (shaped like _| if running right) the wall tries to eject you a little bit. In this process you are pushed further to the direction you’re going and also a bit further up. Naturally I try to do this as often as possible to get boosted in the direction I'm going. It can also be useful in gaining extra height when required.
This actually causes you to go a little bit off center on the screen, further than you can normally reach. I try to do this in the inside part of Craggy cliff stage, but it’s not very noticeable. Unfortunately there is a limit to how far you can be pushed off center. Once you go further than that the screen scrolls even without you moving. There is a way to push yourself off center theoretically as much as you want to by repeatedly dropping a jar onto yourself and being ejected out, but eventually this limit stops you from going further. This is a shame because if there wasn’t a limit it would be possible to skip toy factory with a horizontal underflow (although the repeated jar dropping would take a long time anyway).

Horizontal underflow/overflow

This appears in the boss fight for the sandcastle. Basically when you go off one side of the screen you come out of the other. If you could somehow get to the edge of the screen in scrolling levels you would still come out the other side. This is how a toy factory skip might work if there was no failsafe cap if you get too far off center.

Time bonus countdowns

These are quite inconvenient because if you save x frames on a level you save <x frames overall because the time bonus takes longer. Luckily there is never a situation where waiting longer to finish the level would save net time.

Speed preservation from slopes

While the engine for Castle of Illusion works differently to Land of Illusion this glitch is present in both with slightly different inputs. I learnt how to do this glitch by adapting the Castle of Illusion glitch. If you slide down a slope your speed reaches higher than the normal speed. When you leave the slope and touch the ground, if you are holding left or right you hit the ground speed cap and return to normal speed. If you let go of right you will lose speed at some slow rate, rather than hitting the speed cap straight away. After a slope, you can travel along the ground without losing any speed by pressing down once every 4 frames (60fps). This keeps the full speed of whatever you had when you hit the ground and causes no deceleration.
Theoretically, if you had a slope then flat ground you could continue moving at slope speed indefinitely. But unfortunately jumping causes you to lose some speed (a set amount for every jump no matter how big it is) and falling off a ledge does similarly. This means that after a slope I try to do as few jumps as possible. The start of the desert stage is the best example of this technique in the run.

Skinny dipping

This is probably the most significant find since the published TAS. It’s a glitch where if you are little mickey, then transform back while entering water from a ledge (the water has to be the same height as the ledge) then you go invisible and can pass through objects such as chests and jars. This glitch was found by KrazyRasmus.
It is only used in the sandcastle level but it is extremely useful there skipping a whole puzzle. It’s important to note that Mickey is actually invisible during the glitch. Sometimes invisibility can look like an artifact of flashing in 30fps video.
It’s possible to get the invisibility effect by starting as big mickey and transforming into little mickey but unfortunately you don’t get the passing through objects effect this way.

Phantom castle “early”

On the map screen after the beanstalk there’s a single frame where mickey is on the beanstalk where if you press 2, you enter the level. This saves 94 frames over the normal way of walking to the castle and pressing 2 there. However, if you’re one frame too early, the game crashes. Thanks to Btrim for showing me this crash, which then turned into the glitch.

Key not despawning glitch

There’s a glitch where you can open a door with a key, but not have the key despawn. This is just due to very precise positioning, but I’m not sure why it works. See Toy Factory and Phantom’s Castle for this glitch.

Wall Clipping

There is a way to clip walls which wasn’t useful in the run. I won’t go into it here but I’ve uploaded a Youtube video with lots of information in the description: https://www.youtube.com/watch?v=AeDy-0GRV8I

Tiny Lag reduction

Little mickey in general is less laggy. During boss fights I sometimes transform to reduce lag. It’s not very useful in normal levels since the transforming time takes so long but it’s good to keep in mind.

Tiny falling speed

Sometimes transforming into little Mickey off a ledge makes you fall a little bit faster. This was useful in Palace ruins. Sometimes it makes no difference like near the end of Phantom’s castle.

Door entering optimally

To enter a door you have to have 0 velocity then press up. For the first few doors in the game I have to carefully optimize pulling backwards before a door to slow myself down as quickly as possible. Once I get the tiny potion I can use that at the doorway which instantly stops movement, then the nest frame I can press up to enter the door. This is a lot quicker than manually slowing down.

Extra Stars

Each level in this game has a star which will add to the maximum health (unless you already have 5 stars). This category is any%, so they are not necessary although there’s also a 100% category which gets every star. These stars are usually out of the way, but are still relevant for any%. In the last level I grab the extra star. This is because I use a damage abuse near the end of the autoscroller but I need to use another damage abuse in the next room. Instead of skipping the first damage abuse it’s quicker to just grab the extra star after it. This means that I have one extra star for a third damage abuse later in the level, saving 12 frames.
There’s a star in Tiny Cavern that I was very tempted to get. It takes 57 frames to get and saves time in Palace Ruins, Craggy Cliff and Phantom’s Castle. So basically there are 2 possible routes: star in tiny cavern or star in Phantom’s Castle (note getting none or both is slower and the rest of the stars are out of the way). Getting the star in Phantom’s Castle allows for an extra damage boost over starting the level with 3 stars. I carefully timed both of these routes and they are extremely close. Getting the star in Phantom’s Castle was faster, but if more damage abuses were found, Tiny Cavern star might be faster. However, having 3 stars for more of the run actually causes more lag (for example 11 frames in flower field), this is what caused the no tiny cavern star route to be faster. I timed 4 frames different between the routes, but there is most likely a bigger gap due to the extra lag from the extra star in the HUD with tiny cavern star route.

Useful RAM Addresses

DescriptionAddress
Health0x0099
Velocity 10x0211
Velocity 20x0200
X Position0x0215
Y Position0x020B
Tornados RNG (Level 2)0x04BA
Screen X Position0x020D
Boss Health0x041F
Boss Cycle and RNG0x041A

Individual Level Comments

Level 2 (Lake)

The first part of this level is cycle based so it doesn’t matter how quickly you get to the 2 blocks. I attempted to do less jumping in the start to reduce lag, but the extra time near the enemies that it caused actually increased lag.
The tunnel is one of the most complicated sections of the run. The route through the tunnel is possible with precise RNG manipulation and vine grabs. The tornados are based on RNG. When entering the room, or after a tornado has gone, a number is chosen between 198 and 229 and stored at 0x04BA. This number is how long until the tornados appear in frames (30fps). This can be easily manipulated by pressing combinations of left and right before entering the door. Even one frame different can drastically change the result.
The other bit of tech is leaving the vine early. The tornado locks mickey to the vine twice, but by grabbing the vine some time after the tornado has started you miss the second time that the movement is locked since mickey is already in his hanging on animation. This means that you gain control sooner and can swim to the right sooner.
In this TAS I enter the room with the tornados coming as quick as possible (198). Then I do the early jump off vine glitch. I manipulate the second tornado to be 221 which is exactly the right amount so that I can reach the last vine, but not too much so as to waste time. I can’t get the glitched vine jump early because I have to grab the vine as soon as the tornado starts to avoid being blown back. The main improvement of this route is grabbing the last vine instead of the second to last, saving 244 frames.
I tested the key grab both ways (off the ground or the block) and the way used in this TAS was slightly faster.

Level 3 (Blacksmith’s Castle)

The main tech used in this level is lots of corner boosting. I do it on almost every wall, except for when jumping would cause more lag, making it slower. In the second room I use a damage abuse to skip waiting for a cycle and use my time down there to do even more corner boosting.

Level 5 (Castle Ruins)

The autoscroller section was one of the biggest improvements in this TAS and was one of my main reasons for starting this TAS thanks to a new glitch found by Mephistus (I think). By lifting the key off the button when the key just about to go off screen, but the button would be off screen, the button stays down. This means that from the first button I can keep the screen constantly scrolling left. If you pick up the key on the last possible frame it turns invisible in your hands and if you throw it, it completely goes away, if you move back to the key’s original location while holding the invisible key, a real key will appear in your hands. Unfortunately this isn’t useful. A video of this glitch can be found here: https://www.youtube.com/watch?v=gWp16mQrRNI
The boss fight is quite complicated. Rather than hitting the boss as quickly as possible, I have to delay the second hit by 2 frames (60 fps). This makes the boss swoop right rather then left for the third hit. If the boss swoops left it’s impossible to hit it without losing time. I found a new strategy for picking up the last key to open the level door. By letting it fall on top of you, then running out from inside the key, you get one frame of the “able to pick up object” state so you can press 1 to pick up the key without wasting time running into it. This saves roughly 6 frames.

Level 6 (Tiny Cavern)

I start by manipulating the enemy to come into the range where I can hit it. This is as simple as pressing left for one frame. Then throwing the block is the fastest way to get through, even faster than damage abuse. The rest of this room is corner boosting and squeezing through very narrow gaps. There’s an improvement at the start of the second room. Instead of running up to the part where you need small mickey, I turn small as soon as the room loads. This means that I only have to accelerate to full speed once (after transforming) instead of twice (once at the start of the room, then again when transforming). There were 2 possible places to damage abuse here (both from the enemies that come out of the floor. Both were similar in timing and both require big mickey after passing, so you can’t squeeze through as it’s going down as small mickey. Damage abuse where I used it was faster due to there not being room to run up to the enemy as big mickey, but in the spot later where I waited instead of damage abuse, I could keep full speed while running through.

Level 7 (Flower Field)

I considered transforming into little mickey for this stage to reduce some lag, but after TASing both ways I found that it wasn’t worth it. There was a new strat in this level, where instead of waiting to jump over the 6 flowers I use speed preservation from slopes to jump into the fourth one which spits me to the right (the first 3 spit left). This saves several seconds over waiting for the small flower platforms to spawn. At the end of this level I use the quick key grab from inside the key like in level 4.

Level 8 (Toy Factory)

A minute could possibly be saved in the level with the wall clipping technique mentioned earlier, but as far as I know it’s not possible in this level. A lot of this level is transforming between small and big states to stop and turn around, mainly on the guns. I use the “key doesn’t despawn” glitch to take a key through the door and avoid doing a “puzzle” with a jar. In the room with the narrow passage and punching boxes, there’s a route improvement over the published run. Rather than waiting for the first box to come up I take damage and pass through it with the invincibility frames (same idea as the wall clipping glitch). This also conveniently gives me a good cycle through the rest of the passage.
The boss has some RNG to it with the amount of time that it spins around for without stopping. This is very similar to the tornados in level 2, where it is easy to manipulate. The shortest time that I got it to spin for was 128 frames (30fps). As far as I’m aware this is the shortest possible time as similarly to level 2, I attempted over 1000 times to improve this and got a lot of 128’s in the process.

Level 9 (Palace Ruins)

By manipulating the second bat to fly lower I can avoid slowing down for it. In the second room there is a lot of RNG with the exploding rocks. For the first one I do some RNG manipulation to have the leftmost block destroyed as soon as possible. The rocks fly out at different heights so the block destroying can differ by up to 20 frames. Then I use small mickey to get through without taking damage, saving some more time. The strategy on the second exploding rock is to bounce on it on the earliest frame where it can destroy both blocks with a single little rock. Then I manipulated this to happen as soon as possible. I considered breaking only one rock and using little mickey to get through but this was slower since I would need to detransform. The strategy with big mickey is to get between the two little exploding rocks. It’s impossible to run straight through so ducking under the last rock at the cost of a frame or 2 is necessary. I also had to make sure not to load the shooting enemy too soon otherwise I couldn’t avoid the projectile. Some very minor time could be saved here if I had an extra star, since I could use little mickey, saving 3-4 frames, then damage abuse from one of the rocks to transform into big mickey before the ladder.
In the upwards section I skip grabbing the jar by using a damage abuse at the end. I would like to transform into little mickey to get past the exploding rock section but unfortunately little mickey can’t reach high enough to do the damage abuse so it would have been slower. In the room leading to the boss I jump before falling to make sure I hit a high falling speed, rather than building it up as I leave the ground. While this technique is present throughout the entire run, it is extremely important in this room because the small number of frames saved by this means that I make an earlier cycle and save 239 frames over the published run. One thing to note is that the published run uses this time waiting for the cycle to bring a block into the boss fight, saving 61 frames in the boss fight. So the total amount saved is actually 178 frames. I make the cycle at the last moment so there is no way I could slow down to grab a block and still make it. If I did slow down then I would miss the cycle and have to wait another 3 seconds.
The cycle mentioned above is actually the position of the boss which rolls around on the screen before the boss fight. Usually you pick up the blocks and it chases you into the arena, but with little mickey you can jump past the blocks. In the TAS the boss gets stuck up on the wall for the first cycle which makes the cycle quicker, saving 92 frames. It’s actually possible to create a progress block in the game (until the timer runs out). This happens if you wait a few frames later than this TAS to enter the arena and the effect is that the boss simply doesn’t spawn https://youtu.be/i-6fARr-1hw

Level 10 (Craggy Cliff)

I use the block to kill the troublesome bird on the first part of the level which is faster than jumping on it. While it looks like I could sneak past the bird, if I do it hits me while climbing the wall. The middle part of the level is essentially an autoscroller. I decided to use this time to show off a glitch where Mickey gets pushed to the right of the screen (similar to a SMB glitch). This is the same process as the corner boosting, but to maintain my position right I have to be sure to never press left.
There were 2 potential areas to use a damage abuse. One was in the middle area of the level on the spikes near the exit, and one in the last area which was used in this TAS. The one used in the TAS saves 4 frames over the one used in the middle area. If I had an extra star in this level, I could save 28 frames with an extra damage abuse.

Level 11 (Desert)

The start of this level features a lot of slope speed tech. I manage to keep some speed from the last slope all the way to the right side of the pyramid. This tech saves 204 frames over the published TAS. When I get to the right of the pyramid it looks like I should jump to avoid bonking the ledge while falling. But jumping reduces some speed so after timing both I concluded that not jumping was faster.
The last room before the boss was the biggest improvement over the published run and one of the main reasons that I started working on this. There is an intended shortcut in this room which was not widely known at the time of the published TAS. It would have been quite difficult to find since you have to be small mickey and do quite a precise jump into the wall. Using this path the whole room can be skipped, saving 1922 frames over the published run!

Level 12 (Good Princess’s Castle)

I used the skip found by Mephistus to skip the entire level. While on the spring I use the time to transform back into big mickey (for grabbing the key). It’s possible to transform automatically by being pressed up against the roof but I couldn’t get it in a way that was quicker than doing it manually. I was able to clip in one bounce that was pressed as soon as I detransformed so this should be the quickest way to do the level. You could get through as small mickey but then you just have to transform back into big mickey after anyway, losing time. I saved around half a second on movement which was enough to get to the door before the pumpkin enemy blocked me off, which saved about another half second.

Level 13 (Sand Castle)

Every time you jump in the sinking sand you lose 1 unit of distance (about 2/3 of a frame lost 60fps). As a result I try to minimize jumping in it while still getting as many corner boosts as possible.
By using the same inputs for speed preservation on slopes, I can keep walking speed while travelling up the first sand hill. This saves me from trying to awkwardly space my jumps and is actually a bit faster than jumping up in some cases. The rest of the room is all speed preservation from slopes. Optimizing this speed preservation saved 72 frames.
The second room is the only application of skinny dipping. I use the invisible state to pass through a chest, completely skipping the coloured block puzzle. This saves about 34.5 seconds over the published run and was one of the reasons I started working on this TAS. Usually RTA runners get hit by something to make mickey visible, but there was no reason to in the TAS. I want to stress that the entire section is done while actually invisible since watching encodes at 30fps sometimes makes flashing appear invisible. I thought it was entertaining but it did get annoying after a bit, either way turning visible would have been slower so I chose to stay invisible. At the end of the room I skip the water fountain puzzle by just doing short hops across rather than using the jar.
The boss fight had a lot of RNG and a lot of lag, but landing the hits optimally was quite easy. The amount that the crab moves left and right is RNG (similar to the card boss in Toy Factory). The lowest time is either 18 or 30 frames (in hex, 30fps) depending on which part of the cycle the boss is up to. I use this playaround time to demonstrate wall clipping with the jar. Due to the crab hitting the jar back at you, you can actually get really far into the wall. If you get far enough into the wall a horizontal underflow happens and you come out the side (this also works as an overflow on the right side of the screen). Another thing that can happen is the wall is that you are no longer considered in water and you get air back, I use this to do the whole fight without surfacing. I was glad I could slow off the glitches in the fight, because it was very difficult to throw the jar without causing any extra lag. Overall with lag reduction and RNG manipulation I saved 378 frames (60fps) over the published TAS in the boss fight.

Level 14 (Island)

At the start of the level I throw the bean directly into the hole rather than letting it bounce in, saving 12 frames. The main improvement of this level was avoiding waiting for the wind to grab a vine. Instead I jump and grab the very bottom of the vine from a lower screen. This saves 333 frames.

Level 15 (Phantom’s Castle)

There are 3 doors to choose from at the start of the castle. All 3 are autoscrollers. I use a damage abuse at the end of the autoscroller, it’s actually quicker to use the damage abuse and get the star than to do the whole thing damageless (note you need at least 1 spare star for a very important damage abuse later).
In the second room I do a damage abuse to get into the door much quicker. Without this I’d have to wait for the ball to come back up. There’s a “key doesn’t despawn” glitch to avoid some backtracking back in the central room. Since I got the star in the autoscroller I’m able to do another damage abuse. The first candidate was the last ball (before the evil door room) but this saved almost no time. I was able to save 6 frames by using damage abuse when entering the evil door. This is because I could kill it earlier and use the invincibility frames to enter it without dying from the spikes.
Unlike most other bosses, the phantom fight isn’t based on RNG. Instead, it can be manipulated by standing either side of the phantom, resulting in shorter travel distance for the phantom. The optimal pattern is L,R,R,L,R,R,R. Each of these manipulations can save over a second, the last 2 are only a few frames and probably not worth it RTA. Using this manipulation saves 441 frames in the fight over the published TAS. I experimented with trying to ground pound the phantom instead of throwing a block in the second phase. It is theoretically possible if you could get the height, but there’s no way to. Not even if you bounce off a block.

Thanks

Mephistus: for making a great TAS of this game and finding out lots of tech and strats.
KrazyRasmus, Btrim and Jungon: who personally helped me out with figuring out stuff for the TAS.
Tee-N-Tee: who had a great reference for optimizing Mickey Mouse games with the Castle of Illusion TAS.
The SMS speedrunning community: for finding awesome new strats for this game

feos: Judging...
feos: Replaced the movie file with the one that syncs on a fixed SMS core.
Publisher, set the notable improvement flag please!
feos: Thanks for reminding me, feos, I will.
Last Edited by adelikat on 10/23/2023 3:08 AM
Page History Latest diff List referrers