PokéBase - Pokémon Q&A
2 votes

Yes, I know it changes depending on level, I already dealt with that. The problem is that on some levels, like 39, I don't get the right amount of total EXP. My equation is level^3*(((level/2) + 32)/50). Some numbers I do, but some I don't, they are usually a few thousand off. If any one can help, it'd be appreciated.
Also, I don't know if this is 100% true, but I have noticed that even numbers work in the equation but odd numbers do not. Again, I have not tested this on all the numbers of course, but I tried it a few times.

*Correction - The level+1^3 part is actually in parentheses, I just wrote it wrong. The problem still persists.

edited by
I've never dealt with the exp equation before, but one thing I feel inclined to point out is the 1^3 part of the equation, which really seems unnecessary to me, as it always just equals 1.  Is it supposed to be (level+1)^3, with the parenthesis?  Don't know if this helps you at all, but I just thought I'd point that out.
Shouldn't this be posted to the Meta?
This isn't a question about this website, so no @Jason.
One possible reason is that it rounds down after every division, so that could result in it being a few thousand off.
No because when I do it in the calculator, it is still a few thousand off...
I'm not saying that, this information in their website in particular is wrong, but they already made many mistakes. If you want trustworthy information, you need to avoide Fanmade meedia and look mainly on the official meedia.
I personally find that Bulbapedia is one of the most reliable Pokemon websites. What, exactly, have you found on it that's incorrect?
Bulbapedia is as unreliable as Wikipedia - in theory, it should be unreliable because it's open to all sorts of dodgy people to edit, but it's actually super reliable and it becomes the basis of all your research because it actually is the holy grail of information and humans will probably evolve faster because of it.

1 Answer

1 vote

The problem exists in the part where the level is divided by 2.

All even numbers, when divided by two produce a whole number, whereas odd numbers produce non-integer values. As sumwun said, the way Pokemon executes math is that non-integer values are constantly rounded down to produce a whole number.

Assume n is even. Knowing this, dividing n by two will always result in a whole number n/2. Thus, when n is increased by one, it will become odd. Divide by two:
= n/2 + 0.5
0.5 is not whole, so round down
= n/2 + 0
= n/2
Therefore n/2 = (n+1)/2

Thus, when n is odd, the formula actually becomes n^3*((((n-1)/2) + 32)/50). You can justify by letting n = 39:

39^3*((((39-1)/2) + 32)/50)
= 60505.38
= 60505
Which is the value presented on Bulbapedia!

Thank you sumwun for pointing that out since I would have never realised.

Hope I helped. :)