Pokemon GO is supposed to have the original cast of the first Pokemon games: This means, at minimum, a roster of 151 creatures. But so far, there's no way of collecting the full set. In the main Pokemon games, there is a concept known as "legendaries" — that is, rare and powerful Pokemon that are significantly harder to catch. Some legendaries are encountered during the course of of a game's storyline, while others have esoteric requirements that need to be fulfilled before a player can encounter them. Sometimes, a legendary can only be caught during special events thrown by The Pokemon Company, and these are often tied to specific locales, like a game store. All of this is to say that Pokemon GO's situation is not unprecedented: It makes sense that some critters would not be obtainable under normal means.
What's curious, however, is that the unobtainable Pokemon GO critters aren't all legendaries. At the moment, the Pokemon no trainer has caught include:
Mew is said to have the DNA of every single Pokémon contained within its body, and as such is able to learn any attack...Since Mew can make itself invisible at will, very few people have knowingly seen it, leading some scientists to declare it extinct and most to assume it to be a mirage. It will only show itself to a person who is pure of heart.
Articuno, Zapdos and Moltres
In the anime, Professor Oak states that Articuno and Moltres combined powers of ice and fire are the source and cradle of the oceans, and that Zapdos' electric energy creates the currents and streams.
Mewtwo was created after years of horrific gene splicing and DNA engineering experiments based on Mew. It is said to have the most savage heart among all Pokémon, lack compassion, and strike fear into its enemy with cold, glowing eyes. Because it was engineered to be the ultimate in battle, it can only think of defeating its foes.
Most of this list makes sense... save for Ditto, who is not a legendary Pokemon. To be fair, though, Ditto is somewhat rare within the games themselves. Another thing worth considering: Normally, Ditto plays a key part in a feature that is not currently available in Pokemon GO: Breeding. Like battling and trading, it may be that developer Niantic introduces the breeding mechanic sometime in the future, which would explain Ditto's current disappearance. Another possible explanation: Niantic is diving into Pokemon lore with Ditto — one of the most famous fan theories is that Ditto is a failed Mew clone. Maybe Ditto's appearance is tied to Mew/Mewtwo, and we can expect to see them all around the same time.
I reached out to Niantic about Pokemon GO legendaries, and I've yet to hear back from them. But looking at the original announcement trailer for Pokemon GO may give us some clues on what to expect:
At the 1:59 mark, you can see a crowd surrounding a Mewtwo display in Times Square. There's also a countdown timer, during which the players can all attack Mewtwo at once. At the end, Mewtwo's healthbar is depleted, and the entire crowd catches him.
An actual event tied to a place probably won't look as epic, unless Niantic splurges on holograms or something. But otherwise, mechanically speaking, what the trailer presents seems within the realm of possibility. Actually, the trailer closely resembles what is already available at Pokemon gyms, where multiple players can team up and try to defeat a strong monster together. Legendary events seem to be the same thing, except on a grander scale.
What is unknown is whether or not a legendary like Mewtwo will be available in multiple different regions / areas, or if he will only be capturable in a single spot. Given that Pokemon GO is already drawing incredible crowds at unofficial events, and some players are willing to risk it all to capture non-legendaries, the thought of area-specific legendary seems absurd: An event would quickly get out of hand. But if a legendary is available in multiple places, that set-up would betray the idea behind legendaries in the first place. It's a conundrum for Niantic, the developers. Niantic has experience running events for Ingress, their previous game, but Ingress was never as big as Pokemon GO.
Meanwhile, Pokemon GO players have been busy diving into the code, trying to figure out what is going on. NesstendoYT made headlines earlier this month when he claimed that every legendary was technically accounted for in Pokemon GO's code even if they weren't obtainable yet:
On Reddit, players have noted a few specific details about the code pertaining to the legendaries and Ditto. Here's kylecito, with some of what he allegedly found:
Mewtwo does not have a BaseCaptureRate, only a FleeRate. This shows you shouldn't be able to find Mewtwo wild, and it will probably be a sure capture when you fulfil the event's requirements.
Mew is the ONLY "Mythic" type Pokemon at the moment.
Seems like all Pokemon have "family types", apart from their species one. Wonder if they plan to implement breeding in the future?
Another player, FrozenAquaCat, messed with Pokemon GO's files and was able to force the game to spawn a Ditto:
"Through the modification of the Pokemon Go client, I was able to change the ID that shows up during an encounter from 13 (weedle) to 132 (ditto)," FrozenAquaCat wrote on the YouTube description. "The game currently crashes any time I attempt to throw a pokeball or do anything in the menu."
In a follow-up video, FrozenAquaCat explains how he uses a Python script to force the game to change normal encounters into legendary ones. In the video below, he transforms a Rattata into a Zapdos by injecting code into a program in real time, as he plays the game on the PC.
The Zapdos that spawns has a CP of 753, but he can't actually capture it. Still, it's cool to see what these fabled rare monsters look like in-game.
There's no telling when or how Niantic will officially introduce legendaries into Pokemon GO, but in the meantime, players will continue to keep themselves busy catching 'em all. Well, most of 'em.