User Guide
Pokemon DV Calculator
Created by tewky @ github
Updated 2024-03-14
License
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
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.
"Rare" stat
The "Rare" stat is an 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 from a probability distribution of Pokemon DVs. It will vary as DV accuracy is improved over multiple levels.
Updates
- Merged T1nyTim's updates: missing Pokemon added to experience tracker, scroll-to-top button added, hidden power calculations fixed (previously incorrect)
- Rarity stat calculation bug fix
Credits
Phil Erwin’s DV Calculator
Bulbapedia
Cave of Dragonflies
Pokedream
Psypokes
Smogon University
AndyJ01 @ github
T1nyTim @ github