Updates / Bug fixes: see end of page

User Guide

Pokemon DV CalculatorCreated by tewkyUpdated 2020-07-29

What is the DV Calculator?

It helps you find the hidden attributes of a Pokemon. These are called diversification values and determine the Pokemon’s training potential compared to others of its species. They are the generation 1 and 2 equivalent of individual values. For each stat of a Pokemon, a random number from 0 to 15 is chosen and assigned. They are fixed values and do not change once you have encountered the Pokemon for the first time.

Why do I need this tool?

There is no way to directly find the DVs of a Pokemon unless you view the game memory using an emulator or save file editor. They must be reverse-calculated from a Pokemon’s stats. The calculation used to determine a Pokemon’s stats uses a rounding operation that is non-reversible, so it is possible that a given value for a stat might correspond to more than one DV. This is only an issue for Pokemon below level 50; after this level, every value of DV corresponds to a unique stat value. This calculator has an experience tracker to help with calculating DVs across multiple levels of a Pokemon so you can quickly find its DVs to a high accuracy.

How do I use it?



Catch a Pokemon in the wild or acquire one by an encounter in the world. This won’t work for Pokemon that have been previously battled, see step 6. Enter its stats and press calculate. The “Last” row shows the possible range of DVs for the previous calculation. The DV row shows the most-probable DVs based on saved records. When this is gray the result is inaccurate because not enough records exist. When a DV appears yellow the result is 50% accurate, and when red it’s 100%. You will typically only need 50% accuracy before you know if a Pokemon is worth training further. Battle with the Pokemon. After each knockout it participates in, track the KO in the experience tracker. If you have to swap the Pokemon out of battle, first check the “Share” option, then switch to a different Pokemon in the calculator to track the KO. Stat experience is split evenly between Pokemon in the battle. Either use the arrow buttons to track the KO (one press represents one KO) or enter them manually in whole numbers - the calculator will do the distribution for you. After the Pokemon levels up, enter its new stats and press calculate. Repeat this process until the DV row shows the accuracy you want. The other stats shown are only as accurate as the DVs and should be considered estimates until the whole DV row shows red. Errors made while entering stats or tracking knockouts will affect the accuracy of these results. If the Pokemon evolves, press the evolve button (the upward arrow pokeball) before doing the calculation with its new stats, otherwise the DVs will be incorrect. You can continue leveling to improve accuracy as normal. If the Pokemon is a veteran and has already been in battle, click the “Veteran” button in the tracker. Save first. Buy 10 of each vitamin and record how many you were able to use on your Pokemon before you received the message “it won’t have any effect”. Enter the Pokemon’s stats from before you used the vitamins, the number of vitamins used, and press calculate. Because vitamins are an imprecise way of measuring stat experience the best accuracy that can be had is 50% and the DV row will show yellow.



If you can’t use at least 1 vitamin for a stat your only option is to level the Pokemon until it has maximum stat experience. Enter its stats, check the “Max Exp” checkbox, then press save, and then calculate. You can find out if the Pokemon has maximum stat experience by using it in battle and occasionally depositing it and withdrawing it from Bill’s PC; if there is no change in stat value from before the deposit and after the withdrawal, the stat experience is maxed – it might take 30 knockouts before this value will change, so this is a slow way of finding DVs.

The "Rare" stat

The "Rare" stat is a rough estimate of the probability of finding a Pokemon with the given DVs or better in the wild. It does not factor in the species of the Pokemon, whether or not it's shiny, or any other considerations. It's calculated based on the four independent stats (Att, Def, Spd, Spc) with a modifier for HP because it's derived from the other four.

Updates



Manual entry of KOs in the tracker now properly splits stat exp. between Pokemon sharing it. This feature was changed to use the number input spinner instead, but some devices like mobile phones do not support the spinners, so the XP sharing feature would not work correctly - the XP would not be divided before its distribution between the Pokemon, leading to an underestimate of your Pokemon's DVs. I apologize for this error caused by lack of testing on mobile devices. This application was designed for desktop and I have been hacking in mobile device support as I go.

The rarity stat calculation was updated to factor in HP and increase precision. A Pokemon that was previously 1 / 65536 rarity would now be 1 / 147509.

Fixed a bug in the rarity calculation that would cause Pokemon in gen 2 to have a much higher rarity than intended. The relative rarity between gen 2 Pokemon was still valid but the actual number given was many times higher than it should have been.

Credits

Phil Erwin’s DV Calculator

Bulbapedia

Cave of Dragonflies

Pokedream

Psypokes

Smogon University

AndyJ01 @ Github



Questions or comments? Open an issue on Github.