Hey everyone,
As a result of some of the feedback we've had (along with some common sense), we're adjusting how points are given out when puzzles close.
The current function for calculating points is:
Points = Max(1, RoundUp((1 - (Rank - 1)/(NumPlayers - 1)^7 * X))
We are adjusting the exponent (currently 7) to be 6. What this will mean is that there will be slightly less of a point difference between the top spots in a puzzle, and more of the lower ranks will get more than 1 point.
We're fairly confident that the best value for the exponent is actually below 6, but for now, we're sticking with this small change.
If it is max 1 or the other number, it is always 1. Also, what place is roundup rounding to? These issues prevent me from calculating the score correctly, right?
No. The term inside of the RoundUp function is being multiplied by the number of points available for the puzzle (this is the X value). So for a 100 point puzzle, it is multiplied by 100. RoundUp will round up to the nearest integer, which is very often more than 1.
WheneverI do Points = (1 - (Rank - 1)/(NumPlayers - 1)^7 * X) I get .99999999993
Oh, and I put x as 100 and have used 31 and 188 as rank and 188 as NumPlayers.
Here are two examples.
Number of players: 101
Rank: 31
1-30/100=0.7
0.7^6*100 = 11.76 ==> 12 points
Number of players: 201
Rank: 121
1-120/200=0.4
0.4^6*100 = 0.4096 ==> 1 point
I was using order of opperations. Apperantly you aren't supposed to. :)
I think they actually have a parenthesis missing. I've done a few sample calculations using Puzzle 599's scores (which uses the old exponent of 7), and the equation should be:
Points = RoundUp( ( 1 - (Rank - 1)/(NumPlayers - 1) )^7 * X)
Or Points = RoundUp( ( (1 - (Rank - 1))/(NumPlayers - 1) )^7 * X)