MissingNo. was a huge influence on me as a kid, pretty sure it's the main reason I became so interested in coding and hacking as a kid. It was a lot of peoples first exploit.
Huge agree for my case, not just that, it also got me accustomed to binary/assembly/C and such, meanwhile others were hating them, I was able to work fine! I really am glad that I saw it as a kid!
@@Eluderatnight the trick I found and used involved walking in front of a trainer and hitting pause and teleporting with Abra. I thought it was a load of crap because you can't input move + pause on an emulator. Months later I was curious, pulled out a gameboy and tested it and was shocked when it worked.
@@Eluderatnight NO NO NO you guys are all wrong. The REAL way to get Mew is to get surf and strength before losing access to the S.S. Anne boat. Then instead of getting on the boat, you surf to the side. Then you use strength on a weird van that's there, and it will move and Mew will appear from under the van. Trust me I'm an officer of the law. I can confirm.
Just wanted to note, in case someone wants to know, the youtuber 'Retro Game Mechanics Explained' has uploaded a video recently about why missingno looks the way it looks. I find these indepth analyses quite interesting.
Leon M another great channel to check out is missingnoxpert. He has his stuff unlisted but you can find it in the community tab of his channel. It’s great stuff! Here is his video on the old man glitch: ua-cam.com/video/-Lrq4smiAzE/v-deo.html
14:47 "(...) but for some reason, the tutorial of the Old Man writes our player's name exactly into that spot (...)" It might be that for the purposes of the tutorial, the Old Man takes over as the player character and the 'real' character name has to be temporarily saved somewhere. One could actually check this with a similar analysis - checking which region the player name is written to at the start of the game and then looking up whether the tutorial writes "OLD MAN" into that region.
Wait... so if the game saves the player characters data to an unknown location and later on the game reads that as instructions on what Pokémon shows up at that weird shore line, does that mean we kind catch ourselves if we catch missingno?
Well kinda, you catch a pokemon whose tipe and level depends on your name, so I bet you could actually cheese the game into spawning whatever pokemon you want there by simply naming yourself some very specific set of numbers.
@@eddycolangelo Bulbapedia has a table showing what Pokemon and trainer fights you'll get depending on what characters you put in the third, fifth, and seventh slots of your name. But you can't enter numbers into the name select, so this is all you can get from this glitch. m.bulbapedia.bulbagarden.net/wiki/Old_man_glitch
When my 6 year old self learnd about this glitch suddenly nothing was impossible anymore. But what really blows my mind is how the mew glitch was discovered. This was black magic for my 6 year old self. There's no way someone just did all the steps by accident .
I have a slightly different theory on how the Old Man Glitch was discovered. I think the weird Pokemon on the coast would have initially come from the Pokemon Mansion. I remember my first experience with that coast was running into random Fire-types in the water, since I came out of the Mansion and went right to the coast to catch Water Pokemon. Then the Old Man could come in if people thought it had something to do with the Pokemon you encountered. Since he finds a wild Weedle, someone may have thought that that might trigger finding Weedles on the coast. Then they obviously got the really strange encounters.
@@kevin-bf4ww There are much easier answers. Namely, that the Old Man Glitch is NOT the only way to find Missingno. on Cinnabar Island. In fact, there's an easier, albeit one-time method that is much more likely to be discovered by accident: trade with the NPC that asks for a Raichu in the Lab, then go to the Cinnabar coast. You will be able to find Level 80 Missingno.s
@@kevin-bf4ww I mean, someone might be looking for how to get a legendary, they talk with the old man, they leave the encounter because they dont want to go through it again, and then they find missingno
Your videos on first generation Pokemon glitches are amazing! I've been learning about all sorts of gen one glitches since I was 11-12 and already know quite a bit about how they work, but all of your videos always add to what I already know. On top of that, you always frame and present the information in a very engaging way! Thank you for your hard work and the effort you put in to creating narratives for us to follow! :)
I remember a friend once told me how she found MissingNo. It was very simple. She was showing her dad how to play the game, so she did some basic things to demonstrate, which happened to include showing him the Old Man tutorial and then flying to Cinnabar to show how surfing works. Which, of course, led to an encounter with MissingNo. I think the biggest obstacle to early discovery would be the Old Man tutorial, since you have no reason to ever talk to him more than once, or think he was linked to anything strange. My guess would be that people would talk to him, mash through the dialogue, and accidentally say yes to seeing the tutorial again. I think a big part to a lot of people discovering this glitch actually has to do with locations. Old Man is in Viridian City, an early town, but also the town with the final Gym. But, because this Gym is in the middle of one of the earliest areas, what if you’re underleveled at this Gym? There’s no place nearby to train, no Trainers to fight. So where do you go? Back to the area with the highest-level Pokémon you currently have access to. Where is that? Cinnabar Island or Seafoam Islands, where an Articuno is also waiting for them. So basically, players go to Viridian City, talk to everyone in town either before or after going to the Gym, including the Old Man, get stuck at the Gym or possibly on the rival fight before the Elite Four, fly back to Cinnabar to train, head out for Seafoam Island for training/Articuno, and happen to get a encounter on the coast. Boom, MissingNo.
back in the day we discovered the name of the character you make changes the over level 100 pokemon that appears with missingno, specifically the first letter - quite interesting looking back
This is one of the first videos of you I could completely follow through and understood everything! Please make more of this kind of video's that explains it in this special way!
Ive seen a few videos on this now and I just wanted to say thanks, this one is really well explained to someone who "appreciates programming" but with no hands on experience. I can follow in simple logic what is happening, and it is fascinating.
10:50 That initial write on file load is probably why it appears that, when there's no other frame of reference, the bugged coast uses data from the title screen to populate the encounter table. It's pretty neat to see physically why that happens!
I worked translating this room to portuguese 18 years ago and had to convert a lot of things from hex to ascii and create an ascii table for the game, and I remember when I discovered that I could also change tiles in the game and how pokemons look. Even at that time we already know wich memory addresses could give us infinite items, specific pokemons in every grass, but never cross my mind that the process people used to discover it was so close to the one I used to translate it. Nice vídeo, thanks.
@@Michael-cg7yz ??? these videos are obviously very different, with the only common thing being missingno, the rgme video is more about why it manifests in the way it does. Unless you were making a joke, in which case it was a shitty joke
@@Provoxin Exactly. I came here to check this out since this is one of my two favorite YT channels, the other one being RGMechEx. The two videos have substantially different content, and I really love the two complementing explanations!
This is a PERFECT video on explaining reversing, and bug hunting generally. It's general enough to not require specific knowledge, and taught using a popular approachable topic while still being specific enough to understand and learn what is being covered. Excellent! I'll be saving this to my "RE" playlist to share with others interested in reversing and other topics requiring learning about the functioning of a piece of code.
Theory time~ (Keep in mind I’m no coding expert or anything like that-) The water must have its own code for what kind of pokemon you can catch in the area (like shown in the vid around 14:00 -ish I think). However, due to some development or coding mishap, that one coast doesn’t share the same area code as the rest of the water, and instead shares it with the land. Because you can’t catch any pokemon on the actual land of cinnabar island, it doesn’t update the code when you fly to it. So, with the area code being from the Old Man’s encounter (a place that you can never actually access, and a place that probably doesn’t have any actual Pokémon attached to it; remember, it’s kind of like a pre-scripted event) the game freaks out a bit and instead loads a glitched pokemon. MissingNo.’s Pokédex numbed probably comes into play here (which is “00” I believe) as it would make sense for a area code that wasn’t ever supposed to be accessed to have a default of 0 or to be set to 0. In fact, it’s likely that the area code only exists solely for the Old Man’s little training tutorial against a wild pokemon. If you have a “wild” encounter, but you ONLY want a very specific pokemon to spawn and don’t want anything having the chance of breaking it, why not create an area where no Pokémon can spawn? Of course, the area would probably have to let SOME pokemon spawn, otherwise it wouldn’t (in code) have a reason to exist, so.... let’s set it at zero! Until someone realized some easier way to just put that darn caterpie in the foreground and have it override whatever tried to spawn, but they didn’t want to risk it and left that area in anyways. So basically, everything adds up and eventually overflows and spawns MissingNo. On that coast there. Note: I wrote this before finishing the video, so I apologize for any repeats or something of what was already stated. Edit: ok never mind I guess my theory is just exactly what was already said. Oops :T Edit 2: spelling is hard.
In Pokemon Emerald there are a lot of special event locations that you're not supposed to access even though they are programmed into the game. This series of videos motivated me to hack my way into some of those maps using the in game glitches which was a lot of fun :D
Just wanted to congratulate you on the immersive amount of research you have done! I watch plenty of UA-cam videos a day and I think it is safe to say this is one of the few videos I've ever liked. Keep up the good work and your comprehension on the scientific method and ability to research is amazing!
MissingNo Glitch in Pokemon Red when I played it was one of the first things that got me into game hacking and it's lead to my ultimate career now in InfoSec. Also, GameShark. And funny thing is I had it happen the same way as you, during the bus ride to boy scout's summer camp a long time ago, some kid sat next to me and saw me playing and we started talking after he saw me playing and then the rest was history. I also have fond memories of hacking the PS1 too.....great beautiful times.
Wow such cliffhanger. Great video visualizing something that others have covered. Your way of showing it side by side with the memory getting changed is really nice. Looking forward to the video on that 6th item.
From my exp. as i was just 4-6 years old, you describe the finding of that big very accurate how my sister, brother and me found it. We innocently thought that that was just a special coastline for Ponyta´s, and also we found Missing.No but our big sister prohibited us to catch it, because she thought it corrupted our last savefile.
I found it randomly when I was a kid. Started off with a level 170 something Mewtwo which was kinda scary as it is. Then bam, a level 0 "M". That glitchy amalgamation popping up with a Zapdos cry gave me fucking nightmares as a kid.
That is the one thing I will miss about childhood, I was more easily scared. So videogames would scare the sh** out of me. It gave the stories an extra level of depth that I will never get back.
I had this stupid educational laptop toy that had a spelling checker in it. It had a tiny dictionary and would tell you if a word you entered was in the dictionary. I was playing with it one night when it glitched or something and the display turned into random characters. Gave me nightmares lol
@@audermarspiguet6127 he's not lying. Do the glitch. But instead of fleeing, battle it. It will copy whatever pokemon your using but be glitches. Catch it. Then use all the rare candies on it. It should be able to lvl 215 or so before resetting your level back to normal. I maxed out a marowak to max level and gave it as many calcium and power ups. It was fun as a kid.
Really loving the analysis of interesting Pokemon glitches from both you and stacksmashing. These videos are so fascinating to me. Thanks for taking the time to make them!
I learned a lot about Unity game file formats just by compiling many nearly-empty "test games" with different project settings, then comparing the compiled outputs with a hex editor. Glad to see a trick involving a similar mindset finally getting some light. It's also the way the Cheat Engine tutorial teaches you to find the memory addresses you desire to edit, too.
I remember finding Missingno at Seafoam Island's Coast. It was how a classmate teached. I also remember catching it and it was water/flying type. Then training, I leveled it up by 1 and it evolved into a Kanghaskan level 61.
Retro Game Mechanics Explained has made a video why missingno looks like it does. Also he left some information out to what all is effected, but i hope you can find all the effects encountering missingno has!
This is an explanation I heard about on tiktok where as the old man is turned into your character, your actual character is stored in the memory. Turns out your actual character data is stored next to the code where wild pokemon spawns. The coast is the one place where your name data is not refreshed. So by going there after talking to the old man, you have a chance to encounter impossible pokemon and missingNo
Thinking a bit more about the fact that there's a difference between land and water pokemon in memory sounds reasonable. That way you can handle pokemon in grass and pokemon in water in the same zone differently, what can be neccessary when you start fishing. 🤔
@@donverga As far as I remember from other videos, that's the reason, the tiles right at the shore don't count as water, they are due to a bug somehow treated as land.
i literally found this myself :) we didnt have internet back then or money for strategy guides, we played and played, and when this first occured we didnt even find the missing no rather we found lvl 200+ pokemon, we kept doing this and finally we noticed a missing no. was very cool.
I'm glad this video makes me more understand how does this glitch gets replicated, easy to understand and explained very well. Thanks for the video. :D
Absolutely loved this. I used to use rare candy on all my Pokémon to level them to like 255 (I think) even though 1 exp from a fight set them back to 100.
13:37 All these years we wondered where MissingNo. came from; what it was supposed to be originally. Finally the truth is revealed. MissingNo was _you._
I was around 8-10, no one in India actually is into these games, but I got info on Missing no because of UA-cam. It was the first and best push for me towards cybersecurity and low level tech. Instead of being bored of looking at C/Assembly, I started embracing and loving it on later stages. I am really happy I encountered it!
My cousin and I actually stumbled upon the "glitch" pokemon (He thought I broke his game because I suggested to try the old man lol) in pretty much the way you described, but never noticed that it multiplied any items... I didn't learn this until watching your video just now! lol
Loved this approach to understanding Missingo, very fun to think about how these things were discovered. I’d be interested to see you test if there are names that don’t cause Missingno to show up. I heard in a UA-cam vid ages ago that there’s an invisible “end” character to your name to tell the game to stop writing which happens to have the same ID as Missingno so it will always show up, but I don’t know a lick of programming so I cant find out myself.
MissingNo. is always guaranteed to appear because of what you said: the termination character is hex:50, which is also one of MissingNo.'s index numbers.
This by far was the best explanation to how Missingno works I have seen on UA-cam like ever. Please keep doing that work, it is highly interesting. Let alone I doubt you show these topics for your next Chaos Communication Congress talks :þ
16:00 that's amazing that Rhydon shows up with ID level 1.. here's why: "It may be entry #112 in the Pokédex, but according to Ken Sugimori - the primary designer for the Pokémon games - Rhydon was the first Pokémon ever created. This is also the reason why sprites of Rhydon were so widespread in the original games. In that same interview, Sugimori mentions Lapras and Clefairy as some of the other earliest Pokémon designs to join Rhydon." I'm curious what Lapras and Clefairy's ID numbers are!
I think that when we encounter missing no, we basically encounter ourselves because 'ASH'. So what I think happening is that, when we generally do a battle, we might use our items, so t tally up the game mechanism counts the total items we have during the battle by using the keyword as a "ASH" , and this to has some bug due to which only the 6th element is getting duplicated. We CAN TEST THIS by using our sixth element in the battle with missing no, so as to see if we loose one item or 2 items from the doubled count. This can either find out the weird reason or may give a lead to other possibilities. Please consider this and try it. I hope this helps you put.
I found a similar bug as a kid on my own. The fly away glitch. I remember using like an escape rope or an abra teleporting to do it as a kid. Kept looking up stuff about it until I found the mew glitch
Just wait until you get to the crazier glitches, like 8F (a glitch item used for arbitrary code execution, TheZZAZZGlitch has covered it extensively but maybe you could do it even more justice). Or better, the Mew glitch - I'd love to see you try to explain how _that_ was found, due to how it's a more convoluted glitch than the Old Man glitch and found way, way earlier than 8F.
Assuming it wasn't intentional, the trainer glitch was probably "oh shoot, a trainer, I didn't want to fight him. I'm gonna hit start and see if I can pause. Oh, good, I can. I wonder if I can fly away? Oh nice, I flew away hahaha"
It's so crazy that these little "secrets" got passed around all over the world just through word of mouth. I remember this one so well when I was told about it. Also the trick to get a copy of someone else's pokemon through the transferlink cable... We all passed around Mew.
While this video is interesting, it's a bit of a shame it's mostly fiction about how the glitch was possibly discovered. The real story of its discovery and initial research would be facinating, but also might be lost to history, so I understand why you didn't cover it. Cool video.
Ooh! i think i know why the items are multiplied In fact, i recently got recommended a video about it - but from what i know, the invalid pokemon ID causes the graphics data to be decompressed way further than should be necessary, overwriting other data outside the graphics buffer like the hall of fame data, which is supposedly right next to it
If the name of the character is written into memory (in this case "Ash") does that mean that if we choose a different name at the beginning of the game, we could expect a different pokemon? Could we influence the pokemon by naming our character in a certain way?
@@Invizive yes but using one of the built in names allows more access to pokemon because the player names of the default names don't have 0x00s at the end. They just run into the next name in the list. So you typing in ASH vs choosing ASH from the list will result in different pokemon
NO, that cliffhanger! This is a way more interesting kind of mystery imo. Even if I was half yelling at the screen "but that doesn't necessarily mean that!" Like maybe it was writing to an area, stuff happened that affected something else, and that other thing was read from. It's kind of like the reverse engineering was reverse engineered, you could make certain assumptions because you had the answer already.
The item multiply thing is probably just something about the sprite. Same reason for hall of fame data being corrupted, which if you don't know, that data corrupts because, sprite data decompilation. Instead of writing sprite data for missingno, it goes far off where it should place the sprite data. Coincidentally, right next to the sprite data is hall of fame data, since the write place is far off, it instead overwrites the hall of fame data.
MissingNo. was a huge influence on me as a kid, pretty sure it's the main reason I became so interested in coding and hacking as a kid. It was a lot of peoples first exploit.
Huge agree for my case, not just that, it also got me accustomed to binary/assembly/C and such, meanwhile others were hating them, I was able to work fine! I really am glad that I saw it as a kid!
Nice Dream Theatre profile photo btw
Me to.
Well said. I never thought about the impact of that + gameshark
Same here. As soon as i discovered this glitch i lost my virginity the next day. Thats how powerfull this glitch is!
He showed us the missingno with a mew just to flex
Ikr where do you get mew? Never seen it done.
@@Eluderatnight there are guides out there. You can get one (even 2) with a glitch or you can use an editor for the rom file
@@Eluderatnight the trick I found and used involved walking in front of a trainer and hitting pause and teleporting with Abra. I thought it was a load of crap because you can't input move + pause on an emulator. Months later I was curious, pulled out a gameboy and tested it and was shocked when it worked.
@@Eluderatnight You can get it with the exact same glitch that spawns Missingno. You just have to have the right characters in your name.
@@Eluderatnight NO NO NO you guys are all wrong.
The REAL way to get Mew is to get surf and strength before losing access to the S.S. Anne boat.
Then instead of getting on the boat, you surf to the side.
Then you use strength on a weird van that's there, and it will move and Mew will appear from under the van.
Trust me I'm an officer of the law. I can confirm.
Just wanted to note, in case someone wants to know, the youtuber 'Retro Game Mechanics Explained' has uploaded a video recently about why missingno looks the way it looks. I find these indepth analyses quite interesting.
Leon M another great channel to check out is missingnoxpert. He has his stuff unlisted but you can find it in the community tab of his channel. It’s great stuff! Here is his video on the old man glitch: ua-cam.com/video/-Lrq4smiAzE/v-deo.html
4:48 - "Now, it doesn't seem too farfetched..."
[does not show an image of Farfetch'd]
"My disappointment is immeasurable... and my day is ruined."
"Reality is often disappointing"
I'm too busy thinking about the "keys" that belong to the "man"
14:47 "(...) but for some reason, the tutorial of the Old Man writes our player's name exactly into that spot (...)"
It might be that for the purposes of the tutorial, the Old Man takes over as the player character and the 'real' character name has to be temporarily saved somewhere. One could actually check this with a similar analysis - checking which region the player name is written to at the start of the game and then looking up whether the tutorial writes "OLD MAN" into that region.
Good theory! Could also confirm if Prof oak does the same in the very first patch of grass.
Wait... so if the game saves the player characters data to an unknown location and later on the game reads that as instructions on what Pokémon shows up at that weird shore line, does that mean we kind catch ourselves if we catch missingno?
Well kinda, you catch a pokemon whose tipe and level depends on your name, so I bet you could actually cheese the game into spawning whatever pokemon you want there by simply naming yourself some very specific set of numbers.
@@eddycolangelo I thought the same thing someone should try that lmao
@@eddycolangelo Bulbapedia has a table showing what Pokemon and trainer fights you'll get depending on what characters you put in the third, fifth, and seventh slots of your name. But you can't enter numbers into the name select, so this is all you can get from this glitch. m.bulbapedia.bulbagarden.net/wiki/Old_man_glitch
retro game mechanics explained just made a video about this too!!
the crossover that shall not happen
That was an amazing video! I surely recommend you to watch it.
Better watch it if you are curious why the character is look like that.
nope. it was about the appearence of glichy pokemon, and pokemon in general
@@ОлексійКупранець yeah
When my 6 year old self learnd about this glitch suddenly nothing was impossible anymore. But what really blows my mind is how the mew glitch was discovered. This was black magic for my 6 year old self. There's no way someone just did all the steps by accident .
I have a slightly different theory on how the Old Man Glitch was discovered. I think the weird Pokemon on the coast would have initially come from the Pokemon Mansion. I remember my first experience with that coast was running into random Fire-types in the water, since I came out of the Mansion and went right to the coast to catch Water Pokemon.
Then the Old Man could come in if people thought it had something to do with the Pokemon you encountered. Since he finds a wild Weedle, someone may have thought that that might trigger finding Weedles on the coast. Then they obviously got the really strange encounters.
the sadly easiest and most obvious answer is that a QA tester leaked it after launch
@@kevin-bf4ww There are much easier answers. Namely, that the Old Man Glitch is NOT the only way to find Missingno. on Cinnabar Island. In fact, there's an easier, albeit one-time method that is much more likely to be discovered by accident: trade with the NPC that asks for a Raichu in the Lab, then go to the Cinnabar coast. You will be able to find Level 80 Missingno.s
@@kevin-bf4ww I mean, someone might be looking for how to get a legendary, they talk with the old man, they leave the encounter because they dont want to go through it again, and then they find missingno
Showing you own the console and the game before using the emulator: smart
Could just be using a flash cart.
It does actually work, we did it as kids when the game was just out!
Rare candy cheat
He owned Blue, emulated Red. 😂
Will this bug works on legendary
Your videos on first generation Pokemon glitches are amazing! I've been learning about all sorts of gen one glitches since I was 11-12 and already know quite a bit about how they work, but all of your videos always add to what I already know. On top of that, you always frame and present the information in a very engaging way! Thank you for your hard work and the effort you put in to creating narratives for us to follow! :)
I remember a friend once told me how she found MissingNo. It was very simple. She was showing her dad how to play the game, so she did some basic things to demonstrate, which happened to include showing him the Old Man tutorial and then flying to Cinnabar to show how surfing works. Which, of course, led to an encounter with MissingNo.
I think the biggest obstacle to early discovery would be the Old Man tutorial, since you have no reason to ever talk to him more than once, or think he was linked to anything strange. My guess would be that people would talk to him, mash through the dialogue, and accidentally say yes to seeing the tutorial again.
I think a big part to a lot of people discovering this glitch actually has to do with locations. Old Man is in Viridian City, an early town, but also the town with the final Gym. But, because this Gym is in the middle of one of the earliest areas, what if you’re underleveled at this Gym? There’s no place nearby to train, no Trainers to fight. So where do you go? Back to the area with the highest-level Pokémon you currently have access to. Where is that? Cinnabar Island or Seafoam Islands, where an Articuno is also waiting for them.
So basically, players go to Viridian City, talk to everyone in town either before or after going to the Gym, including the Old Man, get stuck at the Gym or possibly on the rival fight before the Elite Four, fly back to Cinnabar to train, head out for Seafoam Island for training/Articuno, and happen to get a encounter on the coast. Boom, MissingNo.
I would love to be a fly on the wall when your friend encountered Missingno with her dad watching.
back in the day we discovered the name of the character you make changes the over level 100 pokemon that appears with missingno, specifically the first letter - quite interesting looking back
“Your intelligent friend is a NERD”
Sike, I _am_ the intelligent friend
neeeeeeeeeeeeeeeeeeeeerd
@@bigmistqke @Technoblade joined the game.
this part got me lmao
Hahaha and then even bigger nerds
This is one of the first videos of you I could completely follow through and understood everything! Please make more of this kind of video's that explains it in this special way!
0:35 Is it Ben Eater's 8-bit Computer-on-a-Breadboard ?
I think so
Yeah built it in a series of livestreams
Visit his Twitch-Channel or LiveOverflow2 for the 8-Bit breadboard computer.
I was wondering the same thing haha
Love how we know so much about missingno, we're now at a point where we're researching how we found the first glitch that found it.
This youtuber did such an intensive and comprehensive research. I cant leave this video without clicking the thumbs up button.
Ive seen a few videos on this now and I just wanted to say thanks, this one is really well explained to someone who "appreciates programming" but with no hands on experience. I can follow in simple logic what is happening, and it is fascinating.
10:50
That initial write on file load is probably why it appears that, when there's no other frame of reference, the bugged coast uses data from the title screen to populate the encounter table. It's pretty neat to see physically why that happens!
I worked translating this room to portuguese 18 years ago and had to convert a lot of things from hex to ascii and create an ascii table for the game, and I remember when I discovered that I could also change tiles in the game and how pokemons look. Even at that time we already know wich memory addresses could give us infinite items, specific pokemons in every grass, but never cross my mind that the process people used to discover it was so close to the one I used to translate it.
Nice vídeo, thanks.
Guess everyone's talking about MissingNo? I first saw it w/ Retro Game Mechanics Explained few days ago, and now you!
(that's called plagiarizing)
@@Michael-cg7yz ??? these videos are obviously very different, with the only common thing being missingno, the rgme video is more about why it manifests in the way it does. Unless you were making a joke, in which case it was a shitty joke
@@Provoxin Exactly. I came here to check this out since this is one of my two favorite YT channels, the other one being RGMechEx. The two videos have substantially different content, and I really love the two complementing explanations!
@@rayredondo8160 we must find a third to complete the trifecta!
@@Michael-cg7yz Unfounded accusation is tantamount to shitposting
This is a PERFECT video on explaining reversing, and bug hunting generally. It's general enough to not require specific knowledge, and taught using a popular approachable topic while still being specific enough to understand and learn what is being covered.
Excellent! I'll be saving this to my "RE" playlist to share with others interested in reversing and other topics requiring learning about the functioning of a piece of code.
Theory time~
(Keep in mind I’m no coding expert or anything like that-)
The water must have its own code for what kind of pokemon you can catch in the area (like shown in the vid around 14:00 -ish I think). However, due to some development or coding mishap, that one coast doesn’t share the same area code as the rest of the water, and instead shares it with the land.
Because you can’t catch any pokemon on the actual land of cinnabar island, it doesn’t update the code when you fly to it.
So, with the area code being from the Old Man’s encounter (a place that you can never actually access, and a place that probably doesn’t have any actual Pokémon attached to it; remember, it’s kind of like a pre-scripted event) the game freaks out a bit and instead loads a glitched pokemon. MissingNo.’s Pokédex numbed probably comes into play here (which is “00” I believe) as it would make sense for a area code that wasn’t ever supposed to be accessed to have a default of 0 or to be set to 0.
In fact, it’s likely that the area code only exists solely for the Old Man’s little training tutorial against a wild pokemon.
If you have a “wild” encounter, but you ONLY want a very specific pokemon to spawn and don’t want anything having the chance of breaking it, why not create an area where no Pokémon can spawn? Of course, the area would probably have to let SOME pokemon spawn, otherwise it wouldn’t (in code) have a reason to exist, so.... let’s set it at zero!
Until someone realized some easier way to just put that darn caterpie in the foreground and have it override whatever tried to spawn, but they didn’t want to risk it and left that area in anyways.
So basically, everything adds up and eventually overflows and spawns MissingNo. On that coast there.
Note: I wrote this before finishing the video, so I apologize for any repeats or something of what was already stated.
Edit: ok never mind I guess my theory is just exactly what was already said. Oops :T
Edit 2: spelling is hard.
I love your creative editing style, with the little drawings that it make more clear what you try to explain!
In Pokemon Emerald there are a lot of special event locations that you're not supposed to access even though they are programmed into the game. This series of videos motivated me to hack my way into some of those maps using the in game glitches which was a lot of fun :D
Just wanted to congratulate you on the immersive amount of research you have done! I watch plenty of UA-cam videos a day and I think it is safe to say this is one of the few videos I've ever liked. Keep up the good work and your comprehension on the scientific method and ability to research is amazing!
I remember fighting that guy that did this on my gameboy because i thought he broke my game...
I miss the 90s...
MissingNo Glitch in Pokemon Red when I played it was one of the first things that got me into game hacking and it's lead to my ultimate career now in InfoSec. Also, GameShark. And funny thing is I had it happen the same way as you, during the bus ride to boy scout's summer camp a long time ago, some kid sat next to me and saw me playing and we started talking after he saw me playing and then the rest was history. I also have fond memories of hacking the PS1 too.....great beautiful times.
4:48 It doesn't seem too Farfetch'd to experiment more with it
Oh damn R/woosh totally missed that 😂😂
@@Burn377 what have i missed?
@@lugui i think he meanssss that he missed the joke
@@furball_vixie oh, makes sense
@@lugui yea it's been a good 20 years since I played Pokemon 😂
This was very interesting! Thank you for making this video, I'd love to see more of this in the future :)
Can't help but notice the parallels between your video and actual academic research. Great video!
It was cool and amazing how it spread with no social internet means.
Weren't forums just proto social media? That's how I found out about it as a kid.
Exactly what I was thinking... I remember being like 12 years old when this glitch was spreading like wild fire
I mean, we all used gamefaq and similar websites then.
Super nice video! I really enjoy the Pokémon videos ;)
You are a really talented nerd. I enjoyed listening to you, keep going with more game bugs! 🙆👍
Wow such cliffhanger.
Great video visualizing something that others have covered. Your way of showing it side by side with the memory getting changed is really nice. Looking forward to the video on that 6th item.
Man I spent years trying to figure this out, ever since I learned about python it led me down a rabbit hole that landed on this channel. Thanks!
From my exp. as i was just 4-6 years old, you describe the finding of that big very accurate how my sister, brother and me found it. We innocently thought that that was just a special coastline for Ponyta´s, and also we found Missing.No but our big sister prohibited us to catch it, because she thought it corrupted our last savefile.
That’s cool that you all shared 1 game and cooperated.
@@cocomunga lets say we manage Not to kill each Other ;)
Never knew it was possible to debug like that.
Enjoyed going through your thought process👍🏽
Thank you by thinking out loud, the progress of finding the address was really impressive and inspiring!!
I found it randomly when I was a kid. Started off with a level 170 something Mewtwo which was kinda scary as it is. Then bam, a level 0 "M". That glitchy amalgamation popping up with a Zapdos cry gave me fucking nightmares as a kid.
That is the one thing I will miss about childhood, I was more easily scared.
So videogames would scare the sh** out of me.
It gave the stories an extra level of depth that I will never get back.
I had this stupid educational laptop toy that had a spelling checker in it. It had a tiny dictionary and would tell you if a word you entered was in the dictionary. I was playing with it one night when it glitched or something and the display turned into random characters. Gave me nightmares lol
Lvl 170 mewtwo?
@@audermarspiguet6127 he's not lying. Do the glitch. But instead of fleeing, battle it. It will copy whatever pokemon your using but be glitches. Catch it. Then use all the rare candies on it. It should be able to lvl 215 or so before resetting your level back to normal. I maxed out a marowak to max level and gave it as many calcium and power ups. It was fun as a kid.
I was so scared too. Lol
I remember of my heart almost popping out off my mouth
Really loving the analysis of interesting Pokemon glitches from both you and stacksmashing. These videos are so fascinating to me. Thanks for taking the time to make them!
13:27 For a moment I was secretly hoping for an extra S to show up 😂
I learned a lot about Unity game file formats just by compiling many nearly-empty "test games" with different project settings, then comparing the compiled outputs with a hex editor. Glad to see a trick involving a similar mindset finally getting some light.
It's also the way the Cheat Engine tutorial teaches you to find the memory addresses you desire to edit, too.
Very well made video, I hope you continue with this philosophy of showing how it can be figured out because it’s so interesting
I remember finding Missingno at Seafoam Island's Coast. It was how a classmate teached.
I also remember catching it and it was water/flying type. Then training, I leveled it up by 1 and it evolved into a Kanghaskan level 61.
Sane thing happend to my younger brother
I absolutely love this video! The nostalgia mixed with hacking is inspiring!
Retro Game Mechanics Explained has made a video why missingno looks like it does. Also he left some information out to what all is effected, but i hope you can find all the effects encountering missingno has!
Came to say this. Kind of a coincidence, and the videos complement well each other.
This is an explanation I heard about on tiktok where as the old man is turned into your character, your actual character is stored in the memory. Turns out your actual character data is stored next to the code where wild pokemon spawns. The coast is the one place where your name data is not refreshed. So by going there after talking to the old man, you have a chance to encounter impossible pokemon and missingNo
Refreshing view on it. Very interesting 😀
Also the GameBoy that showed how the insides look, definitely one of the coolest! ❤️
This was so much more informative, than all other explanations out there. Very well done!
Excellent videos ! Keep going my friend 😇
Thinking a bit more about the fact that there's a difference between land and water pokemon in memory sounds reasonable. That way you can handle pokemon in grass and pokemon in water in the same zone differently, what can be neccessary when you start fishing. 🤔
Yeah land-tiles and water-tiles
Maybe for accident they removed tiles that were previously land and changed it to water and forgot to change the zones
@@donverga As far as I remember from other videos, that's the reason, the tiles right at the shore don't count as water, they are due to a bug somehow treated as land.
i literally found this myself :) we didnt have internet back then or money for strategy guides, we played and played, and when this first occured we didnt even find the missing no rather we found lvl 200+ pokemon, we kept doing this and finally we noticed a missing no. was very cool.
I'm glad this video makes me more understand how does this glitch gets replicated, easy to understand and explained very well. Thanks for the video. :D
Absolutely loved this. I used to use rare candy on all my Pokémon to level them to like 255 (I think) even though 1 exp from a fight set them back to 100.
Very cool. I wondered how this worked as a kid and it is fun watching you work through the process.
13:37 All these years we wondered where MissingNo. came from; what it was supposed to be originally.
Finally the truth is revealed. MissingNo was _you._
Im learning Python while writing a Discord bot and loved your practical example of research, thank you!
this is just the perfect corssover between my child- and adulthood (since im studying comp sci)
amazing video once again my dude :)
LOVE THIS. So cool and educational at the same time. Can’t wait for part 2!!!
I was around 8-10, no one in India actually is into these games, but I got info on Missing no because of UA-cam. It was the first and best push for me towards cybersecurity and low level tech. Instead of being bored of looking at C/Assembly, I started embracing and loving it on later stages. I am really happy I encountered it!
My cousin and I actually stumbled upon the "glitch" pokemon (He thought I broke his game because I suggested to try the old man lol) in pretty much the way you described, but never noticed that it multiplied any items... I didn't learn this until watching your video just now! lol
Can't wait for the next one, I really like your exploratory approach ! Thanks for sharing this.
This is a fantastic format! Thanks for a fun learning experience.
Loved this approach to understanding Missingo, very fun to think about how these things were discovered.
I’d be interested to see you test if there are names that don’t cause Missingno to show up. I heard in a UA-cam vid ages ago that there’s an invisible “end” character to your name to tell the game to stop writing which happens to have the same ID as Missingno so it will always show up, but I don’t know a lick of programming so I cant find out myself.
MissingNo. is always guaranteed to appear because of what you said: the termination character is hex:50, which is also one of MissingNo.'s index numbers.
Best explaining video out there!!!!🙌
I like the way how you explain this way of decoding and such. Interesting.
Excellent work. Makes me nostalgic for the days hacking games with cheatengine
This by far was the best explanation to how Missingno works I have seen on UA-cam like ever.
Please keep doing that work, it is highly interesting.
Let alone I doubt you show these topics for your next Chaos Communication Congress talks :þ
I love this type of glitch videos. I hope you could also do a collab/crossover with Retro Game Mechanics Explained.
0:03 I’m not calling out anyone but THAT’S ����’M����
Really a beautiful, simple video. Loved it. Makes it seem like I could have done this if only I had thought of it haha
I always loved this stuff. When some random kid told you about it, not the internet
Ich öffne UA-cam und sehe dieses Video auf meiner Startseite.. Tag gerettet..
The missingno glitch was an insane revelation as a kid. And doing it for the first time was absolutely mind blowing.
16:00 that's amazing that Rhydon shows up with ID level 1.. here's why: "It may be entry #112 in the Pokédex, but according to Ken Sugimori - the primary designer for the Pokémon games - Rhydon was the first Pokémon ever created. This is also the reason why sprites of Rhydon were so widespread in the original games. In that same interview, Sugimori mentions Lapras and Clefairy as some of the other earliest Pokémon designs to join Rhydon."
I'm curious what Lapras and Clefairy's ID numbers are!
I think that when we encounter missing no, we basically encounter ourselves because 'ASH'.
So what I think happening is that, when we generally do a battle, we might use our items, so t tally up the game mechanism counts the total items we have during the battle by using the keyword as a "ASH" , and this to has some bug due to which only the 6th element is getting duplicated. We CAN TEST THIS by using our sixth element in the battle with missing no, so as to see if we loose one item or 2 items from the doubled count. This can either find out the weird reason or may give a lead to other possibilities. Please consider this and try it. I hope this helps you put.
Red MissingNo Ash MissingYes 😳😬
Ah yes, the powers of 2:
2, 6, 8, 10
(great video by the way)
Big brain video. I actually understood the whole video. Cool stuff.
Amazing video!!! Thank you for this
I found a similar bug as a kid on my own. The fly away glitch. I remember using like an escape rope or an abra teleporting to do it as a kid. Kept looking up stuff about it until I found the mew glitch
This was a great video.
I am happy that it got recommended by youtube.
This is incredible! What a great piece of work and information - thank you for your brain!
Just wait until you get to the crazier glitches, like 8F (a glitch item used for arbitrary code execution, TheZZAZZGlitch has covered it extensively but maybe you could do it even more justice). Or better, the Mew glitch - I'd love to see you try to explain how _that_ was found, due to how it's a more convoluted glitch than the Old Man glitch and found way, way earlier than 8F.
Assuming it wasn't intentional, the trainer glitch was probably "oh shoot, a trainer, I didn't want to fight him. I'm gonna hit start and see if I can pause. Oh, good, I can. I wonder if I can fly away? Oh nice, I flew away hahaha"
Thank you for yet another wonderful video, LiveOverflow.
The video I always wanted as a kid
EXCELLENT! Love it and I haven't never played a pokemon game in my life.
It's so crazy that these little "secrets" got passed around all over the world just through word of mouth. I remember this one so well when I was told about it. Also the trick to get a copy of someone else's pokemon through the transferlink cable... We all passed around Mew.
This video is super cool! Loved it and subscribed ^^
While this video is interesting, it's a bit of a shame it's mostly fiction about how the glitch was possibly discovered. The real story of its discovery and initial research would be facinating, but also might be lost to history, so I understand why you didn't cover it. Cool video.
Yes, my childhood revived! Excellent video!
Ooh! i think i know why the items are multiplied
In fact, i recently got recommended a video about it - but from what i know, the invalid pokemon ID causes the graphics data to be decompressed way further than should be necessary, overwriting other data outside the graphics buffer like the hall of fame data, which is supposedly right next to it
Great explanation! Looking forward to part 2 !
If the name of the character is written into memory (in this case "Ash") does that mean that if we choose a different name at the beginning of the game, we could expect a different pokemon? Could we influence the pokemon by naming our character in a certain way?
Yeah, I got a Lv 152 Rapidash that way
Sure. There's a video that shows how to encode pokemon encounters into your name
@@Invizive yes but using one of the built in names allows more access to pokemon because the player names of the default names don't have 0x00s at the end. They just run into the next name in the list. So you typing in ASH vs choosing ASH from the list will result in different pokemon
Yep! Search "Scrumpy MissingNo" and go to 6:11 in that video to see him doing exactly that
Yep, this is the most common way to get Mew in Blue/Green.
AMAZING content. a level of understanding that oozes computer knowledge 👏🏽
This hurt my brain in the best of ways. I loved this.
Incredibly underrated video, well done.
NO, that cliffhanger! This is a way more interesting kind of mystery imo.
Even if I was half yelling at the screen "but that doesn't necessarily mean that!" Like maybe it was writing to an area, stuff happened that affected something else, and that other thing was read from. It's kind of like the reverse engineering was reverse engineered, you could make certain assumptions because you had the answer already.
The item multiply thing is probably just something about the sprite. Same reason for hall of fame data being corrupted, which if you don't know, that data corrupts because, sprite data decompilation. Instead of writing sprite data for missingno, it goes far off where it should place the sprite data. Coincidentally, right next to the sprite data is hall of fame data, since the write place is far off, it instead overwrites the hall of fame data.
Such an entertaining yet educational video, thank you!