Difference between revisions of "Hidden Power (move)/Calculation"

In the Pokémon games, Hidden Power is a Template:Type2 move when the type is displayed, such as in battle and on status screens. However, the actual type of Hidden Power is determined by the Pokémon's individual values, and through calculation, can be set as one of the sixteen other natural types and with a power between 30 and 70.

The type of Hidden Power can be checked in Veilstone Game Corner's prize house in Pokémon Platinum, the Celadon Game Corner in Pokémon HeartGold and SoulSilver, and in Mistralton City's Pokémon Center in Pokémon Black and White. There remains no in-game way to determine the power level directly, however.

Type

Consider an example Pokémon, like Pikachu with this set of IVs:

 Hit Points Attack Defense Speed Sp.Attack Sp.Defense 30 31 31 31 30 31

Hidden Power's type of a Pokémon with given IVs is represented by a number, calculated with this formula:

where a,b,c,d,e,f (the "type bits") are the least significant bit of their respective IV's. If a number is odd, its least significant bit is 1, and it is 0 otherwise.

• a depends on the HP IV.
• b and c depend on the Attack and Defense IV's respectively.
• d depends on the Speed IV.
• e and f depend on the Special Attack and Special Defense IV's respectively.

This simply means that every element of the sum in the brace is the remainder of division of corresponding IV and 2, multiplied by appropriate power of 2 (20 in case of a and 25 in case of f). The sum may range from 0 (when all IVs are even) to 63 (when all IVs are odd), inclusive. It is worth mentioning that the computed sum may be easily calculated by putting its variables a,b,c,d,e,f together in reverse order and interpreting this as a number in the binary system, which then needs to be reverted to decimal system:

fedcba(2) = 32f+16e+8d+4c+2b+a (10)

The summed value is then multiplied by 15 and divided by 63, to be sure that the number representing Hidden Power Type will range from 0 to 15, inclusively (16 values in total). The calculated number is then rounded down (floor[]), which simply means that only integral part of the calculated number is considered.

The resulting number will correspond to a type; utilize the table below.

Number Type
0  Fighting
1  Flying
2  Poison
3  Ground
4  Rock
5  Bug
6  Ghost
7  Steel
8  Fire
9  Water
10  Grass
11  Electric
12  Psychic
13  Ice
14  Dragon
15  Dark

In our example, we get:

 Hit Points Attack Defense Speed Sp.Attack Sp.Defense 300 311 311 311 300 311

HP Type = Floor[(0 + 2 + 4 + 8 + 0 + 32)*15/63] = Floor[46*15/63] = Floor[10.952] = 10, which means that our Pikachu has a Template:Type2 Hidden Power.

Damage

Damage of the Hidden Power is calculated in a manner very similar to that of its type, using the following formula:

• The variables u through z (the "damage bits") represent the second to last bit of each IV. If a variable has a remainder of 2 or 3 when divided by 4, this bit is 1. Otherwise, the bit is zero.
• u depends on the HP stat.
• v and w depend on the Attack and Defense stats respectively.
• x depends on the Speed stat.
• y and z depend on the Special Attack and Special Defense stats respectively.

Like before, the sum may range from 0 to 63, inclusively. The calculated number is then multiplied by 40 and divided by 63 to make sure that the fraction will not exceed 40. Then, the number is increased by 30 and rounded down, making Hidden Power's power a number ranging from 30 to 70, inclusively.

In our example, we get:

 Hit Points Attack Defense Speed Sp.Attack Sp.Defense 300 311 311 311 300 311

HP Power = Floor[((0 + 2 + 4 + 8 + 0 + 32)*40/63)+30] = Floor [(46*40/63)+30] = Floor[59.206] = 59, which means that our Pikachu's Hidden Power's power is 59

 Hit Points Attack Defense Speed Sp.Attack Sp.Defense 30 31 31 31 30 31

 Hidden Power: Type:Grass Power:59

Number of possible Hidden Powers

As there are 6 IVs, ranging from 0 to 31 (32 in total), the number of different possible Hidden Powers should be 326=230, which is more than one billion possibilities. But let us consider two Pokémon with one different IV:

 Hit Points Attack Defense Speed Sp.Attack Sp.Defense 30 31 31 31 30 31

and

 Hit Points Attack Defense Speed Sp.Attack Sp.Defense 26 31 31 31 30 31

As we see, both 26 and 30 are divisible by 2 and give the remainder of 2 when divided by 4. So, in both cases the algorithms will interpret the IVs of those Pokémon in the same way, returning Grass-type Hidden Power with 70 power. It means that for the mentioned algorithms an IV of 30 is treated in the same way like IVs of 2,6,10,14,18,22 and 26 (8 in total).

In fact, there are only four essentially different types of IV when calculating Hidden Power:

 1 IV that gives a remainder of 0 when divided by 4 - has damage bit 0 and type bit 0: 0, 4, 8, 12, 16, 20, 24, 28 2 IV that gives a remainder of 1 when divided by 4 - has damage bit 0 and type bit 1: 1, 5, 9, 13, 17, 21, 25, 29 3 IV that gives a remainder of 2 when divided by 4 - has damage bit 1 and type bit 0: 2, 6, 10, 14, 18, 22, 26, 30 4 IV that gives a remainder of 3 when divided by 4 - has damage bit 1 and type bit 1: 3, 7, 11, 15, 19, 23, 27, 31

In other words: only four IVs that give different remainders when divided by four would cover all possible Hidden Power types and powers.

If so, the number of possible Hidden Powers should be 46=212=64*64=4096. This number, however is again far too large, as the real number of possible variations of Hidden power is simply 16*41=656, as Hidden Power exists in 16 types and has 41 different powers. The significant difference between 656 and 4096 is explained by the function floor[], which reduces theoretically different numbers (for example 10.952 and 10.476) to the same integer (Whole Number) (in this case 10).

Percentage distribution of different variations of Hidden Power

Due to the fact that both Hidden Power's type and its power are the products of rounding down, chances of getting a Pokémon with certain Hidden Power are not equal, as one might have thought, and are different for every Hidden Power's type and damage value.

As it was stated before, the number of theoretically different Hidden Powers is 4096, which is the result of multiplying theoretical values of possible types (64) and powers (also 64). It means that every of 64 "types" comes into 64 "powers". After rounding down, however, the number of 64 "types" is reduced to 16 and the number of 64 "powers" to 41.

Percentage distribution of Hidden Power's type
Number Type Qty %
0 Fighting 320 7.8125%
1 Flying 256 6.25%
2 Poison 256 6.25%
3 Ground 256 6.25%
4 Rock 256 6.25%
5 Bug 320 7.8125%
6 Ghost 256 6.25%
7 Steel 256 6.25%
8 Fire 256 6.25%
9 Water 256 6.25%
10 Grass 320 7.8125%
11 Electric 256 6.25%
12 Psychic 256 6.25%
13 Ice 256 6.25%
14 Dragon 256 6.25%
15 Dark 64 1.5625%
4096 100%
Percentage distribution of Hidden Power's powers
Powers Qty %
30, 31, 33, 35, 36,
38, 40, 42, 43, 45,
47, 49, 50, 52, 54,
56, 57, 59, 61, 63,
64, 66, 68
23 x 128 3.125%
32, 34, 37, 39, 41,
44, 46, 48, 51, 53,
55, 58, 60, 62, 65
67, 69, 70
18 x 64 1.5625%
4096 100%

Trivia

• Although Hidden Power is listed as a Normal-type move, it cannot count as a Normal-type attack.