Calculating a Pokemons performance in battle starts with calculating Damage Per Second (DPS). This looks at both of the Pokemon's fast and charge moves and calculates damage divided by duration. In addition, fast moves give energy and charge moves use energy. Calculating DPS that interleaves the two attacks is called Weave DPS.
This approach starts with Weave DPS and adjusts it to consider all the other details of battling in Pokemon Go. Specifically, this includes:
- Damage and duration of both fast and charge moves
- Energy gained from fast moves and used by charge moves
- Energy gained from the opponent's damage
- Energy not gained because the energy bar is full
- Energy not gained because of the damage window start
- Defender's move decided on the move before
- Time spent dodging
Why another one?
There are many good calculators out there, such as the ones from Game Press and Poke Battler. However, they are calculated using simulations which can be slow and cumbersome. Since this approach calculates with formulas, the results are extremely fast. In fact, the calculator here is implemented in JavaScript and is calculated directly in your browser.
Since the results are so fast, you can get Pokemon recommendations based on the exact situation. Did the weather change? Did a friend show up? Do you know the Raid Boss's fast or charge move? You can get updated recommendations for any situation.
You can also add your personal Pokemon into the calculator and get exact recommendations (IV calculator not included). You can filter your results to get the best Pokemon of a specific type. You can also get the best Pokemon against a specific type. The calculator contains many options to check out.
Introducing DO@20
Damage Per Second (DPS) will recommend Pokemon doing the most damage. However, these Pokemon might have few hit points and faint quickly. In addition to Damage Per Second (DPS), there is Total Damage Output (TDO) which is the total damage done before the Pokemon faints. TDO can be a very useful metric, and it will minimize the number of Pokemon (and potions) that you use.
However, Raid battles are against a Pokemon with a lot of hit points. Now, the time limit for a battle because a concern and we are now interested in doing as much damage as possible within a time period. Unfortunately, DPS can recommend Pokemon that faint quickly and TDO can recommend Pokemon that don't do enough damage in the time allowed.
This is where Damage Output at 20 seconds (DO@20) comes in. It is a generalization of both DPS and TDO because DPS = DO@1 and TDO = DO@999. This calculator starts with DO@20 because other lists seem similar to it. But if you find yourself fainting too quickly, try calculating DO@30. If you are unable to defeat the raid boss in time, try calculating DO@10 (and setting up battle parties to quickly re-enter the raid).
For example, consider this recommended Pokemon list for Giratina Raids. And compare it to the DO@20 recommended list for Giratina. See how Gamepress's three supreme counters match the top three from DO@20 and how Gamepress's good counters match the next three from DO@20
Now look at this info-graphic of top Giratina raid counters. Notice how Gengar and Banette now make the list and Latias drops out. We can create a very similar list with DO@10 recommended list for Giratina where the DO@10 top 7 match the info-graphic's recommended 7.
For a second example, look at this ranking of best Pokemon against Mewtwo. If we calculate DO@13.6 recommended list for Mewtwo, we can match the top three Pokemon and see very similar recommendations for the top 7/8 Pokemon.
Compare that with this info-graphic of counters for Mewtwo Raids. This info-graphic puts Gengar in the top spot and adds Alakazam into the list. Calculating DO@11 best counters for Mewtwo, also puts Gengar in the top spot. If you take out Driblim and Lucario (which were not released when the info-graphic was made), DO@11 matches 9 of the top 10 Pokemon from info-graphic.
Finally, DO@20 is easy to understand. It can be explained quickly, and calculated by anyone else allowing for results to be compared between different analysis.
Contact and Collaboration
If you have any questions or comments, please contact me on the Elite 4 Insider subreddit. If find my calculator useful and would like to use it or collaborate on it, I'll be happy to work with you and/or link to your work..
Many Thanks
Battling in Pokemon Go has been mostly figured out thanks to the many contributors of the Silph Road subreddit. I would like to specifically mention the Game Press Guides which I used as a reference.