Catch rate: Difference between revisions

From Bulbapedia, the community-driven Pokémon encyclopedia.
Jump to navigationJump to search
(Simplify range of possible values for a)
Line 8: Line 8:
* bonus<sub>ball</sub> is the multiplier for the Poké Ball used, and
* bonus<sub>ball</sub> is the multiplier for the Poké Ball used, and
* bonus<sub>status</sub> is the multiplier for any [[status ailment]] the Pokémon has (2 for sleep and freeze, 1.5 for paralyze, poison and burn).
* bonus<sub>status</sub> is the multiplier for any [[status ailment]] the Pokémon has (2 for sleep and freeze, 1.5 for paralyze, poison and burn).
Given this formula, the maximum value for ''a'' (if the Pokémon could have 0 HP) would be catch rate * bonus<sub>ball</sub> * bonus<sub>status</sub>. The minimum value for ''a'' (for a Pokémon with full health) would be 1/3 * catch rate.


If ''a'' is greater than or equal to 255, then the Pokémon is caught. If not, then calculate ''b'' as follows:
If ''a'' is greater than or equal to 255, then the Pokémon is caught. If not, then calculate ''b'' as follows:

Revision as of 17:42, 13 December 2007

When a Poké Ball is thrown at a wild Pokémon, the game uses a formula based on the wild Pokémon's current health, any status effect it may have, and that Pokémon's catch rate, to determine the chances of catching that Pokémon. The formula is as follows:

File:Catch formula 1.png

Where

  • HPmax is the number of hit points the Pokémon has at full health,
  • HPcurrent is the number of hit points the Pokémon has at the moment,
  • rate is the catch rate of the Pokémon,
  • bonusball is the multiplier for the Poké Ball used, and
  • bonusstatus is the multiplier for any status ailment the Pokémon has (2 for sleep and freeze, 1.5 for paralyze, poison and burn).

Given this formula, the maximum value for a (if the Pokémon could have 0 HP) would be catch rate * bonusball * bonusstatus. The minimum value for a (for a Pokémon with full health) would be 1/3 * catch rate.

If a is greater than or equal to 255, then the Pokémon is caught. If not, then calculate b as follows:

File:Catch formula 2.png

Then generate 4 random numbers between 0 and 65535, inclusive. If the random numbers are all less or equal to than b, then the Pokémon is caught; otherwise the ball shakes n times, where n is the number of random numbers that are less than b. Note that b ≥ 65535 if a ≥ 255.

Therefore, the probability p of catching a Pokémon, given the values a and b calculated above, is:

File:Catch formula 3.png

The second expression for p may be expanded as follows:

File:Catch formula 3 expansion.png

Since (216 - 1)4 ≈ 264, we can approximate p with the following expression:

File:Catch formula 3 approximation.png

The percentage error in this approximation approaches 0 as a approaches 255, and does not exceed 0.02%.

For a constant probability p, the probability P that a player can capture the Pokémon with no more than r tries is:

File:Catch formula 4.png

Note that this is the cumulative probability function for a geometric distribution. The expected value of r is 1/p, that is to say, on average, a Pokémon that can be caught with probability p will be caught with 1/p tries.

The inverse problem, the number of tries, r, needed to have a probability P of capturing a Pokémon is:

File:Catch formula 5.png

Trivia

  • The appearances of Pokémon such as Nosepass, Tropius, Carnivine, etc., would suggest that their catch rate is low. However, Nosepass has 255, the highest catch rate, and Carnivine and Tropius have 200, which is pretty high.
  • If the HP of a Pokémon to be captured is reduced to 1, usually by way of False Swipe, then only 2 would be subtracted from the part of the formula in the brackets. This makes it so that Pokémon with higher HP stats (such as Chansey) are easier to capture when their HP is reduced, despite low catch rates compared to others.

See also

References

  • ポケットモンスター情報センター 2号館: ボール