Gen I record Mechanics

Special thanks to a_magical_me, who started evaluating the algorithm, permit me use his notes and then provided me with an assembly intake to choose up wherein he left off. The hacking genius is mainly his.

You are watching: Pokemon yellow why do pokeballs miss

If you to be an avid player that Red, Blue and also Yellow, friend may have read the other capture mechanics sections and also fleetingly wondered, "But what around the time in R/B/Y as soon as it would say, "The round missed the POKéMON!"? What to be going ~ above *then*? how much the this stuff to be the same ago then, anyway?"

How much, indeed? as it transforms out, right any. The R/B/Y record algorithm is drastically different from that of the later on games; in particular, it yes, really is one *algorithm* rather than largely a simple formula. And also it is also, as it happens, quite amazing - particularly if you, prefer me, have always sort that wondered exactly how that worked. So sit back, relax, and let"s take a look in ~ the insides of the game. Or, well, if girlfriend don"t care around the insides the the game, friend can constantly skip under to the simple summary that how recording is various in R/B/Y.

Meanwhile, if all you desire to execute is find out just how likely you are to capture a Pokémon in R/B/Y, you"ll desire the catch rate calculator.

Table of ContentsWhat It means## The Algorithm

The record algorithm proper, as provided below, uses to *regular wild Pokémon battles*. A couple of sanity checks space handled before we obtain to the part:

Otherwise, to recognize the result of a thrown ball, the video game executes the adhering to procedure (cleaned up and tweaked for person presentation, the course). Keep in mind that any time it speaks of division, it method *integer division*: the an outcome is an integer and also the remainder is merely discarded. Thus, because that example, if it claims "Divide 5 by 2", the an outcome is merely 2, not 2.5.

See more: How Many Atoms Are There In H2So4 ? How Many Atoms Are Present In 49 G Of H2So4

**caught**. Skip the remainder of the procedure. (

**Yes**, the understand Ball is an automatic guarantee success, as long as you happen the sanity check above. Over there is really persistent rumour the it actually has actually a 1/256 or 1/65536 chance of missing; every little thing you may have heard, where you heard it, it is

**not true**. It is true the

*moves*that were expected to it is in 100% specific would have a 1/256 possibility of absent in R/B/Y, however this has actually no relation to exactly how the grasp Ball works in any kind of game; it always simply skips the calculation entirely.)Generate a random number R1, with a range depending ~ above the ball used: If it"s a Poké Ball, R1 varieties from 0 to 255 (inclusive). If it"s a an excellent Ball, R1 varieties from 0 to 200 (inclusive). If it"s one Ultra or Safari Ball, R1 varieties from 0 come 150 (inclusive). Develop a status variable S: If the target Pokémon is asleep or frozen, S is 25. If the targeted Pokémon is poisoned, burned or paralyzed, S is 12. Otherwise, S is 0. Subtract S native R1 (to stop confusion with the original R1, i will describe the an outcome as R*).If R* is less than zero (i.e. If the produced R1 was much less than S), the Pokémon is properly

**caught**. Skip the remainder of the procedure.Calculate the HP variable F: multiply the Pokémon"s max HP by 255 and also store the result in F. Divide F by 8 if the ball offered was a an excellent Ball. 12 otherwise. divide the Pokémon"s present HP by four (if the result is zero, bump it as much as 1). Divide F through this number and make the the new F. If F is now greater than 255, do it 255 instead. If the base record rate of the Pokémon is much less than R*, the Pokémon automatically

**breaks free**. Skip to action 10.Generate a second random number R2 ranging from 0 come 255 (inclusive).If R2 is less than or equal to the HP element F, the Pokémon is

**caught**. Skip the rest of the procedure.If we acquire here, the record fails. Identify the appropriate computer animation to show: main point the Pokémon"s base catch rate by 100 and store the an outcome in a wobble approximation change W. Divide W by a number depending on the round used, round off the an outcome down: If it to be a Poké Ball, division by 255. If it to be a an excellent Ball, divide by 200. If it to be an Ultra or Safari Ball, divide by 150. main point W by F (the HP aspect calculated above). Divide W through 255. Include a number if the Pokémon has a status affliction: If the Pokémon is sleep or frozen, include 10 to W. If the Pokémon is poisoned, melted or paralyzed, add 5 to W. present the animation and message equivalent to W: If W is less than 10, the round misses ("The round missed the POKéMON!"). If W is in between 10 and 29 (inclusive), the sphere wobbles when ("Darn! The POKéMON broke free!"). If W is in between 30 and 69 (inclusive), the round wobbles double ("Aww! It showed up to be caught!"). Otherwise (if W is better than or equal to 70), the sphere wobbles 3 times ("Shoot! It to be so close too!").

## What that Means

(Psst, if you don"t speak math, you deserve to skip down to the level English summary, which has practically no math at all. It"s simple, ns promise!)

So what walk this algorithm in reality *mean* for catching in R/B/Y? exactly how is it various from the later games? (In the rest of this discussion, I will certainly assume you room not using a understand Ball; that case is trivial and also it would certainly be a bother to keep discussing it.)

Well, first, let"s look in ~ what the structure of the algorithm in reality theoretically way for our opportunities of recording the Pokémon. (This it s okay a bit mathematical, yet bear through me.) Let"s call the Pokémon"s base catch rate C and create a ball modifier change B to stand for the variety of the an initial random number R1: 256 if the ball is a Poké Ball, 201 if the round is a an excellent Ball and 151 if the round is one Ultra Ball. (Note the this is one higher than the best numbers disputed in the algorithm above; this is since a arbitrarily integer between 0 and X inclusive deserve to take ~ above X+1 feasible values, the way that 0–2 inclusive method *three* values, 0, 1 and also 2.) depending upon where R1 falls in this range, three various things deserve to happen:

**R1 is much less than the status variable S**, the Pokémon is automatically

**caught**.If

**R1 is better than or equal to S, however less 보다 or same to S + C**, the game calculates a second random number R2 in between 0 and also 255 inclusive and also an HP aspect F. These numbers are then compared: If

**R2 is less than or equal to F**, the Pokémon is

**caught**. If

**R2 is higher than F**, the Pokémon division free. If

**R1 is higher than S + C**, the Pokémon breaks free.

Of the full of B possible R1 values, S of them result in the first path (auto-capture), C + 1 of castle (up to a preferably of B - S, because there are only B - S worths left) result in the second path wherein R2 and also the HP variable F are calculated, and the remainder (if any) an outcome in the third path (auto-failure). We can visualize it prefer this: