Contribute to Me Now - Share via - - Google+ - E-mail

Pokémon Red Version, Blue Version, and Yellow Version - Timing Notes

Pokémon Red Version, Blue Version, and Yellow Version - Timing Notes

Tags: pokemon-red-blue-and-yellow, in-depth-guides, timing-notes, battle-system

Contents

Pokémon Red Version, Blue Version, and Yellow Version - Timing

During each turn of the battle:

  • Each player chooses a command for his or her Pokémon, at the same time. Each player can choose one of the following have his or her Pokémon in battle use one of its moves; use an item from the Bag (in battles that allow it); run from the battle (in battles that allow it); or switch it out for another Pokémon (that Pokémon must be an unfainted Pokémon not in battle, controlled by that player).
    • If a player chooses an item, it’s used immediately, at that point.
  • Pokémon that chose to switch out do so (the order is not relevant, since in Link Battles, the Pokémon switches out without waiting for the other player to finish choosing commands).
  • Attacks are used.

In battles in which Exp. Points can be gained, the opposing side uses an item at the same time it would use the attack; that is, the item is used after the player’s attack if the opposing side strikes second.

Here are all the steps taken during a Pokémon’s attack segment.

  1. Sleep check
  2. Freeze check
  3. If the opposing Pokémon is under effect of a multi-turn attack, it doesn’t use an attack.
  4. Hyper Beam check. If the last move the Pokémon chose for use is Hyper Beam, the Pokémon"must recharge" and skips its attack and then Hyper Beam’s effect ends. (If the Pokémon also flinches, the "X must recharge!" message isn’t shown but Hyper Beam’s effect will still end.)
  5. Disable check
  6. Confusion check
  7. Paralysis check
  8. Obedience check (see below)
  9. Attack is used
  10. Reduce move’s PP by 1
    • If the PP can’t be reduced this way, the Pokémon doesn’t use that move instead. The exception to PP reduction is Struggle when it’s chosen for use automatically because the Pokémon has no moves it could choose. In Pokémon Red Version, and Pokémon Blue Version, Pocket Monsters Green, and Pokémon Yellow Version, no PP is reduced from a move if an opposing Pokémon controlled by the AI uses it.
  11. Accuracy check (see "Stat stages")
  12. Damage calculation (see below)
  13. Perform effect of attack
  14. Substitute
  15. Critical hit message; "super effective" message; "not very effective" message
  16. Recoil/Drain
  17. Additional effect if the opposing Pokémon hasn’t fainted
  18. Check if the opposing Pokémon faints
  19. Rage check (treats each hit of a multi-hit attack separately)
  20. Defrost check
  21. End of attack segment
  22. HP loss because of poison/burn
  23. HP loss because of Leech Seed
  24. Flinch check (for the opposing Pokémon if attacker struck first)
      No flinch check is done if the opposing Pokémon is asleep or frozen, or if the opposing Pokémon is an AI-controlled opposing Pokémon that’s about to use an item.

Pokémon Red Version, Blue Version, and Yellow Version - Turn Order

All attacks are categorized in three priority levels. The attack chosen for use with the higher priority level strikes first. When two attacks are of the same priority level, the Pokémon with the higher Speed strikes first. If both Pokémon have the same Speed, the one who goes first is randomly determined.

Quick Attack -> All other attacks -> Counter

The attacks last chosen for use on both sides determine the priority of attacks in a turn. If a Pokémon becomes asleep or frozen, its "attack last chosen for use" won’t be reset. It becomes reset when the Pokémon leaves the battle,.

Whenever Speed is calculated, it is calculated in this order:

  1. The Speed is multiplied by the multiplier for the current Speed stat stage.
  2. In battles in which Exp. Points can be gained, if the Pokémon is controlled by the player and the player has the Thunder Badge, the Speed rises by 1/8 of its previous value.
  3. If the Pokémon is paralyzed, the Speed is multiplied by 1/4.

The effects mentioned above are calculated in advance, rather than at the time turn order is determined.

Pokémon Red Version, Blue Version, and Yellow Version - Obedience check

In battles in which Exp. Points can be gained, only after choosing an attack, the game checks to see if the Pokémon is of a different ID from that of the player. (The OT name is not considered.) If so, the following process is used:

  • The badge level (B) is determined based on the player’s Badges.
    • If the player has no Badges, B is 10.
    • If the player has the Cascade Badge, B is 30.
    • If the player has the Rainbow Badge, B is 50.
    • If the player has the Marsh Badge, B is 70.
    • If the player has the Earth Badge, B is 101.
  • If the Pokémon’s level (L) is greater than B and a random integer from 0 through (L + B - 1) is greater than or equal to B and the Pokémon is attempting to use a move, the Pokémon becomes disobedient. When disobedient, the Pokémon no longer has a move it last used (but still has a move it last chose for use), and one of the following happens:
    • If another random integer from 0 through (L + B - 1) is greater than or equal to B:
      • C is set to N - (L - B), where N is a random integer from 0 through 255.
      • If C is 0 or greater and is greater than or equal to L minus B, one of the following messages is used: "X is loafing around", "X ignored orders!", "X turned away!", "X won’t obey!"
      • If C is 0 or greater and is less than L minus B, the message shown is "X won’t obey!" and the Pokémon deals confusion damage to itself.
      • If C is less than 0, the message shown is "X began to nap!" and the Pokémon goes to sleep. (Not prevented by Substitute.)
    • Otherwise, the Pokémon will attempt to use a different move if possible, even if that move has zero PP. (It could not use a different move while asleep or during the effect of Disable.) If it can’t, one of the following messages is used: "X is loafing around", "X ignored orders!", "X turned away!", "X won’t obey!" If the Pokémon uses a different move, the last move it used and last move it chose for use are set to that different move, and PP is reduced from the move ordered instead of from that different move. (If the move is used this way and it has 0 PP, the game erroneously subtracts 0 by 1, resulting in the value 255 (that is, 256 minus 1, wrapping around to 8 bits), or 63 PP (low 6 bits) and 3 PP Ups used (high 2 bits).)

No obedience check is done while Thrash, Petal Dance, Bide, Rage, multi-turn attacks, or two-turn attacks are continuing for the Pokémon.

Pokémon Red Version, Blue Version, and Yellow Version - Damage Calculation Process

  1. Stat stage modifying attacks modify the appropriate stat (Attack, Defense, or Special). (This effect is calculated in advance, rather than during damage calculation.)
  2. In battles in which Exp. Points can be gained, the badges have the appropriate stat multiplied by 9 and divided by 8 for Pokémon controlled by the player. The badges that increase a Pokémon’s stats in battles in which Exp. Points can be gained are the Boulder Badge (Attack), the Thunder Badge (Speed), the Soul Badge (Defense), and the Volcano Badge (Special). (This effect is calculated in advance, rather than during damage calculation.)
  3. If the attacker is burned, halve the Attack value. (This effect is calculated in advance, rather than during damage calculation.)
  4. If the attack is a critical hit, the steps above are ignored and the level is doubled. (See "Critical Hits", below.)
  5. Selfdestruct and Explosion halve the opposing Pokémon’s Defense.
  6. If the Attack or Defense stat exceeds 255, both stats are equal to ((((X/2)%255)/2)%255). (The "%" means "modulo," or remainder. X means Attack or Defense.)
  7. If Reflect is in effect for the opposing Pokémon and the attack isn’t a critical hit, the Defense equals ((Orig. value*2)/4) and Attack equals (Orig. value/4).
  8. If Light Screen is in effect for the opposing Pokémon and the attack isn’t a critical hit, the opposing Pokémon’s Special equals ((Orig. value*2)/4) and attacker’s Special equals (Orig. value/4).
  9. If the Attack, Defense, or both is 0, it becomes 1.
  10. The damage becomes equal to

    int(int(int(2*L / 5+2)*A*P / D)/50)

    where L is the attacker’s level, A is the attacker’s Attack/Special value, P is the attack’s power, and D is the opposing Pokémon’s Defense/Special value. For physical attack types (Normal, Fighting, Flying, Poison, Ground, Rock, Bug, Ghost), use the Attack and Defense values. For special attack types (Fire, Water, Electric, Grass, Ice, Psychic, Dragon), use the Special value.
  11. If the damage calculated is greater than 997, it becomes 997.
  12. Add 2 to the calculated damage.
  13. If the attack type shares a type with one of the user’s types, then the damage is multiplied by 1.5. (This is commonly called Same Type Attack Bonus.)
  14. The damage calculated is multiplied by the number that depends on the attacker’s and the opposing Pokémon’s types (see the Type Matchup Chart, below).
  15. Finally, in a process called "damage variance", unless the damage is 768 or more, a random integer from 217 through 255 is multiplied in the currently calculated damage, and divided by 255.

Pokémon Red Version, Blue Version, and Yellow Version - Stat stages

Stat stages refer to levels that raise or lower stats during a battle. Each stat stage has 13 different levels.

Stat Stage (except Evade) -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6
Evade Stat Stage 6 5 4 3 2 1 0 -1 -2 -3 -4 -5 -6
Stat Multiplier 0.25 0.28 0.33 0.4 0.5 0.66 1 1.5 2 2.5 3 3.5 4

The term "stat stages" refers to those for Attack, Defense, Speed, Special, Evade and Accuracy.

At the start of a battle, each Pokémon’s stat stages begin at 0. The stat stages for a Pokémon are reset to 0 when the Pokémon leaves the battle,. Each stat stage can’t go lower than -6 or higher than 6.

To apply stat stages, multiply the stat by the stat multiplier for the corresponding stat stage.

An attack’s accuracy is multiplied by its user’s Accuracy multiplier, as shown in the table above, and multiplied by its the opposing Pokémon’s Evade multiplier, as shown in the table above. If the accuracy is 0, it becomes 1. If it’s greater than 255, it becomes 255. The attack will hit if a random integer from 0 through 255 is less than its accuracy. The moves Bide and Swift, however, ignore accuracy checks and will always hit.

Stat Modification

  • An effect that raises Attack, Defense, Special, or Speed will do nothing if the stat stage for the corresponding stat is +6, or if the corresponding stat is 999.
  • An effect that lowers Attack, Defense, Special, or Speed will do nothing if the stat stage for the corresponding stat is -6, or if the corresponding stat is 1.
  • When an effect reduces a Pokémon’s Accuracy, Attack, Defense, Evade, Special, or Speed stat stage, the new value of the stat being reduced is the original stat modified by stat stages, badges, paralysis, and burns, but not less than 1 or greater than 999; and the new value of other stats is the current stat modified by badges, paralysis, and burns, but not less than 1 or greater than 999. (Evade and Accuracy are not stats.)
  • When an effect raises a Pokémon’s Attack, Defense, Special, or Speed stat stage, the new value of the stat being raised is the original stat modified by stat stages and badges, but not greater than 999; and other stats remain unchanged.
  • When a Pokémon enters the battle, the value of each of its stats is the original stat modified by badges, paralysis, and burns, but not less than 1 or greater than 999.
  • When an effect paralyzes or burns a Pokémon, the current Speed or Attack, respectively, is reduced to 1/4 of its previous value, rounded down, but not less than 1, and other stats remain unchanged.
  • When Transform is used, the opposing Pokémon’s Attack, Defense, Special, and Speed stats, as determined in the preceding sentences, are copied and the user’s current stats become equal to those values, and the opposing Pokémon’s original Attack, Defense, Special, and Speed stats are copied and the user’s original stats become equal to those values until Transform’s effect ends.
  • Using Haze (by either Pokémon in battle), using an item to cure poison, burn, paralysis, freezing, or sleep, and gaining a level (after calculating new stats) each reset the stats to their original unmodified values.
  • Using Rest doesn’t recalculate stats.

Pokémon Red Version, Blue Version, and Yellow Version - Critical Hits

X = max(255,int(int(S/2)*N))

  • S = Pokémon’s race value (commonly called "base stat") for Speed
  • N = Modifier: N starts at 1. If the attacker has used Focus Energy, divide N by 4.* If the attacker is using Crabhammer, Karate Chop, Razor Leaf, or Slash, multiply N by 8.

If a random number, from 0 to 255, is less than X, the attack is a critical hit.

* It is known that Focus Energy reduces the chances of a critical hit. This problem has been fixed in Pokémon Stadium (known as Pokémon Stadium 2 in Japan) (in which N should be multiplied, instead of divided, by 4).

Pokémon Red Version, Blue Version, and Yellow Version - Type Matchup Chart

Attack types are the rows; Pokémon types are the columns. If a Pokémon has two types, the type matchups from both types are multiplied.

Attack Type NOR FIG FLY POI GRO ROC BUG GHO FIR WAT GRA ELE PSY ICE DRA
NORMAL 1x 1x 1x 1x 1x 1/2 1x 0 1x 1x 1x 1x 1x 1x 1x
FIGHTING 2x 1x 1/2 1/2 1x 2x 1/2 0 1x 1x 1x 1x 1/2 2x 1x
FLYING 1x 2x 1x 1x 1x 1/2 2x 1x 1x 1x 2x 1/2 1x 1x 1x
POISON 1x 1x 1x 1/2 1/2 1/2 2x 1/2 1x 1x 2x 1x 1x 1x 1x
GROUND 1x 1x 0 2x 1x 2x 1/2 1x 2x 1x 1/2 2x 1x 1x 1x
ROCK 1x 1/2 2x 1x 1/2 1x 2x 1x 2x 1x 1x 1x 1x 2x 1x
BUG 1x 1/2 1/2 2x 1x 1x 1x 1/2 1/2 1x 2x 1x 2x 1x 1x
GHOST 0 1x 1x 1x 1x 1x 1x 2x 1x 1x 1x 1x 0 1x 1x
FIRE 1x 1x 1x 1x 1x 1/2 2x 1x 1/2 1/2 2x 1x 1x 2x 1/2
WATER 1x 1x 1x 1x 2x 2x 1x 1x 2x 1/2 1/2 1x 1x 1x 1/2
GRASS 1x 1x 1/2 1/2 2x 2x 1/2 1x 1/2 2x 1/2 1x 1x 1x 1/2
ELECTRIC 1x 1x 2x 1x 0 1x 1x 1x 1x 2x 1/2 1/2 1x 1x 1/2
PSYCHIC 1x 2x 1x 2x 1x 1x 1x 1x 1x 1x 1x 1x 1/2 1x 1x
ICE 1x 1x 2x 1x 2x 1x 1x 1x 1x 1/2 2x 1x 1x 1/2 2x
DRAGON 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 2x

Pokémon Red Version, Blue Version, and Yellow Version - Fainting and Switching Out

If a Pokémon faints at any time during its attack segment, including the end of its attack segment, any end-of-attack effects are applied to the Pokémon before it faints if the opposing Pokémon hasn’t fainted and the fainting by the Pokémon occurred before the end of its attack segment and didn’t occur as part of the use of Selfdestruct or Explosion (the end-of-attack effects are poison, burn, and Leech Seed); no end-of-attack effects are applied to the new Pokémon; and if the Pokémon struck first, the opposing Pokémon’s attack segment is skipped. (If the opposing Pokémon used Hyper Beam on the previous turn, it "must recharge" on the next possible attack segment.)

If a Pokémon faints before the end of an opposing Pokémon’s attack segment, usually as the result of an attack, no end-of-attack effects are applied to the opposing Pokémon.

When a Pokémon switches out, the Pokémon that replaces it does nothing during its attack segment but any end-of-attack effects are still applied to that Pokémon.

Pokémon Red Version, Blue Version, and Yellow Version - Chance of Running in Wild Battles

In a wild Pokémon battle, if the current Speed of the Pokémon trying to run is equal to or greater than the opposing Pokémon’s, running is successful. Otherwise, the formula below is used.

X=int(A*32/B)+(30*C)

where:

  • A = Current Speed of Pokémon trying to run
  • B = Remainder of (D / 4) divided by 256 where D is the current Speed of the opposing Pokémon. If B equals 0, running is successful.
  • C = Number of times the player already tried to run this battle, not counting the current attempt. Doesn’t count attempts to run when an effect (such as Mean Look) prevents the Pokémon from running. This variable is reset to 0 when the player chooses the Fight command, but doesn’t change when the player’s Pokémon changes.

If X is greater than 255, running is successful. Otherwise, if a random integer from 0 through 255 is less than or equal to X, running is successful. Otherwise, running fails.

Pokémon Red Version, Blue Version, and Yellow Version - Tag Team Battles

In Pokémon Stadium (known as Pokémon Stadium 2 in Japan), two players can team up on a single side. Each player on a side enters six Pokémon, then chooses three of them before a battle begins. Each player on a side with two players can choose only a Pokémon he or she controls when it switches out. If all Pokémon on a single side faint, that side loses.

Things such as same-species and same-item restrictions are enforced only for each player’s team individually, not for the combined team when a battle begins.