A rating system designed to assign teams a skill level that is useful for comparing their relative skills. This will allow Staff to have one more factor to consider during seeding, and allow teams to see their progress as they improve across Seasons of CCA play.
No. I actually use the GLICKO rating system, the details of which can be found here:
> https://en.wikipedia.org/wiki/Glicko_rating_system <
I decided to implement this because it is both an improvement on the ELO system, according to its founder, as well as being the rating system that Splatoon's X Power and Anarchy Power ratings are based on. As such, I decided to create this as well.
While I am looking forward to implementing a system that is built for team play, according to my cursory research, Microsoft's new Team Rating system is not available yet. Other than that, developing a custom rating system isn't something I'm worried about at the moment. So, I went with an 'off the shelf' solution.
If you do have a recommendation for a different system that I should use, fill out the feedback form on the website and let me know! I'd love to look into it, maybe it'd get implemented?!
I use a python program written by me to calculate ELO values every week. After receiving the data from the Stats Entry team, I make sure that the database is complete before copy pasting all of the match data into a file. I create the template that I need, and then the program runs. It takes all of the matches that exist into account, including past events that were corrected after the previous runtime.
The python code can be found down below.
Some notes on the implementation:
I decided to use a 'c' value of 500 due to the fact that it is both a round number, and that I want the ratings to be more variable than you would normally have in a system. The typical team will only play 5 matches in a season, so I prioritize there being more chance for mobility.
One important factor in determining ELO is deciding how to measure time between matches. The more time that goes on, the more variable rating is. The actual time that the match was played is used, with one unit being one week. Games are assumed to be played 5 minutes after each other.
In the event that a team is 'retired,' or no longer participating in the system, their rating will remain at its last value indefinitely. This could cause a large number of rating points to be unaccessible to the system, potentially reducing the rating cap of all other teams.
My plan to address this is to not worry about it in the slightest. For every team that retires with an ELO above 1000, there will probably be a team that retires with an ELO below 1000. These points discrepancies will, eventually, even out, causing the points stolen by teams that leave to eventually equal 1000/team.
Additionally, with the influx of new teams that we expect to see in the beginning of each academic year, there will be plenty of rating points available for the top level teams to steal from the beginners. >:D
TL;DR I won't be implementing any system to systematically remove the ELO rating points from the teams that retire.
While not a recommended strategy, one problem with the system as it currently exists is that, at the end of the day, a team who has an ELO below their desired value might decide to change their team name, retiring the old name in favor of a fresh account with which to climb.
I assure you ex-League of Legends players traumatized by getting hardstuck in Gold, that the ELO ratings are not nearly as sticky as the MMR in LoL. Each season essentially resets your Unsurity Rating, what allows you to make massive jumps (or drops) at the beginning of the season, depending on how you do!
If you do decide to abandon a team that is low ELO specicfically to inflate your rating, you will find that you lose a lot of the other benefits that come with sticking with a team name for a long time. Namely, the benefit of being able to track your progress across seasons easily!
Additionally, if you abandon an account below 1000 ELO, you effectively just gave up on the ability to more efficiently steal that ELO back from your previous victors.
TL;DR I don't expect the problem of teams abandoning their old names to reset their ELO to be an effective solution. The system is written to allow for large changes at the beginning (and medium changes throughout) each season. You won't have much of a problem with your ELO lagging behind your actual rating.
1) You are correct. Well noticed. >:)
2) No, it's a GLICKO system. :)