**definitions**
*Score board is list of scores for an individual game.

Example.

*Leader board is a list of scores across multiple games. Currently calculated by average position in games a player has submitted to and sum of all positions earned.

Example.

Several years ago I spent a lot of time brainstorming this problem and then

**Wolf spent a ton more working on it but none of that was ever used. I feel bad about that Wolf. Sorry.**
The goal

*then* was to use some version of Microsoft's True Score system which is roughly based on Chess Ranking. It had two problems. It was very complicated and it didn't really solve the underlying problem George described. MS and Chess work by recording every single match and normally have a 1 winner vs 1 loser dynamic instead of list of scores over time. It would be a bad idea for us to try to automate/force record every score attempt.

-----------

**The current average system will be deleted soon so having replacement would be nice.**

I'd love to hear any ideas or feedback, but a solution that gets implemented, by me, anytime soon, can not be much more difficult to program than the current average system and must be more accurate.

-----------

These ideas have not been fully thought through. Some of the solutions might just be more problems.

**Goal 1:**

Position based ranking isn't very meaningful. Is second place 1 point away from first place or a million.

**Solution 1-A:** Grade on the curve. First place is worth 100 points. All others are worth a % of first place. So if first place submits a score of 1,000. Second submits a score of 950. Third submits a score of 500. Then first gets 100 leaderboard points. Second gets 95. Third gets 50.

**Solution 1-B:** On leaderboard replace average rank with average percent.

**Goal 2:**
Our current leaderboard total rank is calculated by adding 15 points for each first place, 10 points for each second.... down to 1 point for 10th. All games are equal.

But popular games should be worth more than unpopular games. Instead of how high is your score, how many people did you beat.

**Solution 2-A:** Changing this to +1 point for every score beneath yours. 10th place on a score board with 100 scores is worth 90 points while a 1st place on a score board with only 10 scores is worth just 10 points.

**Solution 2-B:** Every score in a game adds on point to that game's point pool. You get a percent of the pool points based on your score.

Example:

If a game has 50 scores submitted the point pool is 50.

First place submits a score of 1,000 points. First place gets 100% of those 50 points added to the leaderboard = 50 points.

Second place submits a score of 900 points. 90% of first place so he gets 90% of the point pool = 45 points.

Third place submits 500. 50% of first. He gets 50% of pool points = 25 points.

and so on.

Popular games have bigger pools than unpopular games.

**Goal 3:**
Average rank should reflect how many games you have played. Averaging first place in one game is less impressive than averaging 3rd place in 100 games.

**Solution 3-A:** (I think this would fail on it's own but maybe there is a way to improve it) Currently we add all of a player's ranks then divide by # of games the player submitted to for an average rank. Low number is better. Instead subtract position from 100 to inverse rank. Then add all positions together to get total rank. Don't divide. Higher number is better.

**Solution 3-B:** Include Zero Point scores in averages. Currently the average rank divides your position by games you have submitted to. By counting zero scores I mean divide by total games on site, instead of total games player submitted to. No score = Zero, instead of NULL.

Because we have thousands of games that wont work well on it's own. But...

**Solution 3-C:** We could make multiple smaller leaderboards. Group all Super Mario Bro games into one Leader Board. Group all Puzzle games into another leader board. We currently do something close to this for each system.

Example you can view a leaderboard for just SNES. But it should include zero point scores in the average and it needs to be for much smaller lists. A whole system is way too big. "Mario Series" and "Street Fighter Series" are good sizes. "Vs. Fighter Games" would work but start to push the size limit for zero point averaging. If the list is too big then the player that submits lousy scores to every game kills the player that submits a few amazing scores.

**I really like that idea because** - I, like nearly everyone else, can't compete against the heavy hitters on the main leaderboard. That makes the leaderboard un-motivating to me and nearly everyone else. But I could have a lot of fun and a fighting chance trying to climb "Vs. Fighter" only leaderboard. Niche boards are more motivating the non-superstars. A site wide global leaderboard could be calculated by adding the smaller leader boards instead of using individual games.

**Goal 4:**
Newbi friendly. Elrod should rank higher than any new player but not to the point that the newbi gives up all hope.

A new score for Elrod (because he has thousands already) should be less rewarding than an equal score from newbi.

**Solution 4-A:** Write a formula that would give Elrod 1 more point for a new first place score but would give a newbie 100 points for the same score. (Just an example, needs tweaking.)

**Solution 4-B:** Leaderboard only tracks a player's 100 best rankings. This would apply to both average rank and total rank. It would mean there would be a max best score you can get on the leaderboard and so there could be ties. If there are ties we could increase 100 until we have enough to avoid ties. Shouldn't take much more than fully scores to fully judge a player's skill, give variety to the ranks and still small enough to give newbies hope. Anything over 100 and you are probably starting to measure time instead of skill. It also doesn't punish or reward a player for submitting a bad score as long as they submit enough to make up for it.

Average could be same as now, divide by total scores a user has submitted but I think it would be better to combine with Solution 3-B above. So if you play 10 games your 10 ranks are divided by 100. If you play 100 games your total ranks are still divided by 100 and if you play 150 games your 100 best ranks are divided by 100 and your 50 worst scores aren't counted at all.

**Goal 5.**

Total rank is more impressive when you play fewer games. If Player A and Player B have the same rank but Player A did it in half the games then the score should reflect that.

**Solution 5-A:** Divide total rank by games played.

**Goal 6.**
Encourage players to submit all their scores they put effort into but not to submit meaningless scores. We don't want players to play every game for 30 seconds then hit submit but we also don't want them to play for an hour and give up without hitting submit.

**Solution: **A few of the ideas above should help.

---------- Post added at 04:19 PM ---------- Previous post was at 04:01 PM ----------

@George's example. I don't see much difference in saying "Average Rank = 5" and "In Top 80%". Neither take into account how competitive the game is or how many people you beat.

In your example on average you are 5th from top and 22nd from bottom. 4 people beat you but you beat 21 other people.

I am

**guessing** 80% doesn't move you up the page anymore than 5th rank does but beating 21 players probably puts you very high on the list and that is the number that needs to find it's way into the measurements.

---------- Post added at 06:34 PM ---------- Previous post was at 04:19 PM ----------

Also, current leaderboard only tracks the top 10 places in each game. So George your Mario Bros and Popeye scores currently are not even tracked by the leader board.