# Coding a Forum Level Up System

Show 40 post(s) from this thread on one page
Page 2 of 2 First 12
• 01-23-2013, 10:24 PM
FrostWyrmWraith
Okay, then please explain where you got 50. It should quite clearly be 2500 because as I said earlier, I calculated these based on a post count of 50.

I find it funny that you claim to be a mathematician but get these simple things utterly wrong.
• 01-23-2013, 10:29 PM
Oops – in my head I just had EXP = 50 instead of EXP = 50 * 50. Well, in any case that would make it be 500. Not the 200 you for whatever reason expect.

Quote:

I find it funny that you claim to be a mathematician but get these simple things utterly wrong.
show me I don't need to waste any more time trying to understand horrible code. It's fascinating what attitude people have towards others who try to help them for free(!). I don't need to prove to you that I studied mathematics, just as I don't need to listen to you accusing me of lying. Maybe others will continue to help you, although I certainly don't hope that they will.

Bye.
• 01-23-2013, 10:46 PM
FrostWyrmWraith
Help me? You've been nothing but condescending this whole time. I'm new at this, and your attitude has not been helping.

And no, by the way, 500*1.15^12 does not equal 3000. Nice try though?
• 01-23-2013, 10:51 PM
• 01-23-2013, 11:30 PM
Old Pedant
Okay...
Code:

```var xpup = (xneeded * Math.ceil(Math.pow(1.15, plevel))) var showxp= (xpup - (xneeded * Math.ceil(Math.pow(1.15, plevel-1)))) NewCode =  topR + midR + name + ": " + sign +" "+ plevel + "<BR> XP: "+ (EXP-showxp) +"<BR> Experience needed: " +  (xpup-EXP)+ "<BR>Overall Experience:" + (xneeded * EXP / xneeded) +"<br><!-- placeholder --><br><br>"```
So
Code:

```xpup = 500 * Math.ceil( Math.pow(1.15, 12) ) ==>> xpup = 500 * Math.ceil( 5.35 ) ==>> xpup = 500 * 6 ==>> xpup = 3000 showxp= (xpup - (xneeded * Math.ceil(Math.pow(1.15, plevel-1)))) ==>> showxp = (3000 - (500 * Math.ceil( Math.pow( 1.15, 11 ) ) ) ) ==>> showxp = (3000 - (500 * Math.ceil( 4.65 ) ) ) ==>> showxp = (3000 - (500 * 5) ) ==>> showxp = 3000 - 2500 ==>> showxp = 500 NewCode =  "...other stuff..."+ plevel         + "<BR> XP: "+ (EXP-showxp)         + "<BR> Experience needed: " +  (xpup-EXP)         + "<BR>Overall Experience:" + (xneeded * EXP / xneeded) + ... NewCode =  "...other stuff..."+ 12         + "<BR> XP: "+ (2500-500)         + "<BR> Experience needed: " +  (3000-500)         + "<BR>Overall Experience:" + (500 * 2500 / 500) + ... NewCode =  "...other stuff..."+ 12         + "<BR> XP: "+ 2000         + "<BR> Experience needed: " +  2500         + "<BR>Overall Experience:" + 2500 + ...```
This expression is especially silly:
(xneeded * EXP / xneeded)

Pointless. The two uses of xneeded cancel out, so the value is always simply EXP.
• 01-23-2013, 11:32 PM
Old Pedant
Quote:

Originally Posted by FrostWyrmWraith
And no, by the way, 500*1.15^12 does not equal 3000.

True. But that is *NOT* what your JavaScript says or does.

Quote:

var xpup = 500 * Math.ceil( Math.pow(1.15, 12) );
And because of the Math.ceil( ) in there, xpup *DOES* then equal 3000.

500*1.15^12 is actually 2675.1250527368555908203125
• 01-24-2013, 12:59 AM
FrostWyrmWraith
The (xneeded * EXP/xneeded) was there in the original coding.

Okay, so my dumb head head thought it was rounding it up to 2700. Actually I'm not sure where I got that impression, to be honest. Thank you for specifying why was becoming 3000.

Is there a way to make it round up just to the next number divisible by 50?
• 01-24-2013, 01:26 AM
Old Pedant
var xpup = 50 * Math.ceil( 500 * Math.pow(1.15, plevel) / 50 );

For a plevel of 12, that give xpup of 2700.

var showxp= xpup - 50 * Math.ceil( 500 * Math.pow(1.15, plevel-1) / 50 );

Again, for a plevel of 12 (with xpup of 2700) that will do

var showxp = 2700 - 2350;
or
showxp = 350
• 01-24-2013, 01:31 AM
Old Pedant
And then
Code:

```NewCode =  "...other stuff..."+ plevel         + "<BR> XP: "+ (EXP-showxp)         + "<BR> Experience needed: " +  (xpup-EXP)         + "<BR>Overall Experience:" + (xneeded * EXP / xneeded) + ... NewCode =  "...other stuff..."+ 12         + "<BR> XP: "+ (2500-350)         + "<BR> Experience needed: " +  (2700-2500)         + "<BR>Overall Experience:" + (500 * 2500 / 500) + ... NewCode =  "...other stuff..."+ 12         + "<BR> XP: "+ 2150         + "<BR> Experience needed: " +  200         + "<BR>Overall Experience:" + 2500 + ...```
• 01-24-2013, 02:50 AM
FrostWyrmWraith
Okay, I actually think I get that. It worked, thanks!
Show 40 post(s) from this thread on one page
Page 2 of 2 First 12