@@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.
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!
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
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
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! :)
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.
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.
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 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.
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
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
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
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.
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!
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!
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.
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!
@@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!
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
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.
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
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 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.
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.
Does anyone know why i cant get from level 1 to 100?? All my glitched pokemon (using trainer fly glitch in cerulean) come out at level 1 and only need 7 exp instead of 63 exp... when i fly back to pallet town, switch pokemon out and crush a level 2 pidgey, all my pokemon get 5 exp but my level 1 pokemon never goes to 100? WHYYYY
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.
6:52 you set memory_trace and memory_trace_ignore size to 0xffff (65.535 in natural number), Gameboy has a 16 bit address bus, 2^16 (65.536). So, If you try to save in one of two array, in position 0xffff, you'd have a coredump error.
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.
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
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.
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
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.
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!
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.
Well the encounter code seems to only use parts of any given tile you are walking on. Every tile is made up of 4 smaller tiles of 8x8 pixels. The code only checks for what you are currently standing on at the bottom left part of any tile, which is also why you encounter water Pokémon at the bottom corner.
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.
Can you explain why missingno looks the way it looks in the next video, bitte? I'd like to know if the image of it is a placeholder or some kind of glitched read from data that was not meant to be image data in the ROM.
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.
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.
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!
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
“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
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
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! :)
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!
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
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.
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.
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
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 love your creative editing style, with the little drawings that it make more clear what you try to explain!
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.
This youtuber did such an intensive and comprehensive research. I cant leave this video without clicking the thumbs up button.
This was very interesting! Thank you for making this video, I'd love to see more of this in the future :)
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.
Super nice video! I really enjoy the Pokémon videos ;)
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
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
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
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.
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!
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!
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.
Excellent videos ! Keep going my friend 😇
Very well made video, I hope you continue with this philosophy of showing how it can be figured out because it’s so interesting
You are a really talented nerd. I enjoyed listening to you, keep going with more game bugs! 🙆👍
Thank you by thinking out loud, the progress of finding the address was really impressive and inspiring!!
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 😂
Can't help but notice the parallels between your video and actual academic research. Great video!
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!
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!
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
Never knew it was possible to debug like that.
Enjoyed going through your thought process👍🏽
Best explaining video out there!!!!🙌
This was so much more informative, than all other explanations out there. Very well done!
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
I absolutely love this video! The nostalgia mixed with hacking is inspiring!
This is a fantastic format! Thanks for a fun learning experience.
Can't wait for the next one, I really like your exploratory approach ! Thanks for sharing this.
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.
LOVE THIS. So cool and educational at the same time. Can’t wait for part 2!!!
13:27 For a moment I was secretly hoping for an extra S to show up 😂
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
Very cool. I wondered how this worked as a kid and it is fun watching you work through the process.
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.
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.
I remember fighting that guy that did this on my gameboy because i thought he broke my game...
I miss the 90s...
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
Refreshing view on it. Very interesting 😀
Also the GameBoy that showed how the insides look, definitely one of the coolest! ❤️
Your research was great! 👍🏼
Really a beautiful, simple video. Loved it. Makes it seem like I could have done this if only I had thought of it haha
Amazing video!!! Thank you for this
I loved this! Very well done
man this series is amazing.. thank you!!
I like the way how you explain this way of decoding and such. Interesting.
Great explanation! Looking forward to part 2 !
This video is super cool! Loved it and subscribed ^^
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.
Awesome video and great immersion!
Does anyone know why i cant get from level 1 to 100?? All my glitched pokemon (using trainer fly glitch in cerulean) come out at level 1 and only need 7 exp instead of 63 exp... when i fly back to pallet town, switch pokemon out and crush a level 2 pidgey, all my pokemon get 5 exp but my level 1 pokemon never goes to 100? WHYYYY
i live this so much. thanks for putting this together
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 ;)
6:52 you set memory_trace and memory_trace_ignore size to 0xffff (65.535 in natural number), Gameboy has a 16 bit address bus, 2^16 (65.536). So, If you try to save in one of two array, in position 0xffff, you'd have a coredump error.
Such an entertaining yet educational video, thank you!
this is just the perfect corssover between my child- and adulthood (since im studying comp sci)
amazing video once again my dude :)
Thank you for yet another wonderful video, LiveOverflow.
This is incredible! What a great piece of work and information - thank you for your brain!
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
Damn this is so cool, amazing video!
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
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 😳😬
Great work my friend!!
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.
Incredibly underrated video, well done.
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.
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.
Big brain video. I actually understood the whole video. Cool stuff.
Yes, my childhood revived! Excellent video!
Im learning Python while writing a Discord bot and loved your practical example of research, thank you!
AMAZING content. a level of understanding that oozes computer knowledge 👏🏽
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.
This was beautifully done.
I love this type of glitch videos. I hope you could also do a collab/crossover with Retro Game Mechanics Explained.
The missingno glitch was an insane revelation as a kid. And doing it for the first time was absolutely mind blowing.
This was a great video.
I am happy that it got recommended by youtube.
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.
excited for the next video! keep up!
Well the encounter code seems to only use parts of any given tile you are walking on. Every tile is made up of 4 smaller tiles of 8x8 pixels. The code only checks for what you are currently standing on at the bottom left part of any tile, which is also why you encounter water Pokémon at the bottom corner.
This was a fascinating video. Thank you
EXCELLENT! Love it and I haven't never played a pokemon game in my life.
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.
Mega geiles Video, trifft meine Interessen zu 100%. Hätte auch 3 Stunden zugehört :D
When I first saw missingno I thought it was a newspaper.
Can you explain why missingno looks the way it looks in the next video, bitte? I'd like to know if the image of it is a placeholder or some kind of glitched read from data that was not meant to be image data in the ROM.
Check out “Retro Game Mechanics Explained”, they recently made a video about exactly that
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.
AWESOME! Very clear!