Looking to the future without forgetting the past. A 4th Gen RNG guide thread.

DON'T POST, GORRAMIT! Or so help me God, I shall....
do something not so nice...

안녕하세요, こんにちは, 您好, Xin chào, hola, hello. Welcome to my Diamond, Pearl, Platinum, Heartgold, and Soulsilver RNG abuse guide.
Here I will be showing and teaching you the many ways that you can RNG abuse in your 4th gen games. I will be showing how to RNG abuse on a game cart, along with an emulator.

To start you off I am going to be going over terms that I will be using quite frequently throughout this guide.

The term PRNG is an acronym for Pseudo Random Number Generator. A Pseudo Random Number Generator is a special type of coding that is implemented within games so that it has the appearance of being random. As electronics can never truly be entirely random, this is the closest that it possibly can get to achieving true randomness.
It not being random means that we can predict what it is going to do, and effectively achieve perfect Pokemon from it with minimal effort.

The seed
A seed? I thought we were RNG'ing, not gardening!
A seed is the base code line that the math formula creates in order to determine shininess, IV’s, ability, gender, good stuff like that. Every RNG abuse you do will involve attempting to land on a seed. What do I mean by land on a seed? Meaning you want to get where the math formula creates the seed you want so that you can get the desired effects: shiny, IV’s, etc…
Every seed has a specific time that it appears, as the math formula is manipulated by time.

A delay? What are we delaying?
The delay for RNG is just a really fast counter that accelerates at about 60 times per second.
What the delay is to you is part of the seed. It tells you when you need to get into the game. Let’s just say the Delays are milliseconds, just a bit faster.

Time? That’s pretty straight forward, eh?
Well, sort of. What I mean by this is the time that your DS is set to. You know, when you hit that little DS looking button on the bottom middle part of the screen?
What this is meant for is that each seed happens only at certain times. As stated above, the math formula is geared to use time to do its calculations to find a correct seed. So you’re going to need to land on the exact time and frame in order to get the correct seed.
Are things starting to make sense?

Frames? As in pictures?
No, not exactly. Frames are basically certain points within our seed. They have many different features which we will get into later.
For example, say we have a camera and we are going to take pictures throughout 1 hour of the day. You aren’t going to take just 1 picture, you’re going to have several pictures of several points of that hour.
So, the frame is just various points in our seed, so that we have a wide variety of results we can achieve. Each frame has an IV spread, a PID, everything that will determine a Pokemon. A movement of a Non Playing Character (NPC). A move that a NPC has their Pokemon use, etc.

PID is also known as Pokemon IDentification number. PID. Every Pokemon that is created (as in caught, bred, traded, gifted, etc.) will all have a PID. PIDs can't be seen anywhere in game. The function of PIDs are to determine the nature of the Pokemon, the gender (if it can have one), ability (if multiple), shininess (if the ID/SID are correct, we'll talk about this later), and Unown letter Shape.

ID/SID? What does that stand for?
ID stands for identification, as it does in the real world. Just with Pokémon it’s that 5 number digit that appears when you catch or breed a Pokémon. SID stands for Secret ID [Oh yes, we have a ninja ID], it has a few purposes. Your ID/SID combo determines shininess [most important feature to the players].

Encounter Slots
Encounter slots determine what Pokemon you will see with each frame of your seed. Each frame will have its own encounter slot. These encounter slots will always designate one Pokemon that you will see on that specific frame. They can not be shifted, altered, or changed in any way. So it is very important to make sure if you want a Bold Chansey in Heartgold for instance, that your Bold spread has an encounter slot of 11 on one of it's frames. Unless if you're swarm abusing which you would need an encounter slot of 1 or 2.

Emulator abuse info
A lot of people have asked "how do I check my delay/seed on an emulator?!"
While in Desmume go to Tools -> View Memory. Switch mode from bytes to words. In the address, you input the initial seeding address.
It changes from game to game, and language to language. If you have PokeRNG helper, it will help you keep track of the English versions of DPPt, and HGSS. Only for English though, you will also be be heavily dependent on PokeRNG Helper. Which I will put the link in the resources part of this post.
I have some of the other languages addresses, which are:

Japanese Soul Silver Initial Seeding 021D0AEC
Japanese Platinum Initial Seeding 021BEF18

I will also list how to find the Initial seeding of any game on any language yourself in the last post.

Now for the list of things you should have before attempting 4th gen RNG:
An action replay. If you have access to one use it, as they are very helpful. But are not required.
Knowing your Trainer ID [Found in your trainer card]. Also your secret ID [can't be found anywhere in game, hence why we need and action replay or having access to Pokesav, or someone to check it for you.]
For HGSS you're going to pretty much have wanted to beaten the game before attempting at RNG'ing, as it's just easier. Along the way you're going to want to have shown Togepi [from the egg Mr. Pokemon gave you, or any Togepi I believe] to Elm, made it to Kanto, and have a Pokerus Infected or Cured Pokemon shown to the PokeCenter lady. I will explain why later.
For HGSS breeding, have Joey registered in your Pokegear.
For Platinum you're going to need to have the Coin Flipping app on your Poktéch [which is app #15, found in the little Hotel Resort area by Lake Valor, by the two guests that are on a honeymoon, I believe], you are also going to need the Journal.
For Emulator abuse, you are obviously going to need an emulator. I use Desmume as my emulator as it's the best out there, in my opinion. You are also going to need a copy of the game you are wanting to abuse on. Don't ask me where I got mine, or if I can give you the ones I have. I will have to decline.
For Emulator abuse you are also going to need PokeRNG Helper. The link will be listed further down.

Here are links to some of the things you are going to need to have in order to RNG efficiently.

RNG Reporter 7.4 Public Beta for 4th gen egg abuse.

Wichu's 4th Gen Wild/Method 1 Seed Finder (plus other tools that aren't entirely needed). PokeRNG is going to be used quite a bit for spreading finding.

OmegaDonut's list of High IV Spreads in 4th gen. It is in .xls format, so make sure that you're able to open it. We won't be using this so much for finding spreads, but seeing if the shiny spreads we get from PokeRNG have any shiny High IV partner spreads.

For a timer you can use:
Emloop which is browser based, you can use. Pikatimer, or ToastPlusOne's EonTimer/Zomgtimer.

Pokemon RNG Helper for those abusing emulator style.

To start you all off, I am going to do a run down of all the things you're going to need in order to effectively abuse your ID and SID.

  • RNG Reporter, and the ability to access Pandora's Box within RNG Repoter.
  • A new game, pretty obvious. It's better to not have a save file on it at all. So make sure to erase the game before proceeding.
  • The PID of the spread you're wanting to hit.
  • A timer such as the EonTimer, created by ToastPlusOne, or the PikaTimer, created by Pikachu25.
  • PokeRNG, created by Wichu.
  • Some knowledge of how to RNG, or having read the above post.

To start let's find an IV spread you want to abuse for. I'm going to teach you how to abuse your ID/SID on HGSS and DPPt. I am going to search for Quiet spread with the following ivs, 30+ / x / 30+ / 30+ / 30+ / 0 .

As you can see from the picture I switched our mode to HGSS. Leave shiny blank for now as you don't know what ID/SID you're going to be getting yet.
I set all the IVs except for Attack and Speed to be >= 30, as I am looking for a Quiet spread that is 30-31/x/30-31/30-31/30-31/0. The higher the IVs the spread has there may be less spreads available to choose from.
Since I am looking for a Quiet nature pokemon that may or may not use any physical moves, I left Attack at >= 0.
I put Speed at == 0 because I only want spreads that have 0 Speed.
You can also search for a pokemon spread that have the ability 0 or 1. To determine what Pokemon ability corresponds to 0 or 1, you can either use RNG reporter's 'Pokedex-IV Checker' feature or you can use the website Bulbapedia. When searching for abilities on Bulbapedia, under the abilities description, the ability on the left will be ability 0, and the ability on the right will be ability 1. It is as simple as that.

After browsing through all of the spreads and their encounter slots, I decided to go for that first spread shown in the picture. PID of F261E6DF, seed 001610E2, delay of 4322, min Synch frame of 233. You can see the minimum frame from the column that is labeled K (synch). Which just means that the spread can only be achieved on that specific frame, with a Pokemon that has the ability Synchronize as the first Pokemon of your party.
If you don't have a Synchronize Pokemon as the first Pokemon in your party, you will have to use the frames (if any) that don't require a Synchronizer. The frames for Synchronize, and

The frame is rather high for my taste, but it is easily achievable.

My grass/cave encounter slots for this spread are encounter slots 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, and 10. Which means there is only one encounter slot I don't have access to, which is number 11.
To find your encounter slots for a particular seed, just double click the seed inside of PokeRNG and it will bring up a window that has this at the top:

It lists all the encounter slots that the spread has along with what frame that encounter slot is on. If you scroll further down you will also see encounter slots for Surfing (Sweet scenting on the water) and Fishing (Old/Good/Super Rod).

Now that we have our desired spread, you will need to record the PID somewhere, such as NotePad. Put it somewhere you will not lose it. Make sure to note the seed for your spread as well.

So now that we have our desired spread, we should check if we have any other spreads that will be shiny if we abuse for that Quiet Spread.
As with any ID/SID there are thousands of shiny spreads. Some of them aren't all that great, but some of them are, there is a possibility that an ID/SID combination can yield more than one high IV shiny spread.
In order to find if we have any other good spreads paired with our Quiet spread, we go to OmegaDonut's .xls (found in the first post). We copy our PID, and search the document for that specific PID.

After searching in the .xls my spread was found:

As you can see it's everything that PokeRNG found for us. It even tells us that it will always be male. You can see that at O, P, Q, and R.
O = 25% Male
P = 50%
Q = 75%
R = 87.5%

S tells us the Hidden Power type, if you scroll to the right you'll find out more information about this spread. You could also shrink L, M, and N to near nothing as you won't be using them for anything.
T tells us the Hidden Power's power. So we have Fighting 64.
Letter U tells us the Shiny grouping it is in (if there are multiple spreads in a grouping they will have the same number).
V tells us how many shinies are in that group. Sadly, I only get this Quiet spread for the ID/SID I am going to be abusing for. Oh well.
You may find from only the one spread you're looking for in a group or up to 8 different shiny spreads in a grouping.

For each grouping, abusing an ID/SID for one of the PIDs (doesn't matter which) in that grouping will make all the spreads listed shiny.

Now that we have found all the spreads we can get, if any, time to actually start abusing for our ID/SID.
So let's take our PID, go into RNG reporter, and open up Pandora's Box.

Put your PID in the 'Desired PID (hex)' box, as I have done in the picture above.
You can put whatever year you'd like, it honestly doesn't matter.
For the minimum/maximum delay, you can put whatever you'd like, it honestly doesn't matter. The fastest you could possibly get is around 4,000. Although I usually prefer a little time to mess up, so I suggest doing 5,000 as a minimum instead. Maximum can be whatever you feel like, it can be 6,000 or 10,000. I'd prefer not to wait forever to try and hit the delay, as you are most likely going to have to try several times to get the correct delay.

Aim for delay around 5,000 to 7,000, as those delays seem to work best. I find a delay around 6,000 most comfortable.

After changing the search delay minimum to 6,500 and the maximum to 6,600. Just like the PokeRNG, the smaller the range of the search creteria is, the quicker the spread is generated. After it finished searching, I found the ID and SID that I want to abuse for.

Now we have a desired seed that will give us the needed ID/SID combination to get the desired shiny spread. The delay will be in the year 2011. What our Trainer ID will be and what our SID will come out to be the ID and SID in the above picture.

Note that this is the seed that will only be used for abusing the ID/SID, not for the actual Quiet Spread we found with PokeRNG.

Copy the seed, close Pandora's Box, open up Seed Finder for HGSS in RNG reporter. Put the seed in the 'Seed (hex)' input box. Put 2011 for the year. You can set the seconds to whatever you'd like, or you could even uncheck the box and have it search all the seconds. The seconds box is simply the last part of the time you're going to need to "hit" in order for you to get your seed.
For instance, January 1st, 2011, 15 (3pm): 55 (minutes): 15 (seconds).
Once you fill everything out, click generate to the right. It will generate a bunch of different times that the seed will appear. Simply choose one, it doesn't matter which. I usually try to choose a day as close as possible to my birthday. So November 26th is what I aim for.

Sadly, I don't get the 26th. The 25th is more than fine, as it honestly doesn't matter what day.

Now that we have a time to to start abusing for, we need to get our timer setup and ready to go.

I set my calibrated delay in there. Honestly it doesn't really matter. I always set it to 488, I'm just used to it. If you want to learn about calibration, refer to the last post.
Wanted delay is pretty obvious.
Calibrated second, I always leave it at 15. As with the delay, I'm just accustomed to it.
Wanted second, obvious as well.

So it looks like I will be needing to set the date 3 minutes before the target time.
I will go into my DS menu, change the date to Nov 25, 2011. Change the time to 07:02:00. When changing the time, when you click A to set the time you also need to start the timer at the same time. You need to be exact as possible in the synchronization of the two. Once the first timer hits 0, exactly as it hits 0, you need to either soft reset or start the game up from the DS Menu/AR Menu.
Soft resetting is where you are already in game and press Start, Select, L (not the DPad), and R (not the DPard) all at the same time.
Since you won't have a save game, get through all the useless information that the Professor gives you. Once you get to the very last part of him talking, you wait for the second timer. You wait at the message where it's one press of A away from going into the shrink screen.
Once the second timer hits 0, you press A to that last message, you will be shrunk into a mini you, and shortly after you will be in the game world.
Between the shrinking and the blank black screen is where your ID/SID was generated.

To check your ID, walk downstairs and talk to your mum, who has nothing useful to say. She will eventually give you your trainer card. When checking the trainer card there will be a good chance you did not get the correct ID, don't fret! We were seeing what you did hit so that we can adjust the timer to help you hit the correct delay.
Before turning the game off, go back to Pandora's Box and let's figure out what delay you did hit.

So, in the 'Seed Finder' section, I put in the ID I got, as well as the date and time. Minimum delay, and Maximum delay. I knew I wasn't going to go over the delay, so I just left maximum to 6,600. I didn't know what I was going to hit, so I just did -100 of the minimum. You should start off with -1,000 of the delay of your seed. Just to see all of results you could get.
It says I'm at 6,400 and 14 seconds.
So I'm about 150 off of my delay, and 1 second off of my target second.
Now let's go back to our timer. Since I want 1 more second on the second timer, I change my calibrated second from 15 to 16. Click create timer, and I now have 1 more second on my second timer.
For the delay, I will add about 50 to the wanted delay.
I find Pikatimer can give odd results for helping with delays.
I don't recommend just hitting up the update button with the difference in delays. Just adjust slightly up or down depending what you're hitting.

After a few tries and a good amount of work you will eventually see the beautiful ID you've worked so hard to achieve. Remember patience is a virtue.

For DPPt ID/SID abuse, it's all relatively the same except that your ID/SID is generated when you exit the TV report. When you exit out and the black screen before going into the game world between those two points is when it is generated. So when abusing doing the same as you did for HGSS, wait for the second timer to hit 0 and hit A to exit the TV, and do all the proceeding steps that are listed above.


While abusing the ID/SID is pretty much the same pre-abuse wise as abusing it on a DS, abusing the ID/SID on an emulator requires far less work and effort than abusing it on a DS.
With an emulator you have the ability to make save states, which are awesomely handy. I have a save state where it has an ID/SID delay of 6506 (which is why I did a delay of 6506 above). All I had to do was load the save state at the correct time, make sure my emulator didn't lag to a different second by checking the ID. If it's correct. Done.
If it's not reload the save state at the right time, check again until it's correct. It's quite simple.
In order to check your delay for the ID/SID, it requires a little work. It can be tricky as the seed flies by really quickly. You have to slow down the emulator and wait for it to show.

To check the delay, make a save state as you're shrinking mere moments before you are to the black screen.
I usually make a save state right here for HGSS:

For DPPt, I make the state right after the words have disappeared:

Once you have made the save state, pause the emulator, and reload the state with the emulator still paused.
Go to Tools in the emulator, open up Memory Viewer. Put in your seed memories location. Move that window to somewhere else on your screen. Go back to the emulator and open quite a few more memory viewers. Back to the emulator, unpause the game as soon as you did pause and unpause the game until you see the seed change in memory viewer. The first change will be the seed you hit, in which you can find the delay.
Once you find the delay of the save state, you can abuse the ID/SID easily.

Before attempting to abuse for standing legends or wild Pokemon here are some things you are going to need:
  • RNG reporter, and the ability to access Seeds to Time within RNG Repoter.
  • A seed with the nature and IV spread you're wanting to get, found by using PokeRNG
  • A Pokemon with the ability Synchronize, along with it having the same nature as your spread. If the spread needs a Synch.
  • A Pokemon with the move Sweet Scent, only for Wild Pokemon in both HGSS and DPPt.
  • For HGSS you are going to need to either have all of the Elm calls unlocked, or be able to call Juggler Irwin.
    The Elm calls are unlocked once you've shown a Togepi to Elm, been to Kanto, and have shown a Pokerus infected or cured Pokemon to the Pokemon Center lady.
  • For DPPt you are going to need the Coin Flip application for your Pokewatch, along with the Journal having entries of a Pokemon being caught, or defeated.
  • A reliable RNG timer.
  • Your ID/SID if you desire to find a shiny spread.

Firstly, what you're going to want to do is find out what exactly you want and with what spread. So go to PokeRNG search for a spread you're going to want.
To start, I am going to show you how to abuse in HGSS. So I go to my encounter slot list, found in the tabs at the top of RNG reporter.
I decided on getting a Magnemite with HP Fire 70, Modest, Ability 0. So I search for the seed that will have an encounter slot of 4, 5, 6, or 7.
When searching for seeds, I usually make sure the frame is above 10. As you will most likely use the first 10 frames making sure you hit the correct seed. I'll explain this further later.
After the search completed I found that seed 0117252D will have the desired results.
HGSS Breeding.

Okay, so you are going to need to have your two Pokemon in your party that you're going to want to breed, plus whatever other Pokes you'd like in your party, the amount doesn't matter. Save in front of the daycare lady. Also kill off your roamers if you have any. Don't worry, they'll come back later if you kill them, so they won't be gone forever.
Also, make note of the IV's that the parents have that you're going to be using to breed with. Along with what order they were put into the daycare.
Now we are going to go to our RNG reporter, click the "Time Finder" tab. Than switch tabs over to "Shiny Egg Finder" or "4th Gen Shiny Egg Finder."
So what I'm going to do is go for a shiny Relaxed Male Bulbasaur. Shinyness, nature, gender, and ability are RNG'd at different times than the IV's, so need to worry about IV's just yet.
So now that we have all the nature, ability, gender, our ID/SID filled out, we put in our min/max delay. So when you did the calibration phase, what was the lowest delay? What was the max? You're going to put those in those two boxes in that menu. Since we're doing this for HGSS click that HGSS Shiny Egg box. Now if you have two parents, and one is from a different language game, you're going to have to check mark the "international parents" tab. It doesn't add any extra work to the RNG. Just if your parents are from different language games it'll change what is needed to be used to hit. Now when you search for the spread, make sure if your calibrated delay is even, that you choose an even delay on a year, same thing with odd. If calibrated delay is odd, make it an odd delay. Say you find a spread that has an odd delay, but you want an even delay, just change the year up or down one, and that will change the delay by 1 to make it even.
When you have it all filled out hit Generate and see what results you get. So I hit generate and I found all the different seeds that can get me the shiny spread I want.
I'm going to go with 11/03/2004 19:44:15 [7:44:15(seconds) PM] that has a delay of 662 and a frame of 5.
When searching for your seed, I recommend an odd frame for now.
So now that we have chosen our target time, right click it, and hit 'Generate More Times..." button, this will bring a window up that is our "Seeds to Time" button.
Once you do that, in the top part of the new window, scroll down to your target date, click it. Than look right below it you'll see delay +/- and seconds +/-. This is basically seeding what other seeds are near our wanted delay. I normally do 99+/- delays as sometimes I can hit far off, but that rarely happens. If you're using a timer the second shouldn't be off any, so need to put any +/- there, unless if you're feeling froggy which you than can put like 1 or 2 +/- seconds. Click the bottom middle generate button and than are all the adjacent seeds to the one you want.

So now we open up Pikatimer, changing that calibrated delay to what our calibrated delay is, our wanted delay to whatever the delay we are looking to hit is. Do the same with seconds too, hit the update button and wahla there is your timer.

Now onto the resetting and attempt at getting hitting our seed. So what were are going to do is set our DS time 1 minute before the time that was in RNG report (if Pikatimer says 1 minute before, you'll see if it's one minute or not on the far right part of Pikatimer). Than have click the "Start" button on the Pikatimer, and accepting the changes to the clock on your DS AT THE EXACT SAME TIME! Sometimes it can be hard to do that, but you'll get it the hang of it as time passes.
So what you're going to do is at the first time, you're going to start the game (at the DS' starting screen, not the game's starting screen). When the first timer hits 0 you're going to start the game, than when the second timer ends you're going to enter the actual game world. As soon as you get in, open up your Pokegear as fast as you possibly can. Now when you do, go back to your RNG reporter's Seed To Time / Adjacent results window, and in the middle part of that window will be a 'Search Elm' button. Click that.
Now go back to your DS, call Elm once. Look at what Elm said in that call (here is why you're going to need to have done the kanto, togepi, and Pokerus parts at the beginning) than look at your RNG reporter, towards the bottom you're see K - E - P - with a long sentence after. Those are the different Elm responses Elm will give you when you call. So now that you saw his first call, what did he say when you called him? Did he talk about Kanto? Did he talk about Evolution? Or did he talk about Pokerus? Which ever one it was, go back to the top part, now to the very left you'll see buttons marked with the letters KEP as before. Whichever statement matches with the letter, is what you're going to mark. Now call him 9 more times putting in the correct sequence of calls, when done hit the "Ok" button at the bottom. After doing that, you will see what delay and time you hit. If it comes up with the delay you're looking for, congratulations you just hit the seed you wanted to. If not, keep trying, resetting and checking calls until you hit the seed.

Once you hit your seed, stay inside your Pokegear, and close out of the Seed To Time window, and go back to the Shiny Egg window. Now where it says frame, that is what frame you're going to want to advance to. The best way to advance the Shiny Egg frame is to call Joey (the reason why you need his number). Each time you call Joey it advances the frame by 2. Than when the daycare man has an egg for you, that advance the frame by 1. So to get a frame of 5, I'll have to call Joey twice, put the Pokemon in the daycare and run around until the daycare man has an egg for me.

Now just to warn you, some people say that if you call Joey and he is telling you to come battle him that it won't advance the frame at all. Personally I haven't found that to be true, but some people say it is. So I believe it's based on what game you use, so if it doesn't work, try calling him on any day other than a Monday (the day he asks to battle) or battle him before doing all this.

So after you do your calls, and have the egg generated and ready to pick up. DON'T PICK IT UP, SAVE THE GAME RIGHT IN FRONT OF THE DAYCARE MAN, BEFORE PICKING THE EGG UP! If you want to RNG for IV's. You will have to leave it with the daycare man until you are done RNG'ing for the IV's on the egg, as if you pick it up and save after picking it up, you will have lost the ability to RNG it's IV's.
So now that you saved the game while the daycare man still has your egg, pick it up (yes do this without saving). Run around until it hatches and check if it's shiny, if's nature ability gender and everything is correct. If it is. TURN THE GAME OFF.

Congratulations you just have successfully RNG'd your first shiny egg.

So we are still saved right in front of the daycare man, now let's find us our seed for IV's. Now remember when I told you to keep tract of your parents' IV's. This is the step that will require knowing what the IV's are. Now let's go to our RNG reporter "Time Finder" tab again. Switching to the "Egg IV's" or "4th Gen Egg IV's." I am wanting Hidden Power Rock, or 31 / 31 / 30 / 31 / 30 / 30. So I put in the IV's I am wanting, and my parents' IV's.
Here we are going to want to put in the IV's we are desiring, where it shows == means that's exactly the IV I want to put in there. For now I suggest just using that until you get more familiar with RNG'ing than you can mess with the other options.
We are going to need to check this box so that it will allow us to fill in the Parent's IV's boxes.
Here we have the parent IV's box. On the left side is the Parent A's (first Pokemon put into the daycare) and on the right is Parent B's (second Pokemon put into the daycare). Since both of my Pokemon are flawless, I just filled it out with 6 31's on each side.
So now that we have the necessary info filled out, let's find what seed we are going to hit for our IV's. I suggest a low-ish frame. Since you're just starting it might be a good idea to do a frame of 8-20, but it's totally whatever you feel you're comfortable with. But keep in mind with egg IV's Elm calls do advance the frame, so if you want to do the 10 Elm calls to verify your seed, you'll have to find a frame of 11 or higher in order to do all 10 and still get the IV's.

Now that we have our seed, we can RNG like we did with our shiny egg. Just one thing is different, you're going to have to copy the seed down, and manually go to Seed to Time in order to see what the adjacent seeds are, as apposed to just right clicking the seed.
Resetting until we hit that delay, verifying what seed we hit with our Elm calls, etc.
Just to warn you, there is a NPC (Non-playing character) who advances the frame by moving. So it will probably be in your best interest to battle him so that he stops moving. You can use the Rebattle Trainers code, or if you haven't battled him yet, you can battle him. He won't give you his phone number so you won't be able to stop him any other way.
Since he does advance the frame, and most likely in a bad way. You're going to want to open up your Pokegear as FAST AS YOU POSSIBLY can as soon as the game loads, and hope he hasn't and won't move so that you can RNG smoothly. But if what if he does advance the frame? Your calls will be off most likely, by however many times he advanced the frame. So you will have to keep that in mind when RNG'ing for IV's.
So, now that we have hit our seed we verified our seed by any number of Elm calls. In my case, it was 3. So I called him 1 more time to make that frame 4. Now you won't advance the frame past 4, since when we pick up the egg, it will give the IV's of the frame after what you left of off. So if you only had 3 calls, it'd have frame 4's IVs. If your last call was frame 4, it'll have frame 5's IVs. So on and so forth.
So if your NPC is still moving when you go to exit the Pokegear, and pick up your egg, pick up the egg as fast as you possibly can!!! As the more time you wait, the more he has to advance your frame, which is not what we want. So we pick our egg up, now it's time to hatch the egg and check it's IVs.
The people with the AR code can just use the check IV code. As for those of you whom don't have an AR, you'll just have to either level it up some, or whatever you do to check any pokes IV's normally.

If the IV's turn out to be correct, congratulations you just finished your first full RNG breeding project
How to find your memory locations:

DeSmuME -> Tools -> RAM Search
Be at any point with the rom loaded.
Reset and reset/clear changes.
Upon reaching the continue screen, pause and save state.
Search Changes = 1. Currently at Continue Screen
Unpause and enter game. Wait until the overworld loads. Pause.
Search changes = 2. In game.
Reload state. Unpause, wait a split second, pause.
Search changes = 3. Currently at Continue Screen
Unpause, Enter game. Wait until the overworld loads. Pause.
Search Changes = 4. Wait for awhile.
Unpause and Reload state: enter quickly.
Wait until the overworld loads. Search Not equal to previous value.
It should be a 6 advancement.
Initial seed is the first result. LOL
Frame is the 8 bit location before it.
Special thanks to;
OmegaDonut for RNG Reporter, the .xls file that has 12,000+ High IV spreads, and all around awesome!
Wichu for his brilliant 4th gen seed finder, plus other tools!
ToastPlusOne, and Pikachu25 for their timers!
KazoWar for his PokeRNG Helper.
Those who helped/designed Desmume.
Princess of Johto, DarkChaos (HCZ) for helping proofread the guide.
BSatallite for giving pointers on what to clear up.