User talk:Piotr mil/HP
Type
Let us 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 of a Pokémon with given IVs is represented by a number, calculated with this formula:
HP(type)=Floor[(a+2b+4c+8d+16e+32f)*15/63] where a,b,c,d,e,f are calculated in this way:
- a=1 if the Individual Value of HP is odd. If not, a=0
- b=1 if the Individual Value of Attack is odd. If not, b=0
- c=1 if the Individual Value of Defense is odd. If not, c=0
- d=1 if the Individual Value of Speed is odd. If not, d=0
- e=1 if the Individual Value of Special Attack is odd. If not, e=0
- f=1 if the Individual Value of Special Defense is odd. If not, f=0
Which simply means that every element of the sum in the brace is the reminder 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), inclusively. 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 form 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 |
| 30 0 |
31 1 |
31 1 |
31 1 |
30 0 |
31 1 |
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 grass-type Hidden Power.
Damage
Damage of the Hidden Power is calculated in a very same manner, using the following formula: HP Power = Floor[((u+2v+4w+8x+16y+32z)*40/63)+30]
- u=1 if the Individual Value of HP divided by 4 has a remainder of 2 or 3. If not, u=0.
- v=1 if the Individual Value of Attack divided by 4 has a remainder of 2 or 3. If not, v=0.
- w=1 if the Individual Value of Defense divided by 4 has a remainder of 2 or 3. If not, w=0.
- x=1 if the Individual Value of Speed divided by 4 has a remainder of 2 or 3. If not, x=0.
- y=1 if the Individual Value of Special Attack divided by 4 has a remainder of 2 or 3. If not, y=0.
- z=1 if the Individual Value of Special Defense divided by 4 has a remainder of 2 or 3. If not, z=0.
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 |
| 30 1 |
31 1 |
31 1 |
31 1 |
30 1 |
31 1 |
HP Type = Floor[(0 + 2 + 4 + 8 + 0 + 32)*15/63] = Floor [46*15/63] = Floor[10.952] = 10, which means that our Pikachu's Hidden Power's power is 70
|
Hit Points | Attack | Defense | Speed | Sp.Attack | Sp.Defense |
| 30 | 31 | 31 | 31 | 30 | 31 |
| Hidden Power: | Type: Grass |
Power: 70 |
