I do have something in mind... possibly for Issue 28, since in 27 im gonna work in the second part of the rby underdog article. This is a completely different thing though, definitely won't suit people looking for an "easy read", but I think it can be potentially very interesting. I don't know whether to expect it to be approved or not for that reason. My point would be to explain why MissingNo (in red/blue) is who he is, why he has the stats it has, the typing, learns Water Gun x2 and Sky Attack instead of Leech Life or whatever, its learnset, height/weight, how the old man glitch is possible (the most common way to get MissingNo), but obviously this has to be done in a very "scientific" approach, so that the reader can understand where all the data (in hex) that defines MissingNo comes from and stands for. So that's how the article would look like (likely in that order):
- Explain a bit about the hexadecimal numeration, explain that in a red/blue rom, each byte (a number between 0x00 and 0xff) defines something. Explain what pointers are.
- Explain the fact that originally 190 pokemon were intended to appear, but only 151 were finally released. Explain difference between index number and pokedex number (entry). Explain that the other 39 pokemon were left as "MissingNo", and all point to pokedex entry 0x00 but have a different index number.
- Explain how does the old man glitch work and why does it work (ciannbar island has wild pokemon identifiers but no pokemon data, so when old man overwrites your name, your name overwrites wild data and blah blah).
- Explain where Missingno's data comes from. For that, explain first how "base stats data" works and what each byte in the base stats data structure stands for (stats, type, tm/hm flags etc). Explain that there is only a pointer to the starting location of the base stats data, and it's ordered by pokedex number, and due to missingno's being 00 in pokedex, when you do -1 it underflows to ff, then it points to something that isn't base stats data of any pokemon (since it ends with 151 or mew), instead it is used data for trainers, that also happens to define Missingno... What I have in mind would be explain both how does that data affect missingno's identity, and what does that data do in reality (thus, explaining how trainer data structure works would be necessary).
- Same for height/weight data and learset data, explain that in these cases, there is a pointer for each pokemon with an index number, and that MissingNo's data in these cases only affects MissingNo and it's not data used for other purposes that MissingNo randomly happens to point there.
And well, that's it. You know, i'd obviously try to explain it as easily as possible, but anyway this is something that can be considered either extremely interesting, or extremely difficult to understand. Everything needs to be proved with hex values, pointers and locations so it could be not be the kind of topic or article the smog wants and I understand it. It's your choice :P. As for my knowledge in the topic, just in acse you are wondering, I'm more familiar with gsc hacking (still pretty noobish lol), but this is something that only requires basic understanding of hex and pointers since there is a lot of info in the web as well and mostly you just have to understand it and obviously know how to prove it by yourself to make an accurate article.
In short, I just came up with this and thought it could be an interesting topic, at least something "different" so to speak.
- Explain a bit about the hexadecimal numeration, explain that in a red/blue rom, each byte (a number between 0x00 and 0xff) defines something. Explain what pointers are.
- Explain the fact that originally 190 pokemon were intended to appear, but only 151 were finally released. Explain difference between index number and pokedex number (entry). Explain that the other 39 pokemon were left as "MissingNo", and all point to pokedex entry 0x00 but have a different index number.
- Explain how does the old man glitch work and why does it work (ciannbar island has wild pokemon identifiers but no pokemon data, so when old man overwrites your name, your name overwrites wild data and blah blah).
- Explain where Missingno's data comes from. For that, explain first how "base stats data" works and what each byte in the base stats data structure stands for (stats, type, tm/hm flags etc). Explain that there is only a pointer to the starting location of the base stats data, and it's ordered by pokedex number, and due to missingno's being 00 in pokedex, when you do -1 it underflows to ff, then it points to something that isn't base stats data of any pokemon (since it ends with 151 or mew), instead it is used data for trainers, that also happens to define Missingno... What I have in mind would be explain both how does that data affect missingno's identity, and what does that data do in reality (thus, explaining how trainer data structure works would be necessary).
- Same for height/weight data and learset data, explain that in these cases, there is a pointer for each pokemon with an index number, and that MissingNo's data in these cases only affects MissingNo and it's not data used for other purposes that MissingNo randomly happens to point there.
And well, that's it. You know, i'd obviously try to explain it as easily as possible, but anyway this is something that can be considered either extremely interesting, or extremely difficult to understand. Everything needs to be proved with hex values, pointers and locations so it could be not be the kind of topic or article the smog wants and I understand it. It's your choice :P. As for my knowledge in the topic, just in acse you are wondering, I'm more familiar with gsc hacking (still pretty noobish lol), but this is something that only requires basic understanding of hex and pointers since there is a lot of info in the web as well and mostly you just have to understand it and obviously know how to prove it by yourself to make an accurate article.
In short, I just came up with this and thought it could be an interesting topic, at least something "different" so to speak.