Finding the Best Pokemon Types
A couple of years have passed since I used game theory to find the best Pokemon type, time I spent enjoying the vast riches that this discovery has brought me, sleeping soundly knowing that the world was safe from worrying about what Pokemon type is the best, as I had mathematically answered it. (If you haven’t read that article, I’d recommend doing so, as it sets the stage for this article.)
But something nagged at my mind — Pokemon often have more than one type. Comparing single types is great, but in the actual games, these types can pair together to become more (or less) than the sum of their parts. A type might look mediocre on its own but play well with others and result in strong combinations, or vice versa. Finding which type combinations are best can get us a better idea of how types interact, and, what I’m really interested in, get us a better idea of what we should think about when measuring game balance with game theory.
Conceptually, what game theory does here is fairly simple. Imagine my opponent and I are playing a game where we each have different strategic options, but we don’t know what the other will pick. Game Theory’s concept of a Nash Equilibrium will tell us how often we should choose each option if we are both playing optimally. A classic example is rock, paper, scissors, where doing anything other than playing rock, paper, and scissors randomly at 1/3 probability each would give your opponent an opportunity to take advantage of you — start playing scissors too much, and your opponent can shift towards rock.
Well-designed strategy games will have a lot more nuance than the three symmetrical matchups of Rock, Paper, Scissors. For pokemon type combinations, we have over 6,000 matchups to analyze! Even with the significant jump in complexity, the takeaway is the same — a Nash Equilibrium tells us how often each player should pick each option when both players are playing optimally. In the scope of the game, options that should be picked more in a Nash Equilibrium are better.
Matchups between the type combinations are more complicated than simple “X beats Y” of Rock, Paper, Scissors. Some combinations have equal matchups against others, or they can beat or lose to others to different degrees. I handle these as I have previously, by scoring these based on how much of the winners’ initial health is left over after a fight. For instance, if the winner can hit the loser for double damage, but the loser can only hit the winner for normal damage, the winner end the fight with half of its health left, so the winner gets a score of 1/2 and the loser gets a score of -1/2. This lets us capture by how much each combination wins or loses a matchup.
Differences between Types and Type Combinations
Type combinations have more going on than single types in two ways. First, the damage a move does against a pokemon with two types is found by multiplying its effectiveness against both types. For instance, if it does 2x damage against one type and .5x damage against the other, it does the normal (1x) damage against a pokemon with both types. Because types can do 2x, 1x, .5x, or 0x damage against other types, against dual types the possible effectivenesses are now 4x (if the move is super-effective against both types), 2x, 1x, .5x, .25x (if both types resist the move), and 0x. You can find a complete list of all the matchups here.
Second, having two types inherently gives more offensive potential. In my original look at pokemon types, I considered matchups where pokemon can only use moves of their own type — water pokemon can only use water moves, ground pokemon can only use ground moves, etc. But with two types, we now have to consider which move should be used in each matchup. A Water/Ground type should use a Ground move against a Dragon pokemon, because the water move would only do half as much damage. We need to judge each matchup as if each combination is using its best option in every matchup. This also means that type combinations inherently have a huge advantage over single types, which are stuck using their only move type even if it isn’t effective.
Thus, our possible matchup scores are:
The Best Pokemon Type Combinations
I figured this exercise would be more fun for me if I guessed what the top 5 would be to see how well the results matched my expectations. You might want to try it, too — there’s a good chance you’ll do better than I did.
My guesses were, in no particular order: Steel/Fairy, Ghost/Normal, Water/Ground, Dragon/Steel, and Steel/Flying
Since there’s can be some noisiness to this method — you can have more than one possible Nash Equilibria, especially with a ridiculously huge matrix like the behemoth 324×324 matrix I used — I found the Nash Equilibrium 30 times, and took the average of these to find the scores for each type combination. Of the 162 possible type combinations, 27 had nonzero Nash Scores, meaning we can only list the 27 best types. That may sound surprisingly low, but the nature of Nash Equilibria is that they cull all but the very best options. (I’ve talked before about how to avoid this feature of Nash Equilibria when measuring game balance).
Without further ado, let’s count down the top 27 pokemon type combinations:
So the top ten are:
- Water/Flying: This was a huge surprise to me, since this combination didn’t strike me as having obviously superior synergy than a lot of other combinations. But Water and Flying cover each other’s limitations very well — I distinctly remember thinking the water/flying Pelipper seemed to be able to hit everything super-effectively when I was a kid. This combination gets obliterated by electric (4x damage!), but its only other weakness, rock, is weak to water, meaning it has fewer losing matchups than you might think.
- Poison/Dark: With only one weakness (2x damage from Ground) and types that hit completely different types super-effectively, I probably should have expected this one.
- Grass/Fire: This one definitely wasn’t on my radar, but these two types cover each other pretty well.
- Grass/Rock: Grass showing up twice in the top 4, despite its largely bad matchups against other types, only makes sense because grass’s winning matchups are mostly against good types — the same reason it earned 6th place in my Types List.
- Psychic/Fighting: Brains and brawn!
- Electric/Ice: This offensive combination does at least neutral damage against almost everything, which was apparently enough to overcome the bad defensive typing.
- Electric/Ground: Similar to electric/ice, but trades a little offense for defense.
- Ghost/Fairy: with two weaknesses (ghost and steel) and the ability to hit most ghosts right back for super-effective damage means this pair has few losing matchups.
- Dragon/Steel: Hey, something I picked for the top 5 made the top 10!
- Grass/Ground: Yet another case of grass complementing another type
My estimated top 5 ended up placing 9th, 12th, 13th, 15th, and 16th. Hey, at least they all made the rankings!
Comparison to the Best Pokemon Types
You might expect that looking at single types alone or looking at type combinations would both give you a similar picture for what types are the best. In this case, the stories look really different.
When I previously looked at just single types, Steel, Dragon, Water, and Ground dominated:
But if we look at how often each type showed up in the type combination rankings, we get a very different story, both because more types show up (only Bug received a 0 score) and because the order shifted dramatically — some (Ground, Grass, Fire, etc.) benefitted greatly while others (Steel, Dragon) plummeted in the rankings. The type combination rankings are much more favorable to good offensive types, whereas the pure type combination rankings mostly favored defensive types.
The original rankings of types seem more intuitive to me. Steel should be near the type, and an unexpected outcome of how I’ve set things up for type combinations is that being good at defense but bad at offense holds back type combinations in the rankings more than it probably should. In the actual games, pokemon aren’t usually limited to only the moves of their own type and might not even want to directly attack the opponent at all, meaning that better defensive type combinations are better in practice.
There are a lot of possible workarounds that could make this measurement work better: we could always assume a combination can at least do neutral or .5x damage against every other combination, we could weight resistance to damage higher than the ability to output damage, or a host of other things to better capture the actual nuances of the pokemon games. I’m personally not going to do any of these, because I’m way more interested in what this exercise has taught me about measuring game balance in this way than anything about Pokemon itself, but I’d encourage anyone who is interested to try to expand on what I’ve done and let me know what you find out!