woah, a Pokemon project!! kudos to you!!
I don’t know a whole lot about Pokemon Go, but I’ve been an avid lover and frequent player of the Pokemon Nintendo games for many years, so perhaps I could help by providing some lore.
There are now seven “generations” of Pokemon games, with each generation introducing between 70 and 150 new Pokemon. Trying to include only the “best,” “strongest,” or “most common/rare/liked” out of all 807 Pokemon would leave out a lot of underrated 'mons, which would be really sad for those who were hoping to catch their favorites.
You could always go with the original 151 Pokemon, but that would leave out a whole lot of favorites.
Being me, I would go about this methodically. If I plan to go all out and include, say, 147 Pokemon, I’d split the number up by generation (hence 147, because it’s divisible by 7). This would mean I’d include 21 Pokemon from each generation.
Pokemon also have types, as you may know, and there are 18 known Pokemon types. This poses a problem, as if I were to split each generation by type I would only be able to include 1 Pokemon of each type, which would mean no room for evolutions. If I split the entire 150 (144) by type, there would be 8 Pokemon of each type. That’s also not a lot, and again, no room for evolution.
I’m thinking out loud for most of this, so to speak.
It seems that my methodical approach isn’t going to allow for the diversity the game deserves, so let’s try something else. We’ll include a few crowd-pleasers, see where that gets us, and choose other 'mons from there.
Let’s start with the starters, since they’re some of the most well-known. There are three starters for each region, and each of those starters has three evolutions (if you’re planning on having in-game evolution – it’d be cool to have the evolutions only obtainable through evolving (e.g. you can’t catch a wartortle, but you can catch a squirtle and evolve it)). That’d be 9 Pokemon per region, times 7 regions, which makes for 63 slots filled.
It’d also be cool to have at least one (probably just one, given the limit of 150) Legendary Pokemon from each region. My pick is a logical set, coming from the “rulers” of each region’s Special Legendary Trio. This would be Mew, Mewtwo, Rayquaza, Giratina, Kyurem, Zygarde, and Necrozma.
This adds seven Pokemon to our 63, filling 70 slots.
The other “most popular” Pokemon are Eevee and its eight evolutions, as well as the Pikachu evolution line. That’s 9 and three, respectively, which totals out to 82.
From here, what you choose is almost entirely up to you. You could stop there and have a game filled with starters. You could divide the remaining 68 slots between the seven generations or the eighteen types, or you could pull up a randomizer to fill the slots for you. Pokemon other than legendaries don’t have too much of a rarity status in the games, as all of them are catchable with the right circumstances and patience.
68 divided by 18 is approximately three, so what you could do is randomize Pokemon with three evolutionary stages, one from each type (not including fire, water, or grass, because we’ve got those covered with the starters), and randomize the rest.
let's try it --- a list
Whatever you choose, I’m super excited to see the end result of this game!! Hope this can be of help.