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

Pokémon Ruby Version, Sapphire Version, and Emerald Version - Various Notes

Pokémon Ruby Version, Sapphire Version, and Emerald Version - Various Notes

Tags: pokemon-ruby-sapphire-and-emerald, in-depth-guides

Contents

Pokémon Ruby Version, Sapphire Version, and Emerald Version - Personality ID

Each Pokémon comes with an unsigned 32-bit integer ID, generated at random, which determines significant information about the uniqueness of the Pokémon. (This ID is sometimes called "Personality Value" or "Personality ID". It is not to be confused with a Pokémon’s Trainer ID.)

Ability

A Pokémon’s initial ability is determined by whether the personality ID is odd or even. If it’s even, it has the first ability, and if odd, the second ability.

Gender

The remainder of a Pokémon’s personality ID divided by 256 contains that Pokémon’s gender value. Each Pokémon species has one of the following seven gender rates.
  • 12.5% female - If gender value is 0 through 30, the Pokémon is female; otherwise, male.
  • 25% female - If gender value is 0 through 63, the Pokémon is female; otherwise, male.
  • 50% female - If gender value is 0 through 126, the Pokémon is female; otherwise, male.
  • 75% female - If gender value is 0 through 190, the Pokémon is female; otherwise, male.
  • Always male - Always male regardless of gender value.
  • Always female - Always female regardless of gender value.
  • Gender-unknown - Unknown gender, regardless of gender value.

Unown form

To find the Unown form, the game does the following:
  1. Set Y to the personality ID.
  2. Set A to the remainder of Y divided by 4.
  3. Divide Y by 256 and round down.
  4. Set B to the remainder of Y divided by 4, then multiply B by 4.
  5. Divide Y by 256 and round down.
  6. Set C to the remainder of Y divided by 4, then multiply C by 16.
  7. Divide Y by 256 and round down.
  8. Set D to the remainder of Y divided by 4, then multiply D by 64.
  9. Set X to A plus B plus C plus D.
  10. Set X to the remainder of X divided by 28.
The result, X, contains the Unown form (where A through Z are 0-25, "!" is 26, and "?" is 27).

Wurmple

For a given Wurmple, if the remainder of the personality ID’s high 16 bits divided by 10 is less than 5, it will evolve into Silcoon; else Cascoon.

Pokémon Ruby Version, Sapphire Version, and Emerald Version - Nature

The remainder of a Pokémon’s personality ID divided by 25 identifies the nature of that Pokémon. Most natures raise one stat by 10% and lower another stat by 10%. Most natures also make Pokémon like or dislike certain kinds of food. Shown here are the food preferences of Pokémon with those natures (what Pokéblocks they like), and the stats to increase and decrease.

Value Nature Like Dislike Stat increase Stat decrease
0 Hardy ---- ---- ---- ----
1 Lonely Spicy Sour +Attack -Defense
2 Brave Spicy Sweet +Attack -Speed
3 Adamant Spicy Dry +Attack -Special Attack
4 Naughty Spicy Bitter +Attack -Special Defense
5 Bold Sour Spicy +Defense -Attack
6 Docile ---- ---- ---- ----
7 Relaxed Sour Sweet +Defense -Speed
8 Impish Sour Dry +Defense -Special Attack
9 Lax Sour Bitter +Defense -Special Defense
10 Timid Sweet Spicy +Speed -Attack
11 Hasty Sweet Sour +Speed -Defense
12 Serious ---- ---- ---- ----
13 Jolly Sweet Dry +Speed -Special Attack
14 Naive Sweet Bitter +Speed -Special Defense
15 Modest Dry Spicy +Special Attack -Attack
16 Mild Dry Sour +Special Attack -Defense
17 Quiet Dry Sweet +Special Attack -Speed
18 Bashful ---- ---- ---- ----
19 Rash Dry Bitter +Special Attack -Special Defense
20 Calm Bitter Spicy +Special Defense -Attack
21 Gentle Bitter Sour +Special Defense -Defense
22 Sassy Bitter Sweet +Special Defense -Speed
23 Careful Bitter Dry +Special Defense -Special Attack
24 Quirky ---- ---- ---- ----

A Pokémon with a Bashful, Docile, Hardy, Quirky, or Serious nature doesn’t like or dislike any particular kinds of food and doesn’t experience any special increase or decrease in a particular stat.

Pokémon Ruby Version, Sapphire Version, and Emerald Version - Kinds of Stats

There are six different kinds of stats:

HP (Hit Points)

A Pokémon with high HP is expected to last longer during battle. When a Pokémon’s HP reaches 0, the Pokémon faints and can’t fight until it is revived.

Attack

The Attack stat affects the damage inflicted by physical attacks. If Attack is greater than the target’s Defense, the physical attack’s power is boosted. Physical attacks have the types Bug, Fighting, Flying, Ghost, Ground, Normal, Poison, Rock, and Steel.

Defense

The Defense stat affects the damage received from physical attacks. If Defense is greater than the attacker’s Attack, the physical attack’s power is reduced.

Special Attack

The Special Attack stat affects the damage inflicted by special attacks. If Special Attack is greater than the target’s Special Defense, the special attack’s power is boosted. Special attacks have the types Dark, Dragon, Electric, Fire, Grass, Ice, Psychic, and Water.

Special Defense

The Special Defense stat affects the damage received from special attacks. If Special Defense is greater than the attacker’s Special Attack, the special attack’s power is reduced.

Speed

The Speed stat determines which Pokémon will strike first. In battle, in general, the Pokémon with the highest Speed attacks first in a particular turn.

Pokémon Ruby Version, Sapphire Version, and Emerald Version - Stat Formulas

The game uses these formulas to find a Pokémon’s stats.

HP = floor((A*2+B+floor(C/4))*D/100)+D+10
Other Stats =floor((floor((A*2+B+floor(C/4))*D/100)+5)*E)

where:

  • A = Pokémon’s Race Value
  • B = Pokémon’s Individual Value
  • C = Pokémon’s Base Stat (EV)
  • D = Pokémon’s Level
  • E = 1.1 if the Pokémon’s nature raises the stat; otherwise, 0.9 if the nature lowers the stat; otherwise, 1.
  • floor(X) means "turn X down to the nearest integer."

As an exception, Shedinja’s maximum HP is always 1 (its HP race value is 1).

A Pokémon’s stats are calculated upon creation. A Pokémon’s stats are recalculated when Rare Candy or a stat enhancer is used on that Pokémon and takes effect, when a stat-reducing Berry reduces its base stat (EV), when that Pokémon is placed in the PC storage system, or when that Pokémon evolves or levels up. Its stats are also recalculated when it changes to a form with different race values within the same game A Pokémon’s stats are not recalculated when it’s traded.

In Pokémon Emerald Version, Pokémon FireRed Version, and Pokémon LeafGreen Version, the Attack, Defense, Special Attack, Special Defense, and Speed of Deoxys are continuously calculated, rather than recalculated only at certain points. (In battle, however, the usual rules for recalculating stats apply, although the Deoxys starts with the continuously calculated stats as soon as it enters the battle.)

Pokémon Ruby Version, Sapphire Version, and Emerald Version - Individual Values

Individual Values, or IVs, range from 0 through 31. These values can differ between two Pokémon of the same species and define a particular Pokémon’s stat potential rather than the stat potential of its species. There are six Individual Values for Attack, Defense, Special Attack, Special Defense, Speed, and HP. A Pokémon begins with randomly determined Individual Values.

For a level 100 Pokémon, each Individual Value contributes that many stat points to the corresponding stat.

Pokémon Ruby Version, Sapphire Version, and Emerald Version - Base Stats (Effort Values)

Base stats (EVs) indicate the amount of training that a Pokémon has made. Here are the basics on base stats (EVs).

  • How base stats (EVs) are raised - Whenever a Pokémon earns Exp. Points in battle, usually by defeating foe Pokémon, it also earns a number of base stat points (EVs) depending on the species of the Pokémon defeated. A Pokémon doesn’t earn base stat points (EVs) in battle if its level is 100 (since it doesn’t earn Exp. Points at that level). A Pokémon’s base stats (EVs) are not raised while it’s deposited in the Day-Care or when a Rare Candy is used on it.
  • Limits - Each base stat (EV) ranges from 0 to 255. A Pokémon starts with base stats (EVs) of 0 for all stats, and its base stat (EV) total can’t exceed 510. (The six stats are HP, Attack, Defense, Speed, Special Attack, and Special Defense base stat points (EVs) are also earned in that order.) A Pokémon with 510 base stat points (EVs) can receive an Effort Ribbon in Slateport’s outdoor market.
  • Base stats (EVs) and stats - For a level 100 Pokémon, every 4 base stat points (EVs) correspond to 1 stat point. Because of this, only 508 base stat points (EVs) overall and 252 base stat points (EVs) in a certain stat (for a stat increase of 63) are required to raise a Pokémon’s stats as much as possible.
  • The "box trick" - When a Pokémon is placed in a PC storage box, the game stores, among other things, its Exp. Points (to calculate its level), its individual values, and its base stats (EVs). When the Pokémon is removed from the storage system, its stats are recalculated based on its base stats (EVs), without actually gaining a level. This effect is sometimes called the "box trick."

Some kinds of items can affect base stats (EVs):

  • Stat enhancers - Stat enhancers, also known as "vitamins", increase the base stat (EV) of the corresponding stat by 10, but not to more than 100. Each stat enhancer only takes effect if the base stat (EV) for that stat is less than 100. After a stat enhancer is used and takes effect, all the Pokémon’s stats are recalculated.
    • HP - HP Up (won’t have any effect on a Shedinja, however)
    • Attack - Protein
    • Defense - Iron
    • Speed - Carbos
    • Special Attack - Calcium
    • Special Defense - Zinc
  • Stat-reducing Berries - In Pokémon Emerald Version, certain kinds of Berries decrease the base stat (EV) of the corresponding stat by 10. If such a Berry reduces the base stat (EV) this way, all the Pokémon’s stats are recalculated.
    • HP - Pomeg Berry (Won’t have any effect on a Shedinja if its friendship is 255, whether or not its HP base stat (EV) is 0.)
    • Attack - Kelpsy Berry
    • Defense - Qualot Berry
    • Speed - Tamato Berry
    • Special Attack - Hondew Berry
    • Special Defense - Grepa Berry
  • Macho Brace - The Macho Brace will double the base stat points (EVs) that a Pokémon holding it will earn in battle.
  • Pokérus - Although Pokérus is not an item, it too will double the base stat points (EVs) that a Pokémon infected with it will earn in battle, even after it’s cured of Pokérus.

Pokémon Ruby Version, Sapphire Version, and Emerald Version - Exp. Points

Whenever a Pokémon on the opposite side of the player faints in a battle against a wild Pokémon or an in-game Trainer, each Pokémon that participated in the battle against it gains Exp. Points (or experience points). The number of Exp. Points a Pokémon gains this way is based on a formula shown below. Each multiplication and division given is rounded down.

Formula used if no unfainted Pokémon controlled by the player is holding an Exp. Share:

Exp. Points = (max(1,(L*G/7)/E))*X*Y*Z

Formula used if at least one unfainted Pokémon controlled by the player is holding an Exp. Share:

Exp. Points = (max(1,int(M/E))*A+max(1,(M/F))*B)*X*Y*Z

where:

  • L = Defeated Pokémon’s level
  • G = Base Experience for the defeated Pokémon’s current species
  • X = If the battle is a Trainer battle, X=1.5; else 1.
  • Y = If the participating Pokémon’s 32-bit Trainer ID, OT name, or both are different from the player’s, Y=1.5; else 1 ("[name] gained a boosted [value] Exp. Points!")
  • Z = If the participating Pokémon is holding a Lucky Egg, Z=1.5; else 1.
  • M = ((L*G/7)/2)
  • E = Number of unfainted Pokémon that participated in the battle against the defeated Pokémon
  • F = Number of unfainted Pokémon that are holding an Exp. Share
  • A = If the Pokémon participated in the battle against the defeated Pokémon, A=1; else 0.
  • B = If the Pokémon is holding an Exp. Share, B=1; else 0.

A "participant" means each unfainted Pokémon (other than an Egg) that is controlled by the player and that had seen the opposing Pokémon since the last time the opposing Pokémon entered the battle. A participant need not have used an attack against the Pokémon, but must merely have seen it. If a Pokémon faints at the same time as the opposing Pokémon, it doesn’t count as a participant. (In battles in which Exp. Points can be gained, if both sides have no Pokémon at the same time, it is considered a loss for the player.)

When a Pokémon gains a level, its current HP is its new HP minus the HP lost before the level gain. A Pokémon gains levels one at a time, in case it earns so much experience at once that it gains more than one level.

While a Pokémon is in the Day-Care, it will earn 1 Exp. Point for each step the player walks and will learn new moves as it gains levels; such moves, if the list is full, will overwrite older moves, starting from the top of the list. (Even HM moves will be overwritten this way.)

Pokémon Ruby Version, Sapphire Version, and Emerald Version - Growth Rates

Each Pokémon species belongs in one of six growth rates. Each growth rate determines the number of Exp. Points required to level up, from level 1 through 100.

The Exp. Points table shows the number of Exp. Points for each growth rate and level.

The Growth Rates list shows which Pokémon species belong in which growth rates.

Here are the six growth rates:

  • Erratic - Max: 600,000 Exp. Points
    • Formula for levels 1-50: Level*Level*Level*(100-Level)/50
    • Formula for levels 51-68: Level*Level*Level*(150-Level)/100
    • Formula for levels 69-97: Level*Level*Level*(N+(10*(Level-68)/3)-(Level*10))/1000 where N is 1501 if Level is divisible by 3, and 1500 otherwise
    • Formula for levels 98-100: Level*Level*Level*(160-Level)/100
  • Fast - Max: 800,000 Exp. Points
    • Formula: (Level*Level*Level*4/5)
  • Medium - Max: 1,000,000 Exp. Points
    • Formula: (Level*Level*Level)
  • Parabolic - Max: 1,059,860 Exp. Points
    • Formula: (Level*Level*Level*6/5)-15*Level*Level+100*Level-140
  • Slow - Max: 1,250,000 Exp. Points
    • Formula: (Level*Level*Level*5/4)
  • Fluctuating - Max: 1,640,000 Exp. Points
    • Formula for levels 1-15: Level*Level*Level*(24+((Level+1)/3))/50
    • Formula for levels 16-35: Level*Level*Level*(14+Level)/50
    • Formula for levels 36-100: Level*Level*Level*(31+Level/2)/50

A Pokémon at level 1 starts with 1 Exp. Point, despite the formulas given above.

Pokémon Ruby Version, Sapphire Version, and Emerald Version - Size Calculation

The size of a Magikarp, Heracross, Barboach, and so on is calculated in two steps.

First, the game calculates the value of S with the formula below.

S = (((AT xor DF)*HP) xor M) * 256 + (((SA xor SD)*SP) xor N)

where:

  • HP is the remainder of the HP individual value (IV) divided by 16.
  • AT is the remainder of the Attack IV divided by 16.
  • DF is the remainder of the Defense IV divided by 16.
  • SP is the remainder of the Speed IV divided by 16.
  • SA is the remainder of the Special Attack IV divided by 16.
  • SD is the remainder of the Special Defense IV divided by 16.
  • M is the remainder of the personality ID divided by 256 (the lowest byte of the ID).
  • N is the remainder of (personality ID / 256) divided by 256 (the second lowest byte of the ID).
  • Each division above is rounded down.
  • "xor" represents an "exclusive or" operation:
    1. Let A and B be the two numbers on either side of the "xor", let C be 1, and let R be 0.
    2. If A is odd and B is even, or vice versa, add C to R.
    3. Multiply C by 2, and divide A and B each by 2, rounding down.
    4. Repeat steps 2 and 3 until A and B are both 0.
    5. The result of the "exclusive or" operation is R.

Then the game calculates the size of the Pokémon, in millimeters, using this formula:

Size = int(int((S-Z)/Y+X)*C/10)

where:

  • C is the height of the Pokémon in tenths of a meter, as shown on the Pokédex.
  • X, Y, and Z are based on the value of S as follows:
    • If S is from 0 through 9, then X=290, Y=1, Z=0.
    • If S is from 10 through 109, then X=300, Y=1, Z=10.
    • If S is from 110 through 309, then X=400, Y=2, Z=110.
    • If S is from 310 through 709, then X=500, Y=4, Z=310.
    • If S is from 710 through 2709, then X=600, Y=20, Z=710.
    • If S is from 2710 through 7709, then X=700, Y=50, Z=2710.
    • If S is from 7710 through 17709, then X=800, Y=100, Z=7710.
    • If S is from 17710 through 32709, then X=900, Y=150, Z=17710.
    • If S is from 32710 through 47709, then X=1000, Y=150, Z=32710.
    • If S is from 47710 through 57709, then X=1100, Y=100, Z=47710.
    • If S is from 57710 through 62709, then X=1200, Y=50, Z=57710.
    • If S is from 62710 through 64709, then X=1300, Y=20, Z=62710.
    • If S is from 64710 through 65209, then X=1400, Y=5, Z=64710.
    • If S is from 65210 through 65409, then X=1500, Y=2, Z=65210.
    • If S is from 65410 through 65535, then X=1700, Y=1, Z=65510.

Because of this formula, a Pokémon’s actual size can range from 29% to 172.6% of its Pokédex height. The distribution is similar to a normal distribution, with a mean of about 100% and a standard deviation of about 17.9%. When converting to inches (1 inch = 25.4 mm), the game turns down to the nearest tenth of an inch.

Pokémon Ruby Version, Sapphire Version, and Emerald Version - Breeding

These are notes related to discovering Pokémon Eggs, also known as "breeding", in Pokémon Ruby Version, Pokémon Sapphire Version, and Pokémon Emerald Version.

Egg Waiting Time

The waiting time depends on the species and 32-bit Trainer ID of the Pokémon (the OT names and OT genders of each Pokémon are not considered). The species and ID will set a value, called X, as follows:

  • Same species, different ID: X=70% ("The two seem to get along very well.")
  • Same species, same ID: X=50% ("The two seem to get along.")
  • Different species, different ID: X=50% ("The two seem to get along.")
  • Different species, same ID: X=20% ("The two don’t seem to like each other.")

However, if the Pokémon are incompatible, X will be 0% instead ("The two prefer to play with other Pokémon than each other"). This will happen if:

  • Both Pokémon are male or both are female.
  • Both Pokémon are Ditto.
  • One or both of the Pokémon are gender-unknown, unless either Pokémon is a Ditto.
  • The two Pokémon don’t have an Egg group in common, unless either Pokémon is a Ditto.
  • One or both of the Pokémon are in the "undiscovered" Egg group, even if either Pokémon is a Ditto.

If the two Pokémon are compatible, then every 256 steps after the two Pokémon are placed in the Day-Care, an Egg will be ready at the percent chance given by X. The Egg will be calculated as soon as the Egg is received.

After an Egg is received, an "Egg counter" for that Egg is set to the " steps to hatch Egg " divided by 256. Every 256 steps after an Egg is taken or rejected from the Day-Care Man, the game reduces the "Egg counter" of each Egg in the player’s party by 1, or if it’s Pokémon Emerald Version and a Pokémon with Magma Armor or Flame Body is in the player’s party, by 2. If an Egg’s "Egg counter" reaches 0 or less, it hatches, and the "Egg counters" of Eggs that follow it in order in the player’s party are not reduced. When an Egg hatches, its 32-bit Trainer ID, OT name, and OT gender change to those of the player, and the player will be allowed to nickname the newly hatched Pokémon.

The Summary screen gives an estimate of how long before a given Egg hatches:

  • Egg counter is 41 or greater: "It looks like this Egg will take a long time to hatch."
  • Egg counter is 11-40: "What will hatch from this? It will take some time."
  • Egg counter is 6-10: "It moves occasionally. It should hatch soon."
  • Egg counter is 5 or less: "It’s making sounds. It’s about to hatch!"

Species

The species hatched from the Egg is usually that of the female, in the lowest evolutionary stage. There are a few exceptions:
  1. One of the Pokémon can be a Ditto, but not both. In that case, the Egg will be the species that isn’t the Ditto, in the lowest evolutionary stage.
  2. If the Egg’s species would be Nidoran female, instead it’s either Nidoran male or Nidoran female.
  3. If the Egg’s species would be Illumise, instead it’s either Illumise or Volbeat.
  4. If neither Pokémon in the pair is holding a Lax Incense and the Egg’s species would be Wynaut, the Egg’s species is Wobbuffet instead.
  5. If neither Pokémon in the pair is holding a Sea Incense and the Egg’s species would be Azurill, the Egg’s species is Marill instead.

Moves

The Egg begins at level 5 and initially has all moves it would have up to level 5. The Egg can inherit other moves from the Pokémon left in the Day-Care, in this order:

  1. The Egg will inherit all moves that the male Pokémon* knows and that are Egg moves for the Egg’s species.
  2. The Egg will inherit all moves that the male Pokémon* knows and that can be taught to the Egg’s species through a TM or HM.
  3. The Egg will inherit all moves that both Pokémon left in the Day-Care know and that the Egg’s species could learn by leveling up.
  4. In Pokémon Emerald Version, if either Pokémon in the pair is a Pikachu or Raichu and holds a Light Ball and the Egg is a Pichu, the Egg will learn Volt Tackle.

If the Egg would have more than four moves this way, moves from the top of the list are deleted and all duplicates except the last are removed until four moves remain.

*In these two cases, if one of the Pokémon in the pair is a Ditto, moves will be inherited by the Pokémon that isn’t Ditto, but only if it’s male or gender-unknown.

Individual Values

The Egg inherits three Individual Values. In Pokémon Emerald Version, it receives random IVs, then it inherits a random IV from either Pokémon in the pair, then a random IV other than HP from either Pokémon in the pair, then a random IV other than HP or Defense from either Pokémon in the pair. In Pokémon Ruby Version, Pokémon Sapphire Version, Pokémon FireRed Version, and Pokémon LeafGreen Version, it receives random IVs, then it inherits three IVs for three different stats, each from either Pokémon in the pair.

Personality ID

Except in Pokémon Emerald Version, the remainder of the Egg’s personality ID divided by 65536 is never equal to 0.

Nature

A random nature is chosen for the Egg, indirectly by generating a personality ID.

As an exception, in Pokémon Emerald Version, there is a (32767/65536) chance that the Egg will gain the nature of the holder of Everstone if that holder is a Ditto, if one exists, or the female Pokémon if neither Pokémon in the pair is a Ditto. (The chance is instead 32769/65536 if the Ditto is the first Pokémon deposited to the Day Care.) This case is handled by recalculating the Egg’s personality ID up to 2400 times until the nature is the same and the personality ID divided by 65536, rounded down, doesn’t equal 0.

Pokémon Ruby Version, Sapphire Version, and Emerald Version - Fishing

The following process is used in Pokémon Ruby Version, Pokémon Sapphire Version, and Pokémon Emerald Version:

  1. The game determines the number of fishing iterations, which is a random integer from 1 through X, where X is 1 for the Old Rod, 3 for the Good Rod, and 6 for the Super Rod. The game then waits 64 frames.
  2. The game displays a text box and slowly displays a series of dots, waiting 20 frames before showing the next dot. The number of dots shown is a random integer from 1 through 10. If this is the first iteration, that number rises by 4 but not to more than 10. If the player presses the A button, the fishing attempt fails.
  3. If this is the first iteration, the game now checks whether something was caught. If the first Pokémon in the player’s party isn’t an Egg and has Suction Cups or Sticky Hold and it’s Pokémon Emerald Version, the player will get a bite at a 57.5% chance. Otherwise, the player will get a bite at a 50% chance. A bite will never happen if there are no Pokémon that can be encountered at the location fished.
  4. If the player gets a bite, the words "Oh! A bite!" are shown. The player must press the A button within the next 32 frames. Otherwise, the message "It got away..." is shown and the fishing attempt fails.
  5. If there is only one fishing iteration, the fishing attempt continues at a 10% chance for the Good Rod, at a 30% chance for the Super Rod, and at a 0% chance for the Super Rod. If it continues, steps 2, 4, and 6 are repeated in a new fishing iteration. Otherwise, the fishing attempt succeeds and the player will encounter the fished Pokémon.
  6. Otherwise, if there are still more fishing iterations, steps 2, 4, and 6 are repeated for each additional iteration. Otherwise, the fishing attempt succeeds and the player will encounter the fished Pokémon.

The following process is used in Pokémon FireRed Version and Pokémon LeafGreen Version:

  1. The game waits 64 frames.
  2. The game displays a text box and slowly displays a series of dots, waiting 20 frames before showing the next dot. The number of dots shown is a random integer from 1 through 10. If this is the first iteration, that number rises by 4 but not to more than 10.
  3. The game now checks whether something was caught. The player will get a bite at a 50% chance. A bite will never happen if there are no Pokémon that can be encountered at the location fished.
  4. If the player gets a bite, the fishing attempt succeeds and the player will encounter the fished Pokémon.

Pokémon Ruby Version, Sapphire Version, and Emerald Version - Feebas

The player can fish for Feebas in only six randomly placed water tiles on Route 119. The exact location of these tiles changes whenever the "trendy phrase" changes. In each of these tiles, when fishing, Feebas will appear at a 50% chance; it doesn’t matter which rod is used.

Pokémon Ruby Version, Sapphire Version, and Emerald Version - Spinda’s Spots

Four extra spots are drawn on Spinda’s front. Their location depends on the Spinda’s personality ID.

Here is where each spot is drawn on the 64x64 sprite. In the description below, "PID" means the Spinda’s personality ID, and "X mod Y" means "the remainder of X divided by Y." Each division is rounded down. The top left corner of the drawn sprite’s bounding rectangle appear on the given X and Y coordinates.

  • Spot A’s X coordinate = 8 + (PID mod 16)
  • Spot A’s Y coordinate = 6 + ((PID/16) mod 16)
  • Spot B’s X coordinate = 32 + ((PID/256) mod 16)
  • Spot B’s Y coordinate = 7 + ((PID/4096) mod 16)
  • Spot C’s X coordinate = 14 + ((PID/65536) mod 16)
  • Spot C’s Y coordinate = 24 + ((PID/1048576) mod 16)
  • Spot D’s X coordinate = 26 + ((PID/16777216) mod 16)
  • Spot D’s Y coordinate = 25 + ((PID/268435456) mod 16)
       Spot D Spot C Spot B Spot A **** *** **** *** ****** ***** *******
      ******* ******** ******* ********* ********* ******** ******* ***********
      ********** ******** ******* *********** *********** ******** *******
      ************* ************ ******** ******* ************* ************
      ****** ***** ************* ************ **** *** *********** **********
      *********** ********** ********* ******** ******** **** ***