Credits

Without X-Act's initial article on PID and IV creation this would either not exist or be much more complex than needbe. Thank You.

Introduction

What is a Secret ID?

While it is common knowledge that each trainer has an ID it is somewhat less known that he or she also has a Secret ID which is hidden away. As the Trainer ID, this Secret ID is also recorded on each Pokemon a Trainer captures or breeds. This Secret ID is used in the equation which determines whether a Pokemon is shiny or not.

Why would I care?

Recently it has been discovered that the Random Number Generator, which controls IV's, natures, and whether a Pokemon is shiny, produces very predictable results. With little effort shiny Pokemon may be bred (in 4th generation games) or captured (in Emerald and 4th generation games), but it does require your Secret ID. There are ways to determine your Secret ID through the use of cheat devices but this guide explains how to find it for those that don't have access to or don't wish to use one of these.

For information on using your Secret ID to breed or capture shiny Pokemon please refer to the threads listed below:

Diamond / Pearl / Platinum

Emerald

Preliminaries

Before you begin you will need the following:

A Non-bred/non-chained shiny Pokemon that was caught in the game where you wish to determine the Secret ID. Pokemon caught while chaining, but from non-shiny patches are considered to be non-chained.

Access to a calculator that is capable of doing Hexadecimal and Binary conversions. Both the standard Windows and Macintosh calculators will do, but the body of this guide will assume that you are using the Windows Calculator.

Deducing your Secret ID

Find your IVs

You will need to discover the exact IVs of your shiny Pokemon first. Depending on the level this could be either extremely easy or difficult. Check them with Metalkid's IV Calculator. It may be that the EVs of the Pokemon are unknown, and in this case you will want to use EV reducing berries to clear them before using MetalKid's IV Calculator.

Find your PID

One you have found the IVs of your shiny Pokemon you will need to find its PID. The easiest way to accomplish this is by using X-Act's IV to PID Applet. Simply enter the IVs you calculated above and the nature of your Pokemon. X-Act's IV to PID Applet will then display a list of all possible PIDs based on the information you have entered. For our example we'll use a captured Fearow with IVs of 6 / 22 / 29 / 17 / 15 / 4 and a Serious nature which was captured in Pokemon Pearl.

Look for output that is similar to the following:

PID: 0466036312 [

**1BC72658**] | Created by

**Method 1**| Gender Number: 088 | Ability: 0

PID: 4009280062 [EEF8C23E] | Created by Method 2 | Gender Number: 062 | Ability: 0

2 possibilities

Depending on the game where the Pokemon was captured will determine which of these lines you are interested in.

For all Legendaries in all games you will look for PIDs created by Method 1.

For 4th Generation games you will look for PIDs created by Method 1.

For wild Pokemon in 3rd Generation games you will look for PIDs created by Methods 1, 2, 3, or 4.

**Note:**There may be more than one line in the output that satisfies the criteria for the Pokemon whose IVs you have entered. In this situation, you will be forced to complete the following steps for both of these PIDs and determine which one was correct at a later time by using Random Number Generator abuse techniques.

Calculate your Secret ID

Following along with the sample data from above we will take the hexadecimal version of the PID (highlighted and in square brackets above), then add as many 0's to the front as are necessary to make this a 8 digits long.

As our example number is already 8 digits we do not have to pad the number.

Resulting PID:

**1BC72658**

Our next step is to take this number and half it into two four digit numbers as such:

**1BC7**

2658

2658

Now open your calculator and convert both of these numbers to Binary. Using Windows built in calculator to do this is quite simple. Select the View->Scientific menu item and then click on the Radio Button next to 'Hex'. Paste in the Hexadecimal number and then click on the radio button next to 'Bin' to switch to the Binary view of this number.

Do this for both halves of the PID and paste the results into a text file.

1101111000111

10011001011000

Once this is done, switch your calculator into decimal mode and paste in your

**Trainer ID**. We will be using

**55083**for this example. Click the Radio Button next to 'Bin' to convert this into a third Binary number and paste the results into your text file under the first two.

1101011100101011

The next task is to make each of these binary numbers exactly 16 digits long. If any number has less than 16 digits, simply add enough zeros to the beginning of the number to make it so.

Now these numbers should line up as below:

0001101111000111

0010011001011000

1101011100101011

---------------------------

Our next step is to use these three numbers to create a 4th number, which will be our deduced secret ID.

Our goal when creating our 4th number is to have the sum of the number in each individual column equal either 0, 2, or 4; that is for the number of ones in each column to be an even number. Please note that this calculation is only necessary for the first 13 columns.

The example below shows the math for each of the 13 columns.

**0**001101111000|111

**0**010011001011|000

**1**101011100101|011

---------------|---

1--------------|000

As the sum of the first digits in this column add up to 1 we will add 1 to get our even result, which is 2 in this case.

0

**0**01101111000|111

0

**0**10011001011|000

1

**1**01011100101|011

---------------|---

11-------.-----|000

As the sum of the first digits in this column add up to 1 we will add 1 to get our even result, which is 2 in this case.

00

**0**1101111000|111

00

**1**0011001011|000

11

**0**1011100101|011

---------------|---

111--------.---|000

As the sum of the first digits in this column add up to 1 we will add 1 to get our even result, which is 2 in this case.

000

**1**101111000|111

001

**0**011001011|000

110

**1**011100101|011

---------------|---

1110--------. -|000

As the sum of the first digits in this column add up to 2 we will add 0 to get our even result, which is 2 in this case.

0001

**1**01111000|111

0010

**0**11001011|000

1101

**0**11100101|011

---------------|---

11101-------..-|000

As the sum of the first digits in this column add up to 1 we will add 1 to get our even result, which is 2 in this case.

00011

**0**1111000|111

00100

**1**1001011|000

11010

**1**1100101|011

---------------|---

111010--------|000

As the sum of the first digits in this column add up to 2 we will add 0 to get our even result, which is 2 in this case.

000110

**1**111000|111

001001

**1**001011|000

110101

**1**100101|011

---------------|---

1110101-------|000

As the sum of the first digits in this column add up to 3 we will add 1 to get our even result, which is 4 in this case.

0001101

**1**11000|111

0010011

**0**01011|000

1101011

**1**00101|011

---------------|---

11101010------|000

As the sum of the first digits in this column add up to 2 we will add 0 to get our even result, which is 2 in this case.

00011011

**1**1000|111

00100110

**0**1011|000

11010111

**0**0101|011

---------------|---

111010101-----|000

As the sum of the first digits in this column add up to 1 we will add 1 to get our even result, which is 2 in this case.

000110111

**1**000|111

001001100

**1**011|000

110101110

**0**101|011

---------------|---

1110101010-.--|000

As the sum of the first digits in this column add up to 2 we will add 0 to get our even result, which is 2 in this case.

0001101111

**0**00|111

0010011001

**0**11|000

1101011100

**1**01|011

---------------|---

11101010101-.-|000

As the sum of the first digits in this column add up to 1 we will add 1 to get our even result, which is 2 in this case.

00011011110

**0**0|111

00100110010

**1**1|000

11010111001

**0**1|011

---------------|---

111010101011-|000

As the sum of the first digits in this column add up to 1 we will add 1 to get our even result, which is 2 in this case.

000110111100

**0**|111

001001100101

**1**|000

110101110010

**1**|011

---------------|---

1110101010110|000 <- Final Secret ID

As the sum of the first digits in this column add up to 2 we will add 0 to get our even result, which is 2 in this case.

This leaves with a final binary number which represents our Secret ID.

1110101010110000

Switch your calculator to 'Bin' and paste in this result and then switch the calculator to 'Dec' to finally retrieve you Secret ID in decimal. The Secret ID in our example was 60080.

Afterward

The following is technical and likely not of interest to those who simply wish to use the results of the method outlined above to breed and capture shiny Pokemon.

This does not always give you your exact Secret ID, but as only the first 13 bits of your Secret ID are taken into account for determining shininess it does give a compatible result. The actual Secret ID will be in the range of the number this method produces (n) and n+7. For example, if the method results in 10000 as the Secret ID the actual Secret ID is some number between 10000 and 10007.