Okay, so I just made this post on Gaia Online so I'll also copy it here for anybody here that might want to know this information.

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

I know this post seems long ; maybe all you need is to read the brief summary just below. I suggest that you at least read that to get an idea about the terminology that Evlfrost, Megafrost, and myself have been throwing around...

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

I think I've mentioned to a few people that I was intending to explain IVs and EVs here on the forums somewhere. Truth be told, there are three ways you could beat us...

1) Cheat. Maybe nothing spectacular... maybe using moves that are considered bad form, or bringing legendaries to a non-legendary fight.

2) Luck. Maybe you'll end up with the right pokemon (or the right moves) to take out our teams. Or maybe hoping for a rare event.

3) Beat us at our own game. In other words, understand how we create our pokemon.

Now, clearly #1 simply makes you look bad. It can also lead to undesired consequences... what happens when we start applying #3 to #1 pokemon? It has already happened to one person ; I've designed a couple of pokemon to use against her because she used legendaries against me (and the gloated about it.)

#2 is clearly not that great an option. If you end up with the right combination of pokemon, the strategy we use will change. Waiting for rare events is the #1 battle killer, too. To depend on such things pretty much guarantees losing more than winning.

#3 is the only option that can guarantee success. This does come with a disadvantage, though. Often you'll find that your favorite pokemon isn't viable for how you'd need to use it. Some balance can be found here ; your team doesn't actually have to be a specific group of six. In fact, I noticed that some of y'all had many different pokemon.

A fourth option is to simply continue using the pokemon you do like. Winning isn't everything, of course. You should enjoy your pokemon. (People like us like numbers, hence why we can settle into developing and following strategies.)

So, let's get started!

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

Brief summary of how to design a pokemon based upon stats.

Let me summarize really fast here:

-Base Stat ; this determines which pokemon are fast, which are strong, and this is the same for every pokemon of that specie

-IVs ; these are values unique to every individual pokemon, generated when they are born

-EVs ; these values change depending on the pokemon has battled

-Nature ; this adds to one stat and subtracts from another

So, what we abstractly do is:

* Oh! I like Gardevoir! What's its base stats?

* Okay, I want to make its Special Attack as high as possible and raise its speed pretty high

* (Then dive into the details of IVs, EVs, and nature)

This, of course, ignores moves, but I'll cover moves at a future date. For now, I'll just note that we check a couple of pokemon sites to get ideas for pokemon. Sometimes we implement exactly what they have there, other times we come up with other ideas.

Now, why go into the details? Because I've put over 646 hours into my Pokemon Diamond game alone and the vast majority of this information is stuff that we know.

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

How a pokemon's stat is calculated.

-----Base stats-----

The game can give you the wrong impression about how a pokemon's stats are determined. You level up your pokemon and you see:

HP: +3

Attack: +2

Defense: +1

Special Attack: +1

Special Defense: +1

Speed: +2

That gives the impression of randomness ; it SEEMS random, right? It's actually not. Every pokemon specie has something called base stats which determine what its stats will look like when it's level 100. Will it be fast? Strong? Defensive? The base stat says it all! For example, let's take Gardevoir as an example. Its base stats are:

HP: 68

Attack: 65

Defense: 65

Special Attack: 125

Special Defense: 115

Speed: 80

You might notice that its hp, attack, and defense are pretty low compared to the others. Speed isn't that impressive, either. But, its Special Attack and Special Defense are pretty high!

How much do those stats affect the value of that stat at level 100? Well, if that was all it took to calculate the value of that stat, it would be:

5 + BASE * 2

HP would be different, but go ahead and ignore that for now. In fact, I'll ignore HP for the time being. Here's what a Gardevoir's stats would look like at level 100 with just that simple data:

Attack: 135

Defense: 135

Special Attack: 255

Special Defense: 235

Speed: 165

(You can look at level 100 pokemon in your party to see how that compares.)

Now, one question that might come to mind is "how high is very high?" There really isn't any solid answer. I can say this, however ; double the attack and you will do roughly twice as much damage.

Now, let's start covering the other values that you normally wouldn't pay attention to: IVs, EVs, and nature. Why would you want to do that, you say? The answer is simple: a Gardevoir that uses these will do 50% more damage than one that doesn't use them at all! That's a lot more damage right there.

-----IVs-----

So, let's start with the simplest of those three concepts, IVs. It is short for "Individual Values." It's called that because they're unique for each individual pokemon. This is what causes two different pokemon with everything else the same to have slightly different stats. A pokemon will have six different IVs, one for each stat. So, for example, let's take my Gardevoir as an example. It has the following IVs:

HP: 23

Attack: 24

Defense: 31

Special Attack: 31

Special Defense: 30

Speed: 31

As you might have guessed, 31 is the highest it goes. How does IV affect a stat for a level 100 pokemon? Here's the new formula for a pokemon's stat:

5 + BASE * 2 + IV

It's that simple. It just adds somewhere between 0-31 points to an individual stat.

The most important thing to note is that, once the pokemon is born, these are permanent. It is possible to take a bunch of level 1 pokemon and find out if any of them have 31 IVs in the stats you really want. (I will cover later how we do that.)

For now, let me update the above Gardevoir stats to now include IVs...

Attack: 135 + 24 = 159

Defense: 135 + 31 = 166

Special Attack: 255 + 31 = 286

Special Defense: 235 + 30 = 265

Speed: 165 + 31 = 196

-----EVs-----

Next up. EVs. They are also commonly called EPs for "Effort Points." That basically means "how much your pokemon has trained this stat". Like IVs, there is one for each stat, but unlike IVs, they always start at "0" and increase depending on what you have your pokemon fight. For example, if your pokemon beats a Gyarados, it'll get 2 points added to its Attack EV.

This is EV training. It's simple to do once you have the correct information. The only trick is that there is a limit to EV training. A pokemon can only have EVs going up to 255 for any one stat. Once it reaches that limit, the value will not go any higher.

Likewise, a pokemon can only have a total of 510 EVs. Once it has 510, none of its EVs will go any higher.

How do EVs affect the stat formula? It's a little different from IVs:

5 + BASE * 2 + IV + EV / 4

In other words, 4 EVs only add 1 point to that stat.

But, what happens if you divide EV by four and the value isn't round? You toss the decimal numbers. For example, if you had 6 EVs, to find out how many points it adds:

-Divide by four to get "1 with a remainder of 2"

-Toss the remainder to simply get "1"

Naturally, to take advantage of this you have to decide, in advanced, what you'd like your pokemon to be. In my case, I chose to have Gardevoir be a Special Sweeper. This means that I really want to raise its Special Attack and its Speed stat.

Maybe you already noticed, but I mentioned that you toss the remainder, right? So, for Gardevoir, instead of having 255 Special Attack EVs and 255 Speed EVs, I actually only have 252 in each one. Why? Because...

252 / 4 = 63 with a remainder of 0

253 / 4 = 63 with a remainder of 1

254 / 4 = 63 with a remainder of 2

255 / 4 = 63 with a remainder of 3

In other words, 252 adds just as much as 255! No need to put those extra points in there, then. Instead, I'll give those six extra points to another stat. (In my case, I put them in HP, but let's ignore that for now.)

Putting 252 into Special Attack will raise it by 63 points, putting 252 into Speed will raise it by 63 points, so the new stats are:

Attack: 159 + 0 = 159

Defense: 166 + 0 = 166

Special Attack: 286 + 63 = 349

Special Defense: 265 + 0 = 265

Speed: 196 + 63 = 259

-----Nature-----

The final stat modifier is nature. Maybe you've noticed it in the pokemon's status screens. Your pokemon is brave... or timid... or jolly... or calm. These are natures and they do two things:

-They raise one stat by 10%

-They lower another stat by 10%

(There are five natures that actually do nothing at all.)

What you need in order to take advantage of these is to look up on a table what each nature does. Usually you'll know in advanced what you want.

Let's take my Gardevoir, then. Clearly, as a Special Sweeper with a really high special attack, all I want to use are special attacks. I'll probably avoid using any physical attacks, period. So, that immediately suggests a nature I might want to use. I'd want to use one that:

-Raises Special Attack by 10%

-Lowers Attack by 10%

There is a nature which does this: Modest. So, let's take that into account in our above calculations:

Attack: 159 * 0.9 = 143.1 = 143

Defense: 166

Special Attack: 349 * 1.1 = 383.9 = 383

Special Defense: 265

Speed: 259

You may notice that, just like EVs, I threw away the remainder.

But, now compare Gardevoir's stats to your level 100 pokemon. It's looking much scarier, now, isn't it?

Maybe right now you have a question: Nadian, you've been talking about level 100 pokemon. What about when they're level 50? Or somewhere in-between?

It's actually pretty simple. Ignoring that HP works a little different, a level 50 pokemon will have stats that are pretty close to one half its level 100 stat.

In addition, for the battles that force all pokemon to level 100, it doesn't look at the current value, it takes the above values I mentioned and simply calculates brand-new values. (It also does the same thing when the battles force pokemon to level 50.)

That's why, when you battle using "Level 50 All" it doesn't matter what levels the pokemon are ; the game knows how to immediately calculate a pokemon's stats even when it increases by just one level. In fact, this is what the game does when it shows you the level-up box! If my Gardevoir were level 99, its stats would be...

Attack: 141

Defense: 164

Special Attack: 379

Special Defense: 262

Speed: 256

So, when my Gardevoir went from level 99 to level 100, it just displayed the difference:

Attack: +2

Defense: +2

Special Attack: +4

Special Defense: +3

Speed: +3

Hopefully now you understand those aspects!

-----HP stat-----

In reality, you can think of the HP stat like those other stats ; IVs and EVs work exactly the same. Natures cannot affect HP. But, since I went ahead and mentioned the formulas for normal stats, I thought I'd go ahead and give you the formula for HP:

10 + BASE * 2 + IV + EV / 4 + 100

(That last +100 is because it's a level 100 pokemon ; HP is a little more complicated because of that.)

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

Now, I'll go ahead and halt there. In the near future, I'll try and add:

-Nature and IV breeding

-EV training

-Choosing movesets

-Choosing items

-Smogon community