PokéBase - Pokémon Q&A
5 votes
4,525 views

On both Bulbapedia and Pokemon Database, the "no effect" natures still have stats corresponding to them, only that the increased and decreased stats are the same. Does that mean the games really increase and decrease the same stat? For example, if a Pokemon had a serious nature, its speed would be multiplied by 11/10 and then by 9/10, resulting in its speed being multiplied by 99/100 and being slightly slower than if it had a nature that really didn't affect speed. Is this true? Has anyone tested it or read the code?

Mod edit: do not answer this question if you have not read and understood the description. Do not answer this question if you cannot prove your answer is correct. Your answer will be hidden otherwise.

by
edited by
My understanding is that bonus and malus like this are separated into categories, then each category is simplified before being applied.  So + 10% and - 10% in the same category would cancel each other out, and never actually be applied at all.
I don't know why the developers would decide to multiply a stat and cancel that multiplication out when they can just leave it out altogether and save a line of code...
Just a guess, but maybe natures have to be applied to Pokemon in order to function properly? So maybe they just added that +10% -10% so technically something was being applied in order to sort out the code. Just a guess, I'm no expert in the field.
Just a guess but:
Lets say a pokemon has 70 Attack
70 x 0.90 = 63
70 x 1.10 = 77
63 + 77 = 140
140 / 2 = 70
I'd disagree with Jawa but I have no way of proving it. My main concern would be the last operation, where you divide it in half. Since there isn't a function related to that with other natures, I doubt that is what the code actually does. But again, I have no way to prove it.

Also, do neutral natures really multiply stats by 99/100? The numbers seem to suggest that both numbers cancel out when determining stats. Maybe whoever found the code supporting this simplified the numbers, since 1.1 would have to be 1.111111... to cancel out with 0.9 fully. Or maybe another decimal.
The way I understand it, the boosts from natures use the starting value, find 10% of that value, then add/subtract it. For example:
100 Spe (+ Speed nature)
100 x 0.1 = 10
100 + 10 = 110

100 Spe (-Speed nature)
100 x 0.1 = 10
100 - 10 = 90

If you combine both of these, you get 100 + 10 - 10, which leaves you with 100 again.
No, my serious level 100 haxorus (don't ask) was drawing with a gentle level 100 haxorus, so I assume not.
Are you sure that the two Pokemon had identical EVs and IVs? This doesn't mean very much if you can't tell.
I converted your answer to a comment since it wasn't conclusive. But if you can show it is conclusive, feel free to repost.

2 Answers

6 votes
 
Best answer

(I'm not 100% sure whether this should be an answer or a comment, since it relies so heavily off of information in the answer by ~Rex. But, I decided to make it an answer because I feel that I provide a decent amount of new information as well as a definitive answer)

Okay, so I don't have SM (haven't kept up with the main games in favor of Showdown), but I was just so intrigued by this question that I tested this out in White, the most current game I have.

As A Geeky Jawa pointed out, a Serious Ninetails with 0 EVs and 0 IVs will have 205 speed on Showdown, so we know that neutral natures on Showdown really do have no effect whatsoever on stats. We do not, however, know if this is accurate to the actual games, so that's what we're (I'm) testing here. For this test, I ended up using Cinccino (115 base speed) instead of Ninetails or another 100 base speed Pokemon because it levels up faster. Here are the results:

Cinccino, Lv 100
Serious Nature
31 Spe IVs
0 Spe EVs
Results on Showdown: 266 Spe
Results in White: 266 Spe

So we can finally conclude that neutral natures truly are neutral. Even though this was tested using a Gen 5 game, I strongly doubt that Game Freak would have changed this in Generation 6 or 7. So, I think we can all agree that these are adequate results, unless somebody comes and proves that natures really did change since Gen 5.

by
selected by
This is fine as an answer since it has in-game proof and is conclusive.
Hey sumwun you got your answer, BA this please :)
That's massive dedication, I'm so proud of you :D
Yes, I saw this question yesterday and I said to myself "Drop everything! This question needs solving! What's a fast pokemon with an EXP cap of 800,000? The Cinccino line? Well then, you need to breed a Serious Minccino with 31 speed EVs RIGHT NOW! Then, you're going to spend every moment you can to grind that Minccino to LV 100. Hurry! Before this question becomes irrelevant! GO, GO, GO!"  Fastest LV 100 I ever got (because seriously, 800,000 is ridiculously low; I was blown away with how fast this guy leveled up).
3 votes

Okay so, stats are calculated thus:

Which means, to create a simple model using a level 100 Pokemon with a base speed (for example) stat of exactly 100, with zero EVs and zero IVs,

we would have its speed as [{(2x100+0+0)x 100}/100] + 5, and all of that into nature multiplier.

That is 205 x Nature. Now if it is as sumwun says, and it is actually multiplied by 99/100, then the result is 204.95

Now, in stat calculation as seen here

The stat is rounded down if the result is a decimal. The stat is also rounded down before the Nature multiplier, if any, is applied.

Meaning the 204.95 drops down to 204, meaning a loss of 1 unit from what should be calculated value of 205. This will mean that invariably, even if by one point, neutral nature Pokemon are missing out.

That is part one, till where facts are available.


Part Two:
Conjecture

This part is based on the assumption that what Bulbapedia has stated is true:

Every Nature represents one of the 25 unique possible combinations of stat increase and decrease; thus, there are five Natures that have no effect on the Pokémon's stat growth as they technically increase and decrease the same stat (Bashful, Docile, Hardy, Quirky, and Serious).

and

The stat is rounded down if the result is a decimal. The stat is also rounded down before the Nature multiplier, if any, is applied.

If we consider these two phrases, then a simpler alternative comes into play:

The Nature Multiplier for the five natures are unity, or one

Taking that idea, then it is simple to see how neutral natures do not affect the stat at all, because the game uses multiplier, which is a single value. And obviously, as we all know, multiplying any value with one gives the exact same number. Now, I'm no coding expert, but if you can assign a multiplier to each nature as 1.1 or 0.9, then just as simply the multiplier can simply be 1.0, instead of 99/100, which is 0.99. This also makes sense if there is a strict line of coding that allows just 3 characters to define the multiplier, with the middle character set as a decimal value, leaving the first and last to have 0,1 or 1,9 respectively. If my idea is correct, then the last digit can also be a 0, meaning a 1.0 multiplier is perfectly possible.

Again, if there is a character limit of 3 (decimal inclusive) then 0.99 can not be a valid combination. Again, this is confirmed only by looking at that exact line of code, and that will reveal if part 1 is correct, or if my hypothesis holds water. Either way, the loss is by one single point at the most.

Of course, there is, to be honest, no way to prove it, as fizz's edit wants, but I thought this was an idea that I could put as an answer. One particular strength behind this is that it views the nature multiplier as just that, a multiplying factor that is not directly added or subtracted from a stat. I tried focusing on how the stat is affected by the multiplier, so I thought this could shed some light. Feel free to leave comments below if you agree or disagree, and we'll make try to make changes as it develops.

by
edited by
>to create a straw man argument
What here is a straw man?
Yes I figured that was a weird phrase, thought I'd remove it while proof reading, forgot to :/

I meant a simple case to help with calculation, with a base 100 stat and no evs or ivs. I used straw man, because I felt that was the phrase, of using a simple model over an actual Pokemon. I'll just edit that out though :/
You lost me at "Okay so". JK

Seriously though, I checked Showdown using Ninetales w/ 0 evs, 0 ivs, and serious nature but it had gotten 205 speed instead of 204. Showdown is wrong for once?
> Of course, there is, to be honest, no way to prove it,
The proof is easy. Just get a Pokemon with a "no effect" nature, level it to level 100, and give it 31 IVs and 0 EVs in the stat that might be affected by the nature. The resulting stat should answer this question.
The problem with that is you won't be able to tell if the stat is lower due to the nature or lower IVs. Unless of course  change in 1 IV would cause a shift greater than a single stat point, which I haven't bothered to check.
In SM, you can use bottle caps to force IVs to behave as if they were perfect.
That solves that then. Now somebody just has to do it.