RNG Abuse of non-bred Pokemon in Ruby/Sapphire [GP 2/2] Please HTML me.

Nix_Hex

Uangaana kasuttortunga!
is a Site Content Manager Alumnusis a Forum Moderator Alumnusis a Researcher Alumnusis a Top Contributor Alumnusis a Battle Simulator Moderator Alumnus
approved by the Theorymon.

RNG Abuse in Ruby/Sapphire

Introduction
Since the advent of RNG abuse, Pokemon Emerald has been seen as the easiest RNG to manipulate. The fact that it generates an initial seed of 0 at all times makes abuse as simple as finding a desired spread (either in RNG Reporter, emloop, or by looking at readily compiled tables), calibrating your timer; and carefully hitting the seed you are seeking. However, as we know from life, the easy way is not always the best way. There are several spreads in Emerald that are obviously sub-par. In come Ruby and Sapphire to the rescue!

On their own, Ruby and Sapphire are difficult to abuse. They undergo selection processes similar to that of FireRed and LeafGreen, where you must depend on finding common seeds and searching for desirable spreads that arise from those seeds. Of course, this opens up your options, but it is extremely difficult and therefore is out of the scope of this article. Instead, this article will focus on abusing a trait in Ruby / Sapphire that makes abuse just as easy as in Emerald: they too can hit a constant seed! There is one catch, however.

You may have to dismantle your cartridge.

In order to generate a constant seed, the Ruby and Sapphire cartridges must have a non-functioning internal battery. This can be achieved in two ways. First, your internal battery may, over time, dry up. Due to the game being out for nearly a decade, this is more common than it sounds, but it takes place after many hours of game play. If you don't feel like waiting for this to happen, you will have to resort to dismantling your cartridge and physically removing the battery. If you are too impatient to wait and you have moral qualms about tampering with your game, you may as well stop here.

Once your battery has been incapacitated in whatever manner you saw fit, it now has a permanent starting seed of 5A0. This is what sets Ruby and Sapphire apart from Emerald. With a different starting seed, we can hit completely different spreads than on Emerald. These spreads happen to be much better at lower frame counts than those in Emerald, hence they are more easily obtainable on a cartridge.

One final question that begs for an answer is why would you bother RNGing in Ruby / Sapphire when I can get flawless legendaries in DPP and HeartGold / SoulSilver? One example is the ability to capture Kyogre and Groudon at a lower level than 50, allowing them to be used at level 49 to gain control of the weather in the now defunct VGC 2010 metagame. Although this is such a tiny niche, it is still possible to play matches from this sort of metagame during a throwback tournament. More importantly, however, is that Registeel only learns Seismic Toss in Emerald and XD, and cannot learn it from any 4th Generation tutors. Therefore, the knowledge presented here is advantageous for obtaining a Seismic Toss Registeel with excellent stats.

Capturing Perfect Pokemon

Here is a list of obtainable Pokemon with amazing IV spreads in Ruby and Sapphire, provided graciously by user <a href="/forums/member.php?u=76392">Hozu</a>.

Initial (Monster) Frames

Frames to generate from pressing A:
ID/SID - 75 frames
Kyogre (Sapphire) - 654 frames
Groudon (Ruby) - 654 frames
Rayquaza - 2 frames
Registeel, Regirock, Regice: 56 frames
Beldum - 167 frames

Spreads

Method 1 R/S dry battery
38970 - Timid 29/14/30/28/29/31
65705 - Calm 31/9/31/27/31/16
67878 - Modest 30/13/30/27/27/31
132519 - Bold 31/27/31/27/26/29
172367 - Timid 31/18/28/31/25/31
181346 - Quiet 31/30/27/27/25/1
194483 - Adamant 31/29/28/31/29/31
212801 - Bold 30/3/29/30/31/12
264457 - Impish 31/31/31/26/30/4
280898 - Quiet 28/27/29/27/31/1
303092 - Brave 31/30/31/24/30/0
318944 - Jolly 31/31/25/0/30/31
340636 - Adamant 30/30/26/30/27/31
436151 - Quiet 31/5/25/30/25/1
454718 - Impish 31/31/30/4/30/28

TID / SID Abuse for Shiny Non-Bred Pokemon

ID abuse in Ruby and Sapphire is even easier than in the 4th and 5th generations. In fact, it is just as easy as capturing Pokemon. Why is this so? Because it is identical to Method 1 generation! The TID and SID are generated on one frame, from the time the game turns on to roughly after the name selection screen. Thus, at that time, the IDs generated are:

TID: [PID low ]
SID: [PID high]

If you haven't already seen it, this makes hitting a particular shiny frame extremely simple. You may remember from <a href="/forums/member.php?u=2412">X-Act's</a> guide in PID generation that a Pokemon is shiny if, by stacking the following values,

[PID high (upper 13 bits)]
[PID low (upper 13 bits)]
[TID (upper 13 bits)]
[SID (upper 13 bits)]

each column contains an even number of 0's (and, by extension 1's). In more technical terms:
[PIDH] ⊕ [PIDL] ⊕ [TID] ⊕ [SID] ≤ 7 (111). In this case, the values for [PID high] and [PID low] are equivalent to [TID] and [SID], respectively. This means that you are guaranteed to find a shiny Pokemon on the exact frame on which your ID values were generated. Therefore, if you find a desirable IV spread in the lists above, just aim for that frame when you start your adventure. When you encounter that Pokemon in-game, it is guaranteed to be shiny. However, due to different methods of IV generation, an optimal spread generated by Method 1 will not match the spread of a Method H wild Pokemon.

Now, to the exciting part! Here you will finally learn how to obtain your desired ID numbers. The SID\TID are generated shortly after pressing A after the message "Well, I'll be expecting you later. Come see me in my Pokemon Lab." appears and your character sprite turns white and fades away. The exact moment is shown here:



You will have to calibrate based on what frame you actually hit in order to get the exact time at which to press A. Calibration is extremely simple as shown by the following steps:

  1. First, press A at the exact frame of your desired SID\TID.
  2. When you gain control of your character for the first time, press Start and go to your character's name in the menu to check the Trainer ID.
  3. Convert the Trainer ID to hexadecimal using Windows's calculator application (in Programmer mode), Mac's calculator application, or any decimal to hex calculator online and you should receive a 4 digit hexadecimal representation of your Trainer ID. If it is less than 4 digits, insert enough 0's behind the given number to make 4 digits. For example, if your hex number is A7C, simply insert a 0 before A, making the representation 0A7C.
  4. Go to the main screen in RNG Reporter, choose Method 1, and use a seed of 5A0. Set the Starting Frame to Target Frame - 300, and set Max Results to 600. This will give you a reasonable window of results should you hit an earlier or later frame.
  5. Manually search the PID column for a number whose lowest 4 digits equal the hex number you calculated above. For example, if your calculated hex number was 0A7C, search for a PID of XXXX0A7C, where the left-most digits XXXX can be anything.
  6. Note what frame this ID lands on and subtract from it the desired frame number. This number represents the delay between the time when you will press A and the actual ID generation.
  7. Now, subtract this value from your desired frame number. This is your new delay, and represents the exact moment at which you will press A.
  8. After a few tries, you should end up with your desired ID numbers. From now on, when you encounter a Pokemon on this frame, it will be shiny and will have the desired nature and IVs. You can verify this by RNGing your starter on this frame.

Arbitrary ID Numbers
Say you don't care about receiving a specific shiny Pokemon but would rather have a cool Trainer ID? This requires a little more work, but it's definitely possible. First, convert your desired TID or SID to hexadecimal. In this case, we will use a Trainer ID of 311, representing the best band in the world, 311. This number in hex representation is 137; pad it with one zero as described in the above calibration process, and we receive 0137. Right click the list of seeds and choose Output to Text and save it to something easy to remember like rsids.csv. Next, open it in Microsoft Excel or another program that views CSV files. It may ask you a few questions about delimiting. This is to make sure that the values in the CSV file are in the correct format to arrange the data in cells correctly. Click Next, then Finish, and the table will be generated for you. Click at the top of the PID column (it should be column E), hit Ctrl+F, and type in 0137, then Find All. As we can see, frame 12787 contains the PID 540A70137, whose PID low matches 0137, our desired ID.

Credits
Hozu and GoldenBanana provided lists of viable spreads and monster delay frames for each legendary. OmegaDonut, Bond697, Kaphotics, chiizu, ToastPlusOne, and countless other researchers provided the technical aspects that made this guide possible.
 
I don't undestand anything of TID / SID Abuse for Shiny Non-Bred Pokemon i speak spanish this is very dificult to me. I use rng in emerald but this defeat me xD
 

Nix_Hex

Uangaana kasuttortunga!
is a Site Content Manager Alumnusis a Forum Moderator Alumnusis a Researcher Alumnusis a Top Contributor Alumnusis a Battle Simulator Moderator Alumnus
Unfortunately we're English only until the Spanish project is finished (this article will then have to be translated and i imagine it will be incredibly low priority).

Also, I'll probably be finishing this in 2 weeks once finals are out of the way.
 

Pocket

be the upgraded version of me
is a Site Content Manager Alumnusis a Team Rater Alumnusis a Community Leader Alumnusis a Community Contributor Alumnusis a Tiering Contributor Alumnusis a Top Contributor Alumnus
ohh shit, I always wished there was an RNG guide for Ruby / Sapphire. The internal battery for my cartridge is also dead, so this will be good :)
 
rng ruby sapphire dry battery

Hi just updating my rng sapphire progress with dry battery. I got to route 117 and day centre, transferred some decent parents from emerald rng to try breeding using rng reporter and seed 5a0 in sapphire. However forgot how tiresome it is breeding in ruby/sapphire with no everstone and no way of using flame-body or magma armor abilities and i'm not sure if its just me but when egg hatches baby iv's can not be found using splits spreads or alternate inheritance on rng reporter with seed 5a0 also when soft resetting from saved game in front of egg man the natures are constantly changing with each egg hatch? rather than the nature staying constant with each soft reset in emerald. But i'll keep going and see if its a glitch or me going mad
 

Nix_Hex

Uangaana kasuttortunga!
is a Site Content Manager Alumnusis a Forum Moderator Alumnusis a Researcher Alumnusis a Top Contributor Alumnusis a Battle Simulator Moderator Alumnus
Hi just updating my rng sapphire progress with dry battery. I got to route 117 and day centre, transferred some decent parents from emerald rng to try breeding using rng reporter and seed 5a0 in sapphire. However forgot how tiresome it is breeding in ruby/sapphire with no everstone and no way of using flame-body or magma armor abilities and i'm not sure if its just me but when egg hatches baby iv's can not be found using splits spreads or alternate inheritance on rng reporter with seed 5a0 also when soft resetting from saved game in front of egg man the natures are constantly changing with each egg hatch? rather than the nature staying constant with each soft reset in emerald. But i'll keep going and see if its a glitch or me going mad
Unfortunately I'm going to leave out breeding when this article is first published. It will be added in when I test breeding myself, unless someone more knowledgeable Kaph or Bond or OD feel like writing it!

In more interesting news, I completed a rough version of ID abuse for shiny Pokemon. Anyone who has RNGed in Emerald and/or has used Eontimer should be able to understand it pretty easily. Also, I'm adding a section on how to obtain a TID or SID that does not necessarily yield a shiny spread. Like, if you want something cool like 10101 or... 00311 or whatever. I'm pretty sure that this, along with actually RNG abusing a Pokemon cover all the bases that need covering in this article. Note that this is still in (extremely) rough draft form so if this seems pretty shitty, trust me that it won't be once it's all written up!
 
I don't know whether you consider it noteworthy or not, but I'm pretty sure Ruby and Sapphire manipulation is currently the only way to get a Groudon or Kyogre with a Speed IV of 0 or 1 below level 50. In a level 50 metagame (such as VGC 2010 I think it was) this gives you the option of using level 49 Kyogre or something to always gain control of the weather against Groudon not holding Iron Ball (and vice versa). Obviously this is a novelty option (some might call it a gimmick; I don't know), but it is one of the advantages offered by Ruby and Sapphire compared to RNG manipulation in Emerald/HeartGold/SoulSilver.

Again, it's your call if you think this is worth adding; I just thought I would bring it up.
 

Nix_Hex

Uangaana kasuttortunga!
is a Site Content Manager Alumnusis a Forum Moderator Alumnusis a Researcher Alumnusis a Top Contributor Alumnusis a Battle Simulator Moderator Alumnus
If it's a reason for me to put up the guide, I'm using it. Please, if anyone else has any more suggestions, bring them up. Thank you for your ever helpful advice Arseus.
 

Nix_Hex

Uangaana kasuttortunga!
is a Site Content Manager Alumnusis a Forum Moderator Alumnusis a Researcher Alumnusis a Top Contributor Alumnusis a Battle Simulator Moderator Alumnus
It's easiest to just calibrate by trial and error and go by the number that you got. That's pretty much the case with all RNG abuse. The number will stay as 431 in this article because that was the time difference calculated from the time of encounter until the time the seed was chosen.
 
They undergo the same selection process as FireRed and LeafGreen, where you must depend on finding common seeds and searching for desirable spreads that arise from those seeds.
Not correct, actually; if you can imagine it, it's even worse than FRLG in some ways.

More importantly, though, the list of starting frames is rather confusing. There are two lists, some of the frames seem to be for Emerald, and if I recall correctly some of them were not accurate when I tested them.

You may also want to add that the ID you hit can be on any shiny frame for the spread you want; for instance, if you want frame 194483 shiny, you can find what ID makes it so, plug it in, and find that frame 7835 works fine (only for the ID abuse.)

As a final little thing, you may want to add a list of what you should RNG in these games.
 

Stellar

of the Distant Past
is a Site Content Manager Alumnusis a Battle Simulator Admin Alumnusis a Top Social Media Contributor Alumnusis a Community Contributor Alumnusis a Smogon Discord Contributor Alumnusis a Researcher Alumnusis a CAP Contributor Alumnusis a Top Contributor Alumnusis an Administrator Alumnusis a Past SPL Champion
Convert the Trainer ID to hexadecimal using Windows's calculator application or any decimal to hex calculator online and you should receive a 4 digit hexadecimal representation of your Trainer ID. If it is less than 4 digits, insert enough 0's behind the given number to make 4 digits. For example, if your hex number is A7C, simply insert a 0 behind A, making the representation 0A7C.
This was the only part of the guide I found confusing. You are adding the zeros before the hex number, not behind. Behind suggests A7C0.
 

Nix_Hex

Uangaana kasuttortunga!
is a Site Content Manager Alumnusis a Forum Moderator Alumnusis a Researcher Alumnusis a Top Contributor Alumnusis a Battle Simulator Moderator Alumnus
Not correct, actually; if you can imagine it, it's even worse than FRLG in some ways.

More importantly, though, the list of starting frames is rather confusing. There are two lists, some of the frames seem to be for Emerald, and if I recall correctly some of them were not accurate when I tested them.

You may also want to add that the ID you hit can be on any shiny frame for the spread you want; for instance, if you want frame 194483 shiny, you can find what ID makes it so, plug it in, and find that frame 7835 works fine (only for the ID abuse.)

As a final little thing, you may want to add a list of what you should RNG in these games.
The comparison to FRLG was simply to say "it is impossible," so I'll change the word "same" to "similar." Thanks for pointing that out. For your second point, you are not guaranteed to find an early, compatible TID/SID to match a huge frame. The example you gave is either from luck or from you actively seeking compatible seeds (I'd venture to guess the latter). It's a good point but I will only provide a short explanation, if at all. For your last point, I will add in the suggestions by OmegaDonut and Arseus, thanks for the reminder.

edit: This is finished, have at it GP checkers so you can get your ladybug.
 
RNG Abuse in Ruby/Sapphire

Introduction
Since the advent of RNG abuse, Pokemon Emerald has been seen as the easiest RNG to manipulate. The fact that it generates an initial seed of 0 at all times makes abuse as simple as finding a desired spread (either in RNG Reporter, emloop, or by looking at readily compiled tables;), calibrating your timer;, and carefully hitting the seed you are seeking. However, as we know from life, the easy way is not always the best way. There are several spreads in Emerald that are obviously sub-par. In come Ruby and Sapphire to the rescue!

On their own, Ruby and Sapphire are difficult to abuse. They undergo selection process similar to that of FireRed and LeafGreen, where you must depend on finding common seeds and searching for desirable spreads that arise from those seeds. Of course, this opens up your options, but it is extremely difficult and therefore is out of the scope of this article. Instead, this article will focus on abusing a trait in Ruby / Sapphire that makes abuse just as easy as in Emerald: they too can hit a constant seed! There is one catch, however.

You may have to dismantle your cartridge.

In order to generate a constant seed, the Ruby and Sapphire cartridges must have a non-functioning internal battery. This can be achieved in two ways. First, your internal battery may, over time, dry up. Due to the game being out for nearly a decade, this is more common than it sounds, but it takes place after many hours of game play. If you don't feel like waiting for this to happen, you will have to resort to dismantling your cartridge and physically removing the battery. If you are too impatient to wait and you have moral qualms about tampering with your game, you may as well stop here.

Once your battery has been incapacitated in whatever manner you saw fit, it now has a permanent starting seed of 5A0. This is what sets Ruby and Sapphire apart from Emerald. With a different starting seed, we can hit completely different spreads than on Emerald. These spreads happen to be much better at lower frame counts than those in Emerald, hence they are more easily obtainable on a cartridge.

One final question that begs for an answer is why would you bother RNGing in Ruby / Sapphire when I can get flawless legendaries in DPP and HeartGold / SoulSilver? One example is the ability to capture Kyogre and Groudon at a lower level than 50, allowing them to be used at level 49 to gain control of the weather in the now defunct VGC 2010 metagame. Although this is such a tiny niche, it is still possible to play matches from this sort of metagame during a throwback tournament. More importantly, however, is that Registeel only learns Seismic Toss in Emerald and XD, and cannot learn it from any 4th Generation tutors. Therefore, the knowledge presented here is advantageous for obtaining a Seismic Toss Registeel with excellent stats.

Capturing Perfect Pokemon

Here is a list of obtainable Pokemon with amazing IV spreads in Ruby and Sapphire, provided graciously by user Hozu.

Initial (Monster) Frames

Frames to generate from pressing A:
ID/SID - 75 frames
Kyogre (Sapphire) - 654 frames
Groudon (Ruby) - 654 frames
Rayquaza - 2 frames
Registeel, Regirock, Regice: 56 frames
Beldum - 167 frames

Spreads

Method 1 R/S dry battery
38970 - Timid 29/14/30/28/29/31
65705 - Calm 31/9/31/27/31/16
67878 - Modest 30/13/30/27/27/31
132519 - Bold 31/27/31/27/26/29
172367 - Timid 31/18/28/31/25/31
181346 - Quiet 31/30/27/27/25/1
194483 - Adamant 31/29/28/31/29/31
212801 - Bold 30/3/29/30/31/12
264457 - Impish 31/31/31/26/30/4
280898 - Quiet 28/27/29/27/31/1
303092 - Brave 31/30/31/24/30/0
318944 - Jolly 31/31/25/0/30/31
340636 - Adamant 30/30/26/30/27/31
436151 - Quiet 31/5/25/30/25/1
454718 - Impish 31/31/30/4/30/28

TID / SID Abuse for Shiny Non-Bred Pokemon

ID abuse in Ruby and Sapphire even easier than in the 4th and 5th generations. In fact, it is just as easy as capturing Pokemon. Why is this so? Because it is identical to Method 1 generation! The TID and SID are generated on one frame, from the time to game turns on to roughly after the name selection screen. Thus, at that time, the IDs generated are:

TID: [PID low]
SID: [PID high]

If you haven't already seen it, this makes hitting a particular shiny frame extremely simple. You may remember from X-act's guide in PID generation that a Pokemon is shiny if, by stacking the following values,

[PID high (upper 13 bits)]
[PID low (upper 13 bits)]
[TID (upper 13 bits)]
[SID (upper 13 bits)]

each column contains an even number of 0's (and, by extension 1's). In more technical terms:
[PIDH] ⊕ [PIDL] ⊕ [TID] ⊕ [SID] ≤ 7 (111). In this case, the values for [PID high] and [PID low] are equivalent to [TID] and [SID], respectively. This means that you are guaranteed to find a shiny Pokemon on the exact frame on which your ID values were generated. Therefore, if you find a desirable IV spread in the lists above, just aim for that frame when you start your adventure. When you encounter that Pokemon in-game, it is guaranteed to be shiny. However, due to different methods of IV generation, an optimal spread generated by Method 1 will not match the spread of a Method H wild Pokemon.

Now, to the exciting part! Here you will finally learn how to obtain your desired ID numbers. The SID\TID are generated shortly after pressing A after the message "Well, I'll be expecting you later. Come see me in my Pokemon Lab." appears and your character sprite turns white and fades away. The exact moment is shown here:



You will have to calibrate based on what frame you actually hit in order to get the exact time at which to press A. Calibration is extremely simple as shown by the following steps:


  1. First, press A at the exact frame of your desired SID\TID.
  2. When you gain control of your character for the first time, press sStart and go to your character's name in the menu to check the Trainer ID.
  3. Convert the Trainer ID to hexadecimal using Windows's calculator application (in Programmer mode), Mac's calculator application, or any decimal to hex calculator online and you should receive a 4 digit hexadecimal representation of your Trainer ID. If it is less than 4 digits, insert enough 0's behind the given number to make 4 digits. For example, if your hex number is A7C, simply insert a 0 before A, making the representation 0A7C.
  4. Go to the main screen in RNG Reporter, choose Method 1, and use a seed of 5A0. Set the Starting Frame to Target Frame - 300, and set Max Results to 600. This will give you a reasonable window of results should you hit an earlier or later frame.
  5. Manually search the PID column for a number whose lowest 4 digits equal the hex number you calculated above. For example, if your calculated hex number was 0A7C, search for a PID of XXXX0A7C, where The left-most digits XXXX can be anything.
  6. Note what frame this the ID lands on and subtract from it the desired frame number. This number represents the delay between the time when you will press A and the actual ID generation.
  7. Now, subtract this value from your desired frame number. This is your new delay, and represents the exact moment at which you will press A.
  8. After a few tries, you should end up with your desired ID numbers. From now on, when you encounter a Pokemon on this frame, it will be shiny and will have the desired nature and IVs. You can verify this by RNGing your starter on this frame.

Arbitrary ID Numbers
Say you don't care about receiving a specific shiny Pokemon but would rather have a cool Trainer ID? This requires a little more work, but it's definitely possible. First, convert your desired TID or SID to hexadecimal. In this case, we will use a Trainer ID of 311, representing the bestmy favorite band in the world, 311. This number in hex representation is 137; pad it with one zero as described in the above calibration process, and we receive 0137. Right click the list of seeds and choose Output to Text and save it to something easy to remember like rsids.csv. Next, open it in Microsoft Excel or another program that views CSV files. It may ask you a few questions about delimiting. This is to make sure that the values in the CSV file are in the correct format to arrange the data in cells correctly. Click Next, then Finish, and the table will be generated for you. Click at the top of the PID column (it should be column E), hit Ctrl+F, and type in 0137, then Find All. As we can see, frame 12787 contains the PID 540A70137, whose PID low matches 0137, our desired ID.

Credits
Hozu, for providing lists of viable spreads and monster delay frames for each legendary. OmegaDonut, Bond697, Kaphotics, chiizu, ToastPlusOne, and countless other researchers for providing the technical aspects that made this guide possible.



RNG Abuse in Ruby/Sapphire

Introduction
Since the advent of RNG abuse, Pokemon Emerald has been seen as the easiest RNG to manipulate. The fact that it generates an initial seed of 0 at all times makes abuse as simple as finding a desired spread (either in RNG Reporter, emloop, or by looking at readily compiled tables), calibrating your timer, and carefully hitting the seed you are seeking. However, as we know from life, the easy way is not always the best way. There are several spreads in Emerald that are obviously sub-par. In come Ruby and Sapphire to the rescue!

On their own, Ruby and Sapphire are difficult to abuse. They undergo selection process similar to that of FireRed and LeafGreen, where you must depend on finding common seeds and searching for desirable spreads that arise from those seeds. Of course, this opens up your options, but it is extremely difficult and therefore is out of the scope of this article. Instead, this article will focus on abusing a trait in Ruby / Sapphire that makes abuse just as easy as in Emerald: they too can hit a constant seed! There is one catch, however.

You may have to dismantle your cartridge.

In order to generate a constant seed, the Ruby and Sapphire cartridges must have a non-functioning internal battery. This can be achieved in two ways. First, your internal battery may, over time, dry up. Due to the game being out for nearly a decade, this is more common than it sounds, but it takes place after many hours of game play. If you don't feel like waiting for this to happen, you will have to resort to dismantling your cartridge and physically removing the battery. If you are too impatient to wait and you have moral qualms about tampering with your game, you may as well stop here.

Once your battery has been incapacitated in whatever manner you saw fit, it now has a permanent starting seed of 5A0. This is what sets Ruby and Sapphire apart from Emerald. With a different starting seed, we can hit completely different spreads than on Emerald. These spreads happen to be much better at lower frame counts than those in Emerald, hence they are more easily obtainable on a cartridge.

One final question that begs for an answer is why would you bother RNGing in Ruby / Sapphire when I can get flawless legendaries in DPP and HeartGold / SoulSilver? One example is the ability to capture Kyogre and Groudon at a lower level than 50, allowing them to be used at level 49 to gain control of the weather in the now defunct VGC 2010 metagame. Although this is such a tiny niche, it is still possible to play matches from this sort of metagame during a throwback tournament. More importantly, however, is that Registeel only learns Seismic Toss in Emerald and XD, and cannot learn it from any 4th Generation tutors. Therefore, the knowledge presented here is advantageous for obtaining a Seismic Toss Registeel with excellent stats.

Capturing Perfect Pokemon

Here is a list of obtainable Pokemon with amazing IV spreads in Ruby and Sapphire, provided graciously by user Hozu.

Initial (Monster) Frames

Frames to generate from pressing A:
ID/SID - 75 frames
Kyogre (Sapphire) - 654 frames
Groudon (Ruby) - 654 frames
Rayquaza - 2 frames
Registeel, Regirock, Regice: 56 frames
Beldum - 167 frames

Spreads

Method 1 R/S dry battery
38970 - Timid 29/14/30/28/29/31
65705 - Calm 31/9/31/27/31/16
67878 - Modest 30/13/30/27/27/31
132519 - Bold 31/27/31/27/26/29
172367 - Timid 31/18/28/31/25/31
181346 - Quiet 31/30/27/27/25/1
194483 - Adamant 31/29/28/31/29/31
212801 - Bold 30/3/29/30/31/12
264457 - Impish 31/31/31/26/30/4
280898 - Quiet 28/27/29/27/31/1
303092 - Brave 31/30/31/24/30/0
318944 - Jolly 31/31/25/0/30/31
340636 - Adamant 30/30/26/30/27/31
436151 - Quiet 31/5/25/30/25/1
454718 - Impish 31/31/30/4/30/28

TID / SID Abuse for Shiny Non-Bred Pokemon

ID abuse in Ruby and Sapphire even easier than in the 4th and 5th generations. In fact, it is just as easy as capturing Pokemon. Why is this so? Because it is identical to Method 1 generation! The TID and SID are generated on one frame, from the time to game turns on to roughly after the name selection screen. Thus, at that time, the IDs generated are:

TID: [PID low]
SID: [PID high]

If you haven't already seen it, this makes hitting a particular shiny frame extremely simple. You may remember from X-act's guide in PID generation that a Pokemon is shiny if, by stacking the following values,

[PID high (upper 13 bits)]
[PID low (upper 13 bits)]
[TID (upper 13 bits)]
[SID (upper 13 bits)]

each column contains an even number of 0's (and, by extension 1's). In more technical terms:
[PIDH] ⊕ [PIDL] ⊕ [TID] ⊕ [SID] ≤ 7 (111). In this case, the values for [PID high] and [PID low] are equivalent to [TID] and [SID], respectively. This means that you are guaranteed to find a shiny Pokemon on the exact frame on which your ID values were generated. Therefore, if you find a desirable IV spread in the lists above, just aim for that frame when you start your adventure. When you encounter that Pokemon in-game, it is guaranteed to be shiny. However, due to different methods of IV generation, an optimal spread generated by Method 1 will not match the spread of a Method H wild Pokemon.

Now, to the exciting part! Here you will finally learn how to obtain your desired ID numbers. The SID\TID are generated shortly after pressing A after the message "Well, I'll be expecting you later. Come see me in my Pokemon Lab." appears and your character sprite turns white and fades away. The exact moment is shown here:



You will have to calibrate based on what frame you actually hit in order to get the exact time at which to press A. Calibration is extremely simple as shown by the following steps:


  1. First, press A at the exact frame of your desired SID\TID.
  2. When you gain control of your character for the first time, press Start and go to your character's name in the menu to check the Trainer ID.
  3. Convert the Trainer ID to hexadecimal using Windows's calculator application (in Programmer mode), Mac's calculator application, or any decimal to hex calculator online and you should receive a 4 digit hexadecimal representation of your Trainer ID. If it is less than 4 digits, insert enough 0's behind the given number to make 4 digits. For example, if your hex number is A7C, simply insert a 0 before A, making the representation 0A7C.
  4. Go to the main screen in RNG Reporter, choose Method 1, and use a seed of 5A0. Set the Starting Frame to Target Frame - 300, and set Max Results to 600. This will give you a reasonable window of results should you hit an earlier or later frame.
  5. Manually search the PID column for a number whose lowest 4 digits equal the hex number you calculated above. For example, if your calculated hex number was 0A7C, search for a PID of XXXX0A7C, where The left-most digits XXXX can be anything.
  6. Note what frame this the ID lands on and subtract from it the desired frame number. This number represents the delay between the time when you will press A and the actual ID generation.
  7. Now, subtract this value from your desired frame number. This is your new delay, and represents the exact moment at which you will press A.
  8. After a few tries, you should end up with your desired ID numbers. From now on, when you encounter a Pokemon on this frame, it will be shiny and will have the desired nature and IVs. You can verify this by RNGing your starter on this frame.


Arbitrary ID Numbers
Say you don't care about receiving a specific shiny Pokemon but would rather have a cool Trainer ID? This requires a little more work, but it's definitely possible. First, convert your desired TID or SID to hexadecimal. In this case, we will use a Trainer ID of 311, representing my favorite band in the world, 311. This number in hex representation is 137; pad it with one zero as described in the above calibration process, and we receive 0137. Right click the list of seeds and choose Output to Text and save it to something easy to remember like rsids.csv. Next, open it in Microsoft Excel or another program that views CSV files. It may ask you a few questions about delimiting. This is to make sure that the values in the CSV file are in the correct format to arrange the data in cells correctly. Click Next, then Finish, and the table will be generated for you. Click at the top of the PID column (it should be column E), hit Ctrl+F, and type in 0137, then Find All. As we can see, frame 12787 contains the PID 540A70137, whose PID low matches 0137, our desired ID.

Credits
Hozu, for providing lists of viable spreads and monster delay frames for each legendary. OmegaDonut, Bond697, Kaphotics, chiizu, ToastPlusOne, and countless other researchers for providing the technical aspects that made this guide possible.


/me approve 1/2

stone temple pilots and soundgarden >>>>>>>>> 311 J/S man
 

Oglemi

Borf
is a Top Contributoris a Tournament Director Alumnusis a Site Content Manager Alumnusis a Community Contributor Alumnusis a Researcher Alumnusis a Tiering Contributor Alumnusis a Top Smogon Media Contributor Alumnusis an Administrator Alumnusis a Top Dedicated Tournament Host Alumnus
add
remove
comments

RNG Abuse in Ruby/Sapphire

Introduction
Since the advent of RNG abuse, Pokemon Emerald has been seen as the easiest RNG to manipulate. The fact that it generates an initial seed of 0 at all times makes abuse as simple as finding a desired spread (either in RNG Reporter, emloop, or by looking at readily compiled tables), calibrating your timer; and carefully hitting the seed you are seeking. However, as we know from life, the easy way is not always the best way. There are several spreads in Emerald that are obviously sub-par. In come Ruby and Sapphire to the rescue!

On their own, Ruby and Sapphire are difficult to abuse. They undergo selection processes similar to that of FireRed and LeafGreen, where you must depend on finding common seeds and searching for desirable spreads that arise from those seeds. Of course, this opens up your options, but it is extremely difficult and therefore is out of the scope of this article. Instead, this article will focus on abusing a trait in Ruby / Sapphire that makes abuse just as easy as in Emerald: they too can hit a constant seed! There is one catch, however.

You may have to dismantle your cartridge.

In order to generate a constant seed, the Ruby and Sapphire cartridges must have a non-functioning internal battery. This can be achieved in two ways. First, your internal battery may, over time, dry up. Due to the game being out for nearly a decade, this is more common than it sounds, but it takes place after many hours of game play. If you don't feel like waiting for this to happen, you will have to resort to dismantling your cartridge and physically removing the battery. If you are too impatient to wait and you have moral qualms about tampering with your game, you may as well stop here.

Once your battery has been incapacitated in whatever manner you saw fit, it now has a permanent starting seed of 5A0. This is what sets Ruby and Sapphire apart from Emerald. With a different starting seed, we can hit completely different spreads than on Emerald. These spreads happen to be much better at lower frame counts than those in Emerald, hence they are more easily obtainable on a cartridge.

One final question that begs for an answer is why would you bother RNGing in Ruby / Sapphire when I can get flawless legendaries in DPP and HeartGold / SoulSilver? One example is the ability to capture Kyogre and Groudon at a lower level than 50, allowing them to be used at level 49 to gain control of the weather in the now defunct VGC 2010 metagame. Although this is such a tiny niche, it is still possible to play matches from this sort of metagame during a throwback tournament. More importantly, however, is that Registeel only learns Seismic Toss in Emerald and XD, and cannot learn it from any 4th Generation tutors. Therefore, the knowledge presented here is advantageous for obtaining a Seismic Toss Registeel with excellent stats.

Capturing Perfect Pokemon

Here is a list of obtainable Pokemon with amazing IV spreads in Ruby and Sapphire, provided graciously by user <a href="/forums/member.php?u=76392">Hozu</a>.

Initial (Monster) Frames

Frames to generate from pressing A:
ID/SID - 75 frames
Kyogre (Sapphire) - 654 frames
Groudon (Ruby) - 654 frames
Rayquaza - 2 frames
Registeel, Regirock, Regice: 56 frames
Beldum - 167 frames

Spreads

Method 1 R/S dry battery
38970 - Timid 29/14/30/28/29/31
65705 - Calm 31/9/31/27/31/16
67878 - Modest 30/13/30/27/27/31
132519 - Bold 31/27/31/27/26/29
172367 - Timid 31/18/28/31/25/31
181346 - Quiet 31/30/27/27/25/1
194483 - Adamant 31/29/28/31/29/31
212801 - Bold 30/3/29/30/31/12
264457 - Impish 31/31/31/26/30/4
280898 - Quiet 28/27/29/27/31/1
303092 - Brave 31/30/31/24/30/0
318944 - Jolly 31/31/25/0/30/31
340636 - Adamant 30/30/26/30/27/31
436151 - Quiet 31/5/25/30/25/1
454718 - Impish 31/31/30/4/30/28

TID / SID Abuse for Shiny Non-Bred Pokemon

ID abuse in Ruby and Sapphire is even easier than in the 4th and 5th generations. In fact, it is just as easy as capturing Pokemon. Why is this so? Because it is identical to Method 1 generation! The TID and SID are generated on one frame, from the time the game turns on to roughly after the name selection screen. Thus, at that time, the IDs generated are:

TID: [PID low ]
SID: [PID high]

If you haven't already seen it, this makes hitting a particular shiny frame extremely simple. You may remember from <a href="/forums/member.php?u=2412">X-Act's</a> guide in PID generation that a Pokemon is shiny if, by stacking the following values,

[PID high (upper 13 bits)]
[PID low (upper 13 bits)]
[TID (upper 13 bits)]
[SID (upper 13 bits)]

each column contains an even number of 0's (and, by extension 1's). In more technical terms:
[PIDH] ⊕ [PIDL] ⊕ [TID] ⊕ [SID] ≤ 7 (111). In this case, the values for [PID high] and [PID low] are equivalent to [TID] and [SID], respectively. This means that you are guaranteed to find a shiny Pokemon on the exact frame on which your ID values were generated. Therefore, if you find a desirable IV spread in the lists above, just aim for that frame when you start your adventure. When you encounter that Pokemon in-game, it is guaranteed to be shiny. However, due to different methods of IV generation, an optimal spread generated by Method 1 will not match the spread of a Method H wild Pokemon.

Now, to the exciting part! Here you will finally learn how to obtain your desired ID numbers. The SID\TID are generated shortly after pressing A after the message "Well, I'll be expecting you later. Come see me in my Pokemon Lab." appears and your character sprite turns white and fades away. The exact moment is shown here:



You will have to calibrate based on what frame you actually hit in order to get the exact time at which to press A. Calibration is extremely simple as shown by the following steps:

  1. First, press A at the exact frame of your desired SID\TID.
  2. When you gain control of your character for the first time, press Start and go to your character's name in the menu to check the Trainer ID.
  3. Convert the Trainer ID to hexadecimal using Windows's calculator application (in Programmer mode), Mac's calculator application, or any decimal to hex calculator online and you should receive a 4 digit hexadecimal representation of your Trainer ID. If it is less than 4 digits, insert enough 0's behind the given number to make 4 digits. For example, if your hex number is A7C, simply insert a 0 before A, making the representation 0A7C.
  4. Go to the main screen in RNG Reporter, choose Method 1, and use a seed of 5A0. Set the Starting Frame to Target Frame - 300, and set Max Results to 600. This will give you a reasonable window of results should you hit an earlier or later frame.
  5. Manually search the PID column for a number whose lowest 4 digits equal the hex number you calculated above. For example, if your calculated hex number was 0A7C, search for a PID of XXXX0A7C, where the left-most digits XXXX can be anything.
  6. Note what frame this the ID lands on and subtract from it the desired frame number. This number represents the delay between the time when you will press A and the actual ID generation.
  7. Now, subtract this value from your desired frame number. This is your new delay, and represents the exact moment at which you will press A.
  8. After a few tries, you should end up with your desired ID numbers. From now on, when you encounter a Pokemon on this frame, it will be shiny and will have the desired nature and IVs. You can verify this by RNGing your starter on this frame.

Arbitrary ID Numbers
Say you don't care about receiving a specific shiny Pokemon but would rather have a cool Trainer ID? This requires a little more work, but it's definitely possible. First, convert your desired TID or SID to hexadecimal. In this case, we will use a Trainer ID of 311, representing the best band in the world, 311. This number in hex representation is 137; pad it with one zero as described in the above calibration process, and we receive 0137. Right click the list of seeds and choose Output to Text and save it to something easy to remember like rsids.csv. Next, open it in Microsoft Excel or another program that views CSV files. It may ask you a few questions about delimiting. This is to make sure that the values in the CSV file are in the correct format to arrange the data in cells correctly. Click Next, then Finish, and the table will be generated for you. Click at the top of the PID column (it should be column E), hit Ctrl+F, and type in 0137, then Find All. As we can see, frame 12787 contains the PID 540A70137, whose PID low matches 0137, our desired ID.

Credits
Hozu, for providing lists of viable spreads and monster delay frames for each legendary. OmegaDonut, Bond697, Kaphotics, chiizu, ToastPlusOne, and countless other researchers for providing the technical aspects that made this guide possible.




GP Approved 2/2
 

Nexus

Forever the Recusant
is a Site Content Manager Alumnusis a Senior Staff Member Alumnusis a Contributor Alumnus
HTML and uploaded this. It's been a while since I've done this -__-

HTML:
[title]
Ruby and Sapphire RNG Manipulation of Method 1 Pokemon and TID/SID Guide
[head]
<meta name="description" content="An in-depth guide to the RNG manipulation of Method 1 Pokemon and TID/SID in the Pokemon Ruby and Sapphire games." />
[page]
<div class="author">Written by <a href="/forums/member.php?u=40064">NixHex</a>.</div>

<ol class=toc">
<li><a href="#intro">Introduction</a></li>
<li><a href="#capture">Capturing Perfect pokemon</a>
<ul>
<li><a href="#initial">Initial (Monster) Frames</a></li>
<li><a href="#spreads">Method 1 Spreads (dry battery)</a></li>
</ul>
</li>
<li><a href="#idsid">TID / SID Abuse for Shiny Non-Bred Pokemon</a></li>
<li><a href="#arbitrary">Arbitrary ID Numbers</a></li>
<li><a href="#credits">Credits</a></li>
</ol>

<h2><a name="intro">Introduction</a></h2>

<p>Since the advent of RNG abuse, Pokemon Emerald has been seen as the easiest RNG to manipulate. The fact that it generates an initial seed of 0 at all times makes abuse as simple as finding a desired spread (either in RNG Reporter, emloop, or by looking at readily compiled tables), calibrating your timer; and carefully hitting the seed you are seeking. However, as we know from life, the easy way is not always the best way. There are several spreads in Emerald that are obviously sub-par. In come Ruby and Sapphire to the rescue!</p>

<p>On their own, Ruby and Sapphire are difficult to abuse. They undergo selection processes similar to that of FireRed and LeafGreen, where you must depend on finding common seeds and searching for desirable spreads that arise from those seeds. Of course, this opens up your options, but it is extremely difficult and therefore is out of the scope of this article. Instead, this article will focus on abusing a trait in Ruby / Sapphire that makes abuse just as easy as in Emerald: they too can hit a constant seed! There is one catch, however.</p>

<h2>You may have to dismantle your cartridge.</h2>

<p>In order to generate a constant seed, the Ruby and Sapphire cartridges must have a non-functioning internal battery. This can be achieved in two ways. First, your internal battery may, over time, dry up. Due to the game being out for nearly a decade, this is more common than it sounds, but it takes place after many hours of game play. If you don't feel like waiting for this to happen, you will have to resort to dismantling your cartridge and physically removing the battery. If you are too impatient to wait and you have moral qualms about tampering with your game, you may as well stop here.</p>

<p>Once your battery has been incapacitated in whatever manner you saw fit, it now has a permanent starting seed of 5A0. This is what sets Ruby and Sapphire apart from Emerald. With a different starting seed, we can hit completely different spreads than on Emerald. These spreads happen to be much better at lower frame counts than those in Emerald, hence they are more easily obtainable on a cartridge.</p>

<p>One final question that begs for an answer is why would you bother RNGing in Ruby / Sapphire when I can get flawless legendaries in DPP and HeartGold / SoulSilver? One example is the ability to capture Kyogre and Groudon at a lower level than 50, allowing them to be used at level 49 to gain control of the weather in the now defunct VGC 2010 metagame. Although this is such a tiny niche, it is still possible to play matches from this sort of metagame during a throwback tournament. More importantly, however, is that Registeel only learns Seismic Toss in Emerald and XD, and cannot learn it from any 4th Generation tutors. Therefore, the knowledge presented here is advantageous for obtaining a Seismic Toss Registeel with excellent stats.</p>

<h2><a name="capture">Capturing Perfect Pokemon</a></h2>

<p>Here is a list of obtainable Pokemon with amazing IV spreads in Ruby and Sapphire, provided graciously by user <a href="/forums/member.php?u=76392">Hozu</a>.</p>

<h3><a name="initial">Initial (Monster) Frames</a></h3>

<p>Frames to generate from pressing A:</p>

<ul>
<li>ID/SID - 75 frames</li>
<li>Kyogre (Sapphire) - 654 frames</li>
<li>Groudon (Ruby) - 654 frames</li>
<li>Rayquaza - 2 frames</li>
<li>Registeel, Regirock, and Regice - 56 frames</li>
<li>Beldum - 167 frames</li>
</ul>

<h3><a name="spreads">Method 1 Spreads (dry battery)</a></h3>

<table class="sortable">
<thead>
<tr>
<th>Frame</th>
<th>Nature</th>
<th>IVs (HP/Atk/Def/SpA/SpD/Spe)</th>
</tr>
</thead>
<tbody>
<tr>
<td>38970</td>
<td>Timid</td> 
<td>29/14/30/28/29/31</td>
</tr>
<tr class="a">
<td>65705</td> 
<td>Calm</td> 
<td>31/9/31/27/31/16</td>
</tr>
<tr>
<td>67878</td> 
<td>Modest</td> 
<td>30/13/30/27/27/31</td>
</tr>
<tr class="a">
<td>132519</td>
<td>Bold</td> 
<td>31/27/31/27/26/29</td>
</tr>
<tr>
<td>172367</td>
<td>Timid</td> 
<td>31/18/28/31/25/31</td>
</tr>
<tr class="a">
<td>181346</td>
<td>Quiet</td> 
<td>31/30/27/27/25/1</td>
</tr>
<tr>
<td>194483</td> 
<td>Adamant</td> 
<td>31/29/28/31/29/31</td>
</tr>
<tr class="a">
<td>212801</td> 
<td>Bold</td> 
<td>30/3/29/30/31/12</td>
</tr>
<tr>
<td>264457</td> 
<td>Impish</td> 
<td>31/31/31/26/30/4</td>
</tr>
<tr class="a">
<td>280898</td>
<td>Quiet</td> 
<td>28/27/29/27/31/1</td>
</tr>
<tr>
<td>303092</td>
<td>Brave</td> 
<td>31/30/31/24/30/0</td>
</tr>
<tr class="a">
<td>318944</td> 
<td>Jolly</td> 
<td>31/31/25/0/30/31</td>
</tr>
<tr>
<td>340636</td> 
<td>Adamant</td> 
<td>30/30/26/30/27/31</td>
</tr>
<tr class="a">
<td>436151</td> 
<td>Quiet</td> 
<td>31/5/25/30/25/1</td>
</tr>
<tr>
<td>454718</td> 
<td>Impish</td> 
<td>31/31/30/4/30/28</td>
</table>

<p>For the actual process of RNGing these Pokemon, follow the steps in the "preparation" and "Calibrating and Soft Resetting" sections of the <a href="/ingame/rng/emerald_rng_part2">Emerald RNG Manipulation of Method 1 Pokemon</a> guide written by <a href="/forums/member.php?u=5962">Arseus</a>.</p>

<h2><a name="idsid">TID / SID Abuse for Shiny Non-Bred Pokemon</a></h2>

<p>ID abuse in Ruby and Sapphire is even easier than in the 4th and 5th generations. In fact, it is just as easy as capturing Pokemon. Why is this so? Because it is identical to Method 1 generation! The TID and SID are generated on one frame, from the time the game turns on to roughly after the name selection screen. Thus, at that time, the IDs generated are:</p>

<p>TID: [PID low ]<br />
SID: [PID high]</p>

<p>If you haven't already seen it, this makes hitting a particular shiny frame extremely simple. You may remember from <a href="/forums/member.php?u=2412">X-Act's</a> guide in PID generation that a Pokemon is shiny if, by stacking the following values:</p>

<p>[PID high (upper 13 bits)]<br />
[PID low (upper 13 bits)]<br />
[TID (upper 13 bits)]<br />
[SID (upper 13 bits)]</p>

<p>Each column contains an even number of 0's (and, by extension 1's). In more technical terms:
[PIDH] &oplus; [PIDL] &oplus; [TID] &oplus; [SID] ≤ 7 (111). In this case, the values for [PID high] and [PID low] are equivalent to [TID] and [SID], respectively. This means that you are guaranteed to find a shiny Pokemon on the exact frame on which your ID values were generated. Therefore, if you find a desirable IV spread in the lists above, just aim for that frame when you start your adventure. When you encounter that Pokemon in-game, it is guaranteed to be shiny. However, due to different methods of IV generation, an optimal spread generated by Method 1 will not match the spread of a Method H wild Pokemon.</p>

<p>Now, to the exciting part! Here you will finally learn how to obtain your desired ID numbers. The SID\TID are generated shortly after pressing A after the message "Well, I'll be expecting you later. Come see me in my Pokemon Lab." appears and your character sprite turns white and fades away. The exact moment is shown here:</p>

<div style="text-align: center;"><img src="/media/upload/ingame/rng/gameentry.png" alt="" /></div>

<p>You will have to calibrate based on what frame you actually hit in order to get the exact time at which to press A. Calibration is extremely simple as shown by the following steps:</p>

<ol>
<li>First, press A at the exact frame of your desired SID\TID.</li>
<li>When you gain control of your character for the first time, press Start and go to your character's name in the menu to check the Trainer ID.</li>
<li>Convert the Trainer ID to hexadecimal using Windows's calculator application (in Programmer mode), Mac's calculator application, or any decimal to hex calculator online and you should receive a 4 digit hexadecimal representation of your Trainer ID. If it is less than 4 digits, insert enough 0's behind the given number to make 4 digits. For example, if your hex number is A7C, simply insert a 0 before A, making the representation 0A7C.</li>
<li>Go to the main screen in RNG Reporter, choose Method 1, and use a seed of 5A0. Set the Starting Frame to Target Frame - 300, and set Max Results to 600. This will give you a reasonable window of results should you hit an earlier or later frame.</li>
<li>Manually search the PID column for a number whose lowest 4 digits equal the hex number you calculated above. For example, if your calculated hex number was 0A7C, search for a PID of XXXX0A7C, where the left-most digits XXXX can be anything.</li>
<li>Note what frame this ID lands on and subtract from it the desired frame number. This number represents the delay between the time when you will press A and the actual ID generation.</li>
<li>Now, subtract this value from your desired frame number. This is your new delay, and represents the exact moment at which you will press A.</li>
<li>After a few tries, you should end up with your desired ID numbers. From now on, when you encounter a Pokemon on this frame, it will be shiny and will have the desired nature and IVs. You can verify this by RNGing your starter on this frame.</li>
</ol>

<h2><a name="arbitrary">Arbitrary ID Numbers</a></h2>

<p>Say you don't care about receiving a specific shiny Pokemon but would rather have a cool Trainer ID? This requires a little more work, but it's definitely possible. First, convert your desired TID or SID to hexadecimal. In this case, we will use a Trainer ID of 311, representing the best band in the world, 311. This number in hex representation is 137; pad it with one zero as described in the above calibration process, and we receive 0137. Right click the list of seeds and choose Output to Text and save it to something easy to remember like rsids.csv. Next, open it in Microsoft Excel or another program that views CSV files. It may ask you a few questions about delimiting. This is to make sure that the values in the CSV file are in the correct format to arrange the data in cells correctly. Click Next, then Finish, and the table will be generated for you. Click at the top of the PID column (it should be column E), hit Ctrl+F, and type in 0137, then Find All. As we can see, frame 12787 contains the PID 540A70137, whose PID low matches 0137, our desired ID.</p>

<h2><a name="credits">Credits</a></h2>

<p>Hozu and GoldenBanana provided lists of viable spreads and monster delay frames for each legendary. OmegaDonut, Bond697, Kaphotics, chiizu, ToastPlusOne, and countless other researchers provided the technical aspects that made this guide possible.</p>
 

Users Who Are Viewing This Thread (Users: 1, Guests: 0)

Top