I've gotten some requests recently for information about how the rating system works. Here is a quick overview:
A user's rating is meant to represent and distill a user's skill level into a single number. In fact, your current rating tells the game what your "expected" score is in each round you play. And if you don't match up to your expected score, your rating will go down. If you surpass your expected score, your rating will go up. It's as simple as that.
Let us say there are three people playing in a room. After a game, but before recalculating their ratings, they have the following ratings and scores:
Name | Score | Rating |
---|---|---|
Adam | 40 | 1100 |
Alex | 90 | 1600 |
Jenny | 70 | 1300 |
Based on each of these players' scores and ratings, each player gets an "expected" score. This is the score that they need to get in order to have their ratings stay the same. Expected scores are calculated by dividing the sum of scores (40+90+70=200) by the sum of ratings (1100+1600+1300=4000). The resulting quotient, .05, is multiplied by each person's current rating (i.e. 1100 x .05) to get their expected score. Here's a table...
Name | Expected Score | Score |
---|---|---|
Adam | 55 | 40 |
Alex | 80 | 90 |
Jenny | 65 | 70 |
You can see here that both Alex and Jenny did better than expected, but poor Adam did worse. Therefore, we know that both Alex's and Jenny's ratings will go up, but Adam's will go down. But, how much?
Here is where things get a bit tricky. There is no one perfect way of determining how much their ratings change, because the amount of change is mostly arbitrary. It is simply a matter of making up some rules for what the maximum amount of change per game will be, and how much over or under the expected score the player has to be in order to get that maximum. In our case, I've decided that the maximum change in points one can get per game is 16 (the current number), and in order to get +/- 16 points per game you either have to get a score that is 75% greater than expected or 75% worse than expected. For example, Jenny's expected score is 65 points. But if she get's 75% greater than that (or 1.75 x 65), which is 114, then her rating will improve by 16 points. However, if she get's 75% worse than expected (or .25 x 65), which is 16, then her rating will decrease by 16 points. Anywhere from 25% of the expected score to 175% the expected score will bring a range of -16 to +16 points. If you fall outside of that range, your rating will be limited to the maximum change (+/- 16). Also, there is a mimimum allowable rating of 100 and a maximum of 9999, so players will never exceed those amounts.
Let's look at how the players' ratings changed:
Name | Expected Score | Score | Old Rating | New Rating |
---|---|---|---|---|
Adam | 55 | 40 | 1100 | 1096 |
Alex | 80 | 90 | 1600 | 1602 |
Jenny | 65 | 70 | 1300 | 1301 |
I hope this shines some light on the ratings system. If you have any questions, shoot me an email and I'll do my best to answer.
One other small change is that now, instead of having two 5x5x4 rooms, I've changed one of the rooms to be a 5x5x5, meaning there the board is 5x5 and the minimum word length is five letters as opposed to four.
Here is a quick update on where things are with premium memberships. I'm the kind of guy that generally will come up with an idea and then immediately rush in and try to implement it, and that almost happened with the premium memberships idea. However, I realize that going forward with premium memberships is a big deal and affects more than just myself. So I've decided that what I'm going to do is continue to think about it and maybe spend some time making donating more streamlined and more visible instead. I'm not saying the idea is dead, but it is on hold for now. I appreciate everyone's encouragement and the ideas they provided regarding this issue.
FYI, you may need to refresh your browser in the lobby and in the game. Otherwise, the game will not work.
Update: We ran into some unintended snags and I had to revert the changes back, so the word chart is back to being buggy.
One idea that I have been kicking around for a while is the possiblity of creating premium memberships, where a user would decide to pay a small monthly fee and get additional features and privileges that normal users wouldn't have access to. I want to make clear that I'll never require users to pay to play Serpentine. This change would only layer on additional features that are not a core part of the game. Some things that only premium users could do are:
* Create your own room with your own rules
* Initiate voting to kick a person out of a room
* Instant message other users in your own private window
* See detailed statistics and information from your games
* Access a premium-users only room in the forum
* Ignore selected players in the chat window
* Get an icon next to their name in the players listing
There is definitely room for that list to grow and to become more enticing, it really depends on your reaction and feedback. And it is possible some of those features will be available for normal users as well. However, before I start working on any of this I want to see what you guys think. Would you be willing to pay a small amount per month (around $5 I'm thinking) for extra features? If so, aside from the list above, what are some key features you'd like to see? Please let me know your thoughts in the discussion section.
To try to keep you from coming to my house with torches and pitchforks, I've made a couple changes which I think people will enjoy.
With that said, here are the new rules:
I'm hoping not to get tarred and feathered for this, so if people hate it I will definitely consider reverting back to the old system.
Update:
I've made some small changes on the game server code that should help out with resource usage. While most users probably won't directly benefit from this change, it helps me out quite a bit. And anything that helps me also helps you ;)
- Changed QUOTE tag layout.
- Made a lot of the text slightly smaller.
- You can now highlight text and then click on a tag to put the tag around the text.
- Differentiated between thread starters and posts within threads.
- Experimental: New posts are now automatically placed at the very bottom of each thread.
I'm still unsure of the last point, so if anyone has any complaints then I may change the functionality back if it's valid.
I made a few bug fixes this morning, nothing major.
So if there are any emotes that you'd like then feel free to post them by following the link below this post and I'll consider all of them for inclusion. They can be pretty much any size, but only small ones will be allowed in the Serpentine chat.
Thanks!
This is yet another awesome feature from alex.
I also added a keyboard setting so that you can now press the left or right buttons on your keyboard to rotate the serpentine board. Let me know how this works out for you all.
I decided to do a test and change the way the game client (your browser) connects to the game server. I've switched to what I think is a more rigorous mechanism for connecting, and I hope that translates to better connectivity for people. However, bear in mind that I don't know if this will fix anything. It's just an experiment. But if you were previously having issues and you no longer are, please let me know!
I've also made a couple other small changes: The game now kicks you to the lobby again, instead of the homepage, and I've tweaked the sounds and removed the word-related sounds, and kept the round-related sounds. Also, I've changed the round-sounds to a more pleasing ding. Finally, I think I've finally fixed everyone's favorite bug, the word box should no longer be scrolling to the top every two seconds. UPDATE: Found out quickly that the new mechanism needs some more testing before I put it up live. So for now we still have the old connecting mechanism.