It’s time to say goodbye!
Mario Maker 2 is just around the corner and with its release MM1 will go into it’s well
deserved game retirement.
But before we allow Mario Maker 1 to finally sit down in a park and to feed birds, let’s
push it once again to it’s absolute limit.
Today we are going to take one final deep dive into mario makers crazy quantuum loading
shenanigans.
We will take a look back at how some of the craziest mario maker contraptions worked,
we will take a deep dive into how mario maker actually works below it’s shiny surface,
and we will finally answer the eternal question: Does a Muncher exist if nobody looks at it.
But we are not only taking one final look at all those tricks to say goodbye to mario
maker 1, because there is a good chance, that a lot of those tricks are still going to work
in the sequel.
So are you ready?
Let’s do this!
Okay so let’s start by talking about how entities get loaded in mario maker and how
to make use of this.
So here our poor little plumber finds himself in the middle of a boss fight against bowser
jr.
Everything appears to be quite normal.
Jump three times onto jrs head, don’t run into the ouching shell, don’t touch the
hot fireballs.
Business as usual.
Or so mario thought, but in truth this bossfight is far from being an ordinary encounter.
Because as soon as mario leaves the small area in the middle of the room, and crosses
one of the fateful track lines, the whole arena starts to collapse!
Oh no!
It looks like Mario has to defeat bowser jr here, without ever leaving the small corridor
in the middle, while the heir to the koopa throne is allowed to use the whole arena for
the battle.
That’s not fair!
But even though everything here is rigged against our hero in a pantsuit, he still manages
to beat bowser jr against all odds.
Now he finally is able to leave this area with the key bowser jr dropped.
That is, uhm, if I hadn’t forgotten to actually put a key into bowser jr.
Uhm...
Hooray!
Okay so how did all of this work?
Well it’s actually surprisingly simple!
The only thing we need to make this collapsing boss arena work, is this muncher on tracks.
Yup.
So it’s time for a couple of mario maker 1 loading experiments!
So here we have a super simple set-up to find out the exact timing when objects get loaded.
We simply have a shelmet on top of a spring.
As soon as this block gets loaded the shell starts to travel, and destroys the block at
the top.
So all we have to do is to slowly move mario forward, and once the shell starts to travel
we know how many blocks off screen are loaded in advance.
Aaaaand hooray!
The shell hit the block!
If we mark the spot where the camera is at once the shell activates, then we can see
that objects get loaded as soon as they are no more than 4 blocks away of the current
camera border.
With this knowledge it should be pretty obvious how our super unfair boss arena worked.
There is one muncher to the right and one to the left, each one at such a distance that
they get loaded as soon as mario crosses the line.
Once they load they start to destroy the ceiling.
And this ladies and gentleman directly leads us to our first universal principle of unseen
muncher behavior!
A Muncher exists as soon as it is no more than 4 blocks away of the current camera border.
Super simple stuff, but there is actually a lot more that we can do by exploiting the
loading orders.
See the thing is, objects that are within the enemy entity limit simply don’t exist
before they are loaded.
Let’s do another experiment to proof this claim.
So first things first items only despawn after they are more than 16 blocks outside of the
current camera border.
We can see this here, this shell destroys exactly 16 brick blocks out of sight, and
then magically disappears.
This means that items that got loaded, stay loaded for quite a while even when travelling
through unloaded areas.
So check this out.
Here we just copy the area from before, but we swap out all the brick blocks with bullet
blasters.
So if we now activate the shell, then the shell actually pulls off the impossible and
bravely travels through all the blasters, hits this brick block, and then falls into
this hole.
What a hero.
However, if we run to the right and then back to the left, before we activate the shell,
then the blasters got loaded previously, and the shell isn’t able to magically traverse
solid blasters anymore.
This little trick is incredibly powerful, we can use it to test whether mario has entered
an area before, or we can test from which side mario approaches an area.
Here for example we have a setup where a pow block gets activated when mario comes from
the right, but the pow block won’t trigger, if mario approaches it from the other side,
because once, the blaster that blocks the shell is loaded before the shell, and once
it’s the other way around.
This directly leads us to the second and third principle of unseen muncher behavior.
First: Once a muncher exited once, it exists until the camera is more than 16 blocks away.
And second: A muncher that hasn’t been loaded, doesn’t exist.
Okay so that’s enough basic loading stuff.
Let’s talk about advanced loading stuff next!
Let’s take a look at global ground, and global loading.
*click*
Alright, so bowsers space base just shot down marios spaceship and he crashed onto a hostile
and mysterious planet.
He lost all his power ups, he has no way to communicate with the space engineering toads
back at home, and his only chance to ever get a chance to rescue his princess again,
is to explore this foreign planet.
After a bit of exploration, mario finds this area, deep below ground.
There is a totally a chozo statue, that carries an ancient relic, that is mario's only chance
to escape, because this ancient relic would allow him to reach the planets exit door.
But how should he reach it, the path towards it, is blocked by black bullet blaster colored
door, and the path to right is blocked as well.
This time by a red door.
Hm, mario obviously needs to find the mechanism that opens up those doors, and would you believe
it, there is actually a door opening question block hidden in this cave.
All that mario has to do here, is to hit his head against this question block, aaand hooray,
the red door opened up!
This path leads or mustache wearing space plumber to another door opening device, this
time it is colored black.
So if everything worked out, the path towards the totally a chozo statue should now be open.
Aaand it is!
Empowered by the power of this very powerful, ancient headgear, mario is finally able to
leave.
Alright so how do we open up doors on the other side of the level, by hitting a question
block?
Well, let’s do a quick mario maker experiment!
So here we have a very similar set up three times.
Once we shoot a shell outside of the current camera border on normal ground blocks, towards
a question block that is more than 16 blocks away of the camera border.
Once we do the exact same, with the only difference that the shell travels on top of platforms
on tracks, and then we do it a third time, but here the shell travels on top of firebars.
We’ll run this experiment twice, once we will load in everything before shooting the
shells, and once we will shoot the shells into an unloaded area.
Okay, so first let’s simply shoot the shells, and see what happens.
The shell that traveled on top of the firebars behaves as expected, it despawns before it
is able to reach the question block, the same happens to the shell that traveled on top
of the ground blocks.
No surprises here.
Buuuuut, the shell that traveled on top of the platforms on tracks didn’t despawn.
Weirdly enough this shell refused to disappear, and actually hit the question block!
Strange I wonder what happens if we run this experiment again, but this time we load in
everything before the shells start to travel.
So let’s take a look at the results.
Once again the shell on top of the platform reached the question block, once again the
shell on top of ground didn’t and once again, well wait a second.
That’s weird!
This time the shell on top of the firebars was able to trigger the block with the question
mark!
Okay so what’s the solution to this little riddle?
Well the reason why the shells behave differently depending on the ground they are traveling
on, is because some ground is global ground.
For some strange reason there are three surfaces in the game, that never unload, and that keep
everything on top of them loaded.
It’s fire-bars, but only if they were loaded once, it’s items on tracks, and weirdly
enough: p-switches that spawned from a question block.
Every item that is on top of one of those three surfaces never unloads.
Not even when it is away more than 16 blocks from the current camera.
The only way to unload those objects is to completely reload the area, by walking through
a door, or a pipe.
Let’s add this to our little list, since this, conveniently, also is the fourth principle
of unseen muncher behavior.
Once loaded, a muncher on global ground doesn't cease to exist, until it leaves the global
ground.
Hooray!
Okay so that’s the first knowledge puzzle piece that we need if we want to understand
how our doors from before worked.
The second puzzle piece, is that all entities in the ground block entity limit are always
loaded.
No matter whether we pre-load them or not.
Let’s quickly proof this!
Here we have an ultra simple setup, we simply have an explosive bob omb, and a muncher that
drops onto this walking boom-bot, a couple of nasty coins, and a goomba.
If we approach this area from the left, then the muncher and bob omb load before the coins
and the goomba are loaded.
So let’s load in the explosion, and see what happens.
All the coins got affected by the explosion from before and fell down, meanwhile the goomba
is doing fine even though he just was in the middle of an explosion.
The reason for this is surprisingly simple.
The goomba didn’t exist when the bob omb made his boom thingy, while the coins were
there, even though we never pre loaded them.
Coins live inside the block entity limit, and all items inside of this limit are always
loaded.
That’s brick blocks, block blocks, clouds, donut blocks, ground tiles, coins, question
mark blocks, ice blocks, spikes and most important of them all, donut blocks and invisible blocks.
So that’s where stuff becomes a bit complicated for a second.
Let’s say we have an invisible block behind a bullet blaster, then it is impossible to
trigger the invisible block, because the bullet blaster is on top of it.
If, against all odds, we somehow still find a way to activate the invisible block, then
the blaster wouldn’t be able to load anymore, because then a solid block would be spawn
blocking it’s spawn.
So this is where it becomes complicated.
If we are far enough away from the blaster, then the blaster isn’t loaded anymore, the
blaster literally only exists if the camera is close to it.
Invisible blocks however don’t share this quantuum property, they always exist.
What this means, is that we can send a shell on global ground towards the blaster that
isn’t there currently, and have the shell trigger the invisible block behind the absent
blaster.
If we now go back to the area where the blaster should be, and load it properly, then the
blaster can’t load anymore, because the invisible block is now visible.
And this ladies and gentlemen is how the doors from before worked.
Once we trigger the question block this setup activates a shell on top of the stage.
Now this shell simply travels on top of global ground towards the blaster, that blocks the
door.
There it hits the invisible block, and hooray, the evil door blocking blaster can’t spawn
anymore.
Okay so that’s the basic loading stuff, and the advanced loading stuff.
Time to take a look at the really bonkers tech.
Let’s talk about entity limits and how to manipulate them to our liking.
Let’s best start with an example.
Here our plumber finds himself in the middle of one of bowsers many castles.
But what is this, the path forward is blocked.
Oh, no!
Hm, but wait that’s strange, this bullet blaster isn’t firing anything.
Oh, I see, that blaster is linked to a goomba switch!
This goomba is the key to activating the blaster, all that mario has to do here is to kill the
walking mushroom, and hooray, the blaster activates!
Next our mustached hero has to make his way through an empty corridor, before he becomes
entrapped in this room with three question blocks.
But what is he supposed to do here?
Aaaah I see, that’s a combination lock, all that mario has to do here is to hit the
three question blocks in the right order and the exit opens up, but what if we hit a wrong
block.
Well if we hit a wrong block, then the pipes at the top suddenly decide that they are filled
with hungry chain chomps, and our poor plumber gets eaten alive.
How ouching!
But that’s really marios fault for not paying attention.
The hallway up to the combination lock showed three bowser statues a couple of times.
All that mario has to do is to hit the three question mark blocks in the order the statues
showed him earlier.
It’s the smallest one first, then the one in the middle and finally the biggest one,
aaaand hooray!
The exit opens up, and no chain chomp pipes become activated!
Alright so how are we able to activate pipes when mario hits the wrong question block,
and how did we wire a blaster to a goomba?
Well we do it by clever manipulation of the entity limits.
Time for another experiment.
So here we have three question blocks that contain munchers.
We can load the game, hit them, the munchers pop out, everything is fine.
However, if we approach this area from the left side and hit the same three question
blocks, something strange happens.
They don’t release anything anymore.
We can do the same with blasters and pipes.
Here we have two blasters that shoot munchers and pipes that spawn goombas.
Everything is fine when played normally, but if we approach the area from the side, then
suddenly the pipes stop spawning, and the blasters shooting.
To make everything even weirder, they start to behave normally again, once we hit this
p-switch.
At first glance this may look a bit strange, but there is actually something surprisingly
simple going on, hidden off screen, that explains this little riddle.
Basically, we load in 100 goombas at once and place them on top of of a single offscreen
firebar.
Since firebars are global ground the 100 goombas don’t despawn when we leave this area.
Mario maker stops to spawn new enemies once the in game enemy limit reaches 100.
Since we loaded 100 goombas on global ground, 100 goombas are permanently loaded and therefore
the pipes can’t spawn, the blasters can’t shoot and question blocks can’t release
their content anymore.
Only if we defeat a goomba, new enemies are able to spawn.
This is where the p-switch comes into play.
There is simply a coin placed behind our 100 global goomba setup.
Since coins are always loaded, they also always turn into brick blocks, no matter where in
the stage they are, so as soon as we hit the switch, the evil coin becomes an alright brick
block, that kills all 100 goombas, and frees the entire entity limit.
That’s how we wired the goomba to the blaster before.
Here we just loaded exactly 98 items globally into the in game entity limit, then the goomba
and the blaster loaded, which brings the limit to exactly 100, and therefore prevents the
blaster from shooting.
If we now defeat this poor goomba switch, then one spot becomes freed again, which gets
immediately filled by the shell that the blaster shoots.
This finally leads us to our fifth and final universal principle of unseen muncher behavior.
A muncher inside a spawnable object, like a question block, only exists if there are
less than 100 enemies loaded.
Hooray, but this still doesn’t explain how the combination lock from before worked.
Well to understand this, we have to quickly talk about donut overflowing, and this is
where all the different things we discussed so far beautifully come together.
The thing about the in game enemy entity limit is, that a couple of things count towards
it, that don’t count towards the limit while building a stage.
The limit during stage creation is the limit A, while the entity limit B or short ELB during
playing follows different rules.
Doors for example, take a spot in the ELB once loaded, cannonballs shot by cannons do,
and most interestingly, donut blocks do as well.
But not ordinary donut blocks, only falling donut blocks count.
As soon as a donut block drops down it takes up one spot in the elb, and this spot gets
freed as soon as it respawns.
So ... if we want to make use of this, then all it takes is twenty good big thwomps, 20
helpful firebars, 20 dumb coins and 60 donut blocks.
All that we have to build is this following setup, and to load it once, then the ELB immediately
becomes filled.
Here’s how this works.
Each thwomp and each firebar count as one entity towards the elb, which brings it to
40.
Then there are 60 donut blocks, since a thwomp is permanently on top of them, they permanently
drop down, and therefore permanently bring the elb up to exactly 100.
The firebar ensures that the thwomp is permanently loaded, the donut blocks are in the ground
tile entity limit, which means they are always loaded as well.
In short once we load this contraption in, the elb is permanently filled in our stage,
but the creation mode entity limit is only at 40.
Once again, we are able to place a coin behind the thwomps to immediately free the whole
ELB as soon as a p-switch gets triggered.
So this is the setup we used to make the pipes spawn chain chomps as soon as we enter a wrong
combination.
Basically up there is a quickly hacked combination lock contraption, that triggers a pow block
if the combination is entered correctly, and otherwise it triggers a p-switch.
If the p-switch gets triggered then all the donut overflowing thwomps we loaded in before
disappear at once, which allows the pipes to spit out biting dogs.
That’s the whole trick.
Hooray!
So there is actually much much more possible in mario maker by abusing it’s loading algorithm,
but those were the most basic concepts of mario maker 1, and hopefully most of this
stuff still works in the sequel.
So to finally answer the question from the beginning of the video: Does a muncher exist
if nobody looks at it?
Well, if it is less than four blocks away from the camera yes, otherwise, no except
it stands on a fire-bar since this is global ground, but only if the fire-bar got pre-loaded
before otherwise it’s no again.
If the muncher lives inside a question block than it does exist as long as the block isn’t
more than four blocks away from the camera, otherwise it doesn’t except the elb value
is currently above 100 in which case it doesn’t exist until the limit is cleared, and if the
muncher is on track then it doesn’t exist until it is loaded for the first time, but
afterwards it always exists.
So the next time someone asks you this, now you know the answer.
Hooray!
Okay and with that being said, I hope you enjoyed this little video, if you did don’t
forget to leave me a thumbs up and maybe you feel especially hyped for mario maker 2, and
want to hit subscribe button as well.
I hope that all of you have a wonderful day and to see you soon.
Goodbye!