I've attempted to get Sharpedonite 6 or 7 times so far. I went with the comp recommended in one of the forums guides (Rampados Mold Breaker, Brick Break, Rock Smash, Camerupt with Magma Armor), and I failed it innitially. I thought "well, but I have Excadrill, that has same base atk, and proper abi, skillset". Similar to Chandelure, I've used. I got mixed results - sometimes I was first, sometimes even last, it was pure rng fiesta for 4-5 attempts. So for my last one (the one I just did) I was like "u know what, if Camerupt Magma Armor guarantees first spot, I'll take exca as a backup plan for 3rd trial". So that was my setup:
First trial was really promising, I got 7 points from that (3rd place I think?), so I was like "it's easy now". So I went to 2nd trial with my great Camerupt, king of lava pond, I sustained 110 seconds in lava and I finished last. After the 2nd trial I was still on 7 points. So I jumped into 3rd trial and I finished it first, not one shotting only 1 pokemon, which gave me 3rd place in total.
@Norex ensured me on the discord, that this thing was recently tested and feedback says that everything works perfectly fine. So if that's the case, could someone, I beg, explain me what are exact requirements to finish this abysmal quest? Is it acctually like, there is 1 pokemon in the game that can finish 1st and 2nd trial consistently? And If so, can I have any proof? (sorry for doubting, but after giving Rampa and Camerupt a try, im suspicious). Can you mix Camerupt/Rampa with something else?
To see what animals were in the area, I opened up the Inaturalist app on my smartphone, which is an online social network for people to share their wildlife observations with each other. Imagine Pokemon Go, where you go around finding creatures, but in real life. As luck would have it, someone posted a sighting of a sharp-tailed snake (Contia tenuis) here only the day before! We quickly went to the GPS point and began our search.
After ten minutes of extensive searching, it seemed like we would never find the snake. We decided to go a bit uphill, and found a couple logs that seemed promising. Our intuition paid off: less than five minutes and a couple of log flips later, we found ourselves a sharp-tailed snake!!!
The sharp-tailed snake is a beautiful and mysterious animal. It is about the size of an earthworm, with a reddish-brown back, and shiny black and white bars underneath. True to its name, its tail is pointy and tapered. And this is how you can tell that biologists are very creative people. It occurs in western North America from California all the way to southern Vancouver Island (and in one known locality in mainland BC), though its small size and secretive nature make it difficult to encounter. It resides in a fairly diverse range of habitats including areas near streams, woodlands, grasslands, hillsides, and chaparral. It is similar in appearance to its relative the forest sharp-tailed snake (Contia longicaudae), with the differences being the forest sharp-tailed is highly restricted to wet coastal forests, and it has a proportionally longer tail.
Pokmon Red & Blue (Red & Green in Japan) is a pair of Game Boy games about capturing "Pocket Monsters", or "Pokmon", by fighting them with other Pokmon. Since its release lots of bugs and glitches have been found[1], many of which are caused by overflow errors.
This processor is similar to an Intel 8080 in that none of the registers introduced in the Z80 are present. However, some of the Z80's instruction set enhancements over the stock 8080, particularly bit manipulation, are present. Still other instructions are unique to this particular flavor of Z80 CPU.[2]
Both the Intel 8080[3] and, by extension, the 8080-compatible Zilog Z80[4] have a carry bit that is set on operations that overflow. A derivative of these chips would also have these; indeed this is not documented as a difference between the Z80 and the LR35902[5].
To the part that is confusing me: the LR35902 CPU had an overflow flag, and there are many exploitable glitches in Pokmon Red that are caused by overflows; there are glitches caused by overflows in most places that overflows can occur. There must be a reason that the developers didn't use this flag on so many occasions, but I can't work out what it is.
Incorrect assumption
(Often characterised by "That'll never happen!") Have you ever visited a website, or used a program, and an error box popped up with something like "User won't see this"? That's because the programmer may have considered the overflow case, but decided it wouldn't happen so didn't code for it (other than put in a debug statement that they forgot to remove). Needless to say...
Surprise
For example, just say at a point early on in the game you can do something that trebles your points. Because it's early, the programmer doesn't even consider checking for overflow because the current score isn't that high yet. But if a high-scoring player works their way back to that point and triggers it then, then it might overflow the score. The player surprised the programmer.
There are a couple of other, lesser reasons: maybe they ran out of code room on the ROM and had to strip out error handling code; or maybe they wanted those Easter Eggs to be found; but it's almost always one of the top three.
Overflow doesn't mean what you think. That flag exposes the internal ALU carry from bit 6 -> bit 7. It's needed when you are handling the most significant byte of a 2-complement number, because you can't use the carry for that purpose here: it's jumbled by the MSB sign bit.
When you don't add or subtract 2-complement numbers (MSB isn't meant as sign bit but just another bit), it has no meaning. It's not set on increment or decrement instructions when they wrap around 255->0 or 0->255 either.
As to the broader question of why pokemon Red/Blue has so many "interesting" glitches (rather than boring crash bugs) I think it's a combination of the large size of the game (a whole megabyte in size) with the limitations of 8 bit platforms.
The very limited total ram (8K video ram, 8K work ram, 4x8K cart ram, less than 1K high ram) along with the fact that it's generally faster to use hard-coded memory locations on 8-bit platforms means that the same hard-coded memory location will be used for different things in different contexts. If you can set a memory location in one context and then cause it to be read in another context you can end up with memory locations set to predictable values that were outside the ranges the developers believed they could have.
Combine that with a large non-linear game written on a platform where resources were precious (so you wouldn't initialise something or check something unless you thought it needed doing) and there are lots of opportunities for unexpected combinations.
Electronic Gaming Monthly no. 124 from 1999 notes that the original Japanese Pokemon games had a long, difficult development process. The source code was so bad that when it came to doing the western versions the original Pokemon Red game was recreated using the newer Pokemon Green code, but even that was not an easy task.
When you have poor quality source code, cartridge size limitations, and a long development process which towards the end will inevitably focus on getting the game released rather than finding and fixing rare bugs, you end up with software like Pokemon Red and Blue. Brittle and full of obscure bugs.
Also note that both games were written in assembler, not a higher level language like C. At the time C compilers for embedded systems were not as advanced as they are now, and didn't support the Z80 all that well anyway, and tended to produce large and slow code. Most Gameboy games were written in assembler as a result, and prone to errors such as these.
It could be many of the previous answers, But it could also be intentionally because of the need of saving space. Having to get a non trivial program to fit into a predefined space is no simple task. This is in general one of the curses of embedded programming, the many things you take for granted now.
In the gameboy, there is absolutely not any compiler/kernel side mitigation. Of course because there is no kernel in gameboy, no OS, but also because contrary to modern compiler, the automatic mitigations: ASLR, DEP, stack cookie, PIE did not used to exists. Even in real OS of this period.
The gameboy roms have probably been written in pure assembly. I have reversed some. It is even harder to maintain assembly than C! And harder to maintain will make the developper make more mistakes. But also make the devlopper be more lazy.
Today, even with such many modern tools, around 50% of C/C++/rust projects that I meet do not have such tools installed in the project pipeline. The amount of time needed to install these is ridiculous but developpers want to focus on the real project instead of security.
d3342ee215