Pokémon Ruby Version, Sapphire Version, and Emerald Version - Safari Zone
Pokémon FireRed Version and Pokémon LeafGreen Version
In these games, the player has 600 steps and 30 Safari Balls.
Each Pokémon has a so-called "escape rate" (different from starting catch rate). When a wild Pokémon appears in the Safari Zone, a variable, G, is set to an initial value equal to:
G = starting catch rate * 100 / 1275
(G can initially be less than 3.)
-
When the player throws a rock, G is doubled, and is adjusted so that
it’s not greater than 20. If it isn’t "angry" already, the Pokémon will
be "angry" for 2 to 6 turns, including this turn; then:
- If the player throws another rock while the Pokémon is "angry", the current number of turns remaining (including this turn) rises by 2 to 6, but not to more than 6.
- If the player throws bait while the Pokémon is "angry", the Pokémon stops being "angry".
- If the Pokémon stops being "angry" by itself, G will reset to its initial value (before the beginning of the next turn).
-
When the player throws bait, G is halved, and is adjusted so that it’s
not less than 3. If it isn’t "eating" already, the Pokémon will eat the
bait for 2 to 6 turns, including this turn; then:
- If the player throws more bait while the Pokémon is "eating", the current number of turns remaining (including this turn) rises by 2 to 6, but not to more than 6.
- If the player throws a rock while the Pokémon is "eating", the Pokémon stops "eating". (Being "angry" and "eating" are mutually exclusive.)
- If the Pokémon stops "eating" by itself, G remains unchanged.
-
When the player throws a ball, the catch rate (before adjusting for the
Poké Ball used) is set to:
catchrate = G * 1275 / 100
- Running from the Pokémon will always succeed.
At the beginning of each turn (before commands are chosen), a random integer from 0 through 99 is determined, and a value, X, is calculated as follows:
- If the Pokémon "is angry", then X equals (escaperate * 100 / 1275) * 2, but not greater than 20.
- If the Pokémon "is eating", then X equals (escaperate * 100 / 1275) / 4, but not less than 0.
- Otherwise, X equals (escaperate * 100 / 1275).
At the end of each turn, if the random number that was determined at the beginning of that turn is less than 5 times the value X had at the beginning of that turn, the Pokémon will run.
Each division mentioned above is rounded down.
The escape rates are:
- 0 - All species not listed below.
- 25 - Magikarp
- 50 - Nidoran female, Nidoran male, Paras, Venonat, Psyduck, Poliwag, Slowpoke, Doduo, Goldeen
- 75 - Nidorina, Nidorino, Parasect, Venomoth, Exeggcute, Rhyhorn, Seaking
- 100 - Dratini
- 125 - Chansey, Kangaskhan, Scyther, Pinsir, Tauros, Dragonair
Pokémon Ruby Version, Pokémon Sapphire Version, and Pokémon Emerald Version
In these games, the player has 500 steps and 30 Safari Balls.
When a wild Pokémon appears in the Safari Zone, two variables, G and E, are set to:
G = starting catch rate * 100 / 1275
E = 3
In these versions, instead of throwing bait and rocks, the player can either throw a Pokéblock, or go near the Pokémon. Therefore, there are two additional variables: B is the number of Pokéblocks thrown at the Pokémon, and A indicates how close the player is to the Pokémon. These versions also don’t use escape rates.
-
When the player throws a Pokéblock, B rises by 1 but not to more
than 3, then:
- If the Pokémon "is enthralled by" the Pokéblock, that is, if it "likes" the Pokéblock (see below), and E is greater than 0, E falls by 5 if B is 1, 3 if B is 2, or 2 if B is 3, and set to 1 if the result is negative.
- If the Pokémon "completely ignored" the Pokéblock, that is, if it "dislikes" the Pokéblock, E remains unchanged.
- If the Pokémon "is curious about" the Pokéblock, that is, if it’s neutral toward that Pokéblock, and E is greater than 0, E falls by 3 if B is 1, 2 if B is 2, or 1 if B is 3, and set to 1 if the result is negative.
- If the player "goes near" the Pokémon, (even if the player "can’t get any closer" because A is 3), E rises by 4 but not to more than 20, G rises by (4 minus A) but not to more than 20, and A rises by 1 but not to more than 3.
-
When the player throws a ball, the catch rate (before adjusting for the
Poké Ball used) is set to:
catchrate = G * 1275 / 100
- Running from the Pokémon will always succeed.
At the beginning of each turn (before commands are chosen), a random integer from 0 through 99 is determined. If that number is less than 5 times the value E had at the beginning of that turn, the Pokémon flees at the end of that turn.
Each division mentioned above is rounded down.
Pokéblock Preference
- A Pokémon "likes" a Pokéblock if the flavor it likes (the "liked flavor") is present and the flavor it dislikes (the "disliked flavor") is either not present or is less intense than the liked flavor. (A Pokémon that "likes" a Pokéblock will "happily eat" it.)
- A Pokémon "dislikes" a Pokéblock if the disliked flavor is present and the liked flavor is either not present or is less intense than the disliked flavor. (A Pokémon that "dislikes" a Pokéblock will "disdainfully eat" it.)
- A Pokémon is "neutral" toward a Pokéblock if the liked and disliked flavors are equally intense or if neither flavor is present. (A Pokémon that is "neutral" toward a Pokéblock will "eat" it.)
Pokéblock Feeder
After a Pokéblock is placed in a Pokéblock Feeder, it will remain there until the player moves 100 steps. (It can’t be removed from the feeder. Only one Pokéblock per feeder.) When a wild Pokémon appears, if a Pokéblock is in a Pokéblock Feeder and the player is five steps or fewer away from that feeder’s position (city block distance), the wild Pokémon will have a random nature that a Pokémon that "likes" the Pokéblock would have, or if there is no such nature, a random nature. The Pokéblock doesn’t disappear when a wild Pokémon appears.
To clarify how distance from the feeder is calculated: The top of the feeder and the patches of grass to the left and right of it are treated as being on the same row. A player facing the feeder from the front of it is considered to be 1 space away from the feeder.