vinnymac / PokeNurse

💉 A tool for Pokémon Go to aid in transferring and evolving Pokémon
284 stars 48 forks source link

Analysis on pokemon's moveset #110

Open nevet opened 8 years ago

nevet commented 8 years ago

If we want to use a pokemon for battling, not only stats matters, but we should focus on their moveset as well. From the damage formula deduced from this Reddit post:

Damage = Floor(0.5 * (Attack / Defense) * (CpM_Atk / CpM_Def) * STAB * Effectiveness * MovePower) + 1

Where (credits to this post):

Attack : This is the total attack stat of the attacker (base attack + attack IV).
Defense : This is the total defense stat of the defender (base defense + defense IV).
CpM_Atk : This is the CP_Multiplier based on the level of the attacker.
CpM_Def : This is the CP_Multiplier based on the level of the defender.
STAB : This is the Same-Type Attack Bonus, which is equal to 1.25. It is only applied if the type of the attack move is the same as one of the attacker's types.
Effectiveness : This is the type effectiveness of the attack, which can be either 0.64, 0.8, 1.0, 1.25, or 1.5625, depending on whether the attack is "super effective" or "not very effective".
MovePower : This is the base power of the move used by the attacker.

So if we match up with a same level defender, the formula could be simplied to:

Let K = STAB * Effectiveness * Power / (2 * DEF)
Then Dmg = (ATK + IV) * K

We could tell that for each IV increase, the DMG would increase by K if using the same move. However, in real case, K value would be greatly affected if the pokemon doesn't possess good moveset, and facing wrong type of opponent.

Let's see a real example: A Poliwrath (water type) uses Ice Punch (ice type move) against an Arcanine (fire type), K1 = 1 * 0.8 * 45 / 2 / DEF = 18 / DEF; another Poliwrath uses Hydro Pump, K2 = 1.25 * 2 * 90 / 2 / DEF = 112.5 / DEF. Therefore we got the ratio of damage:

Dmg1 / Dmg2 = ((ATK + IV1) * K1) / ((ATK + IV2) * K2) = (ATK + IV1) / (ATK + IV2) * (K1 / K2)

Since ATK is much larger than IV, the ratio depends highly on K1 / K2, where in our case is 1 / 6.25. In other words, even if the second Poliwrath has 0 ATK IV, it could do around 5 times more damage than the first full ATK IV Poliwrath. Although I didn't put DPS into the equation, but what I want to show here is, CP, and even IV, is not the main thing a battler should look at.

This might be really unintuitive, since CP difference for a full IV pokemon could be a few hundreds difference from a low IV pokemon. But, when doing the offensive battling, a full IV pokemon with poor moveset might do much less damage than an 70 - 80% IV pokemon with great moveset.

In conclusion, knowing how good the moveset is for this pokemon is as important as IV values. I would be really appreciated if we could have an in-depth moveset analysis which provides:

mackhankins commented 8 years ago

This looks closely tied to #102

vlechemin commented 8 years ago

Given how important the moveset is, it would be so great to have these numbers like in these charts

More details in this spreadsheet

hacknug commented 7 years ago

We could use enclosed letters (ⒶⒷⒸ) to indicate how good a moveset is for both attack and defense. Ⓐ would indicate it is the best possible moveset, Ⓑ that it is the second best moveset, and so on. What do you guys think?