You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
For 2v2 we wanted players ratings to be initialized based on their global rating, but with a sigma increase. This was hardcoded into the player rating dictionary here:
For future 3v3+ queues we will want to do a similar thing, so it would be best to fully generalize this process. We should add a field in the database to the leaderboard table that will reference another leaderboard id to initialize from. I think we can leave the sigma increase as it is, hardcoded to +150 sigma with a 250 sigma cap. I don't see a reason why those values would need to be configured in the database; they would only complicate the tables.
The text was updated successfully, but these errors were encountered:
* Make server shutdown cleaner
* Load leaderboard data from database
* Generalize rating creation based on existing ratings
* Make test complete faster
* Reimplement rating init to detect cycles, and stop checking legacy tables
Leaderboards can now have arbitrary initializers and initialization
should happen as expected. Ratings are initialized recursively until either
the current rating has no initializer, or a cycle is detected. Any ratings
that are implicitly created during this process are marked as transient and
will be recomputed whenever they are queried. This ensures we are always using
the latest version of the initializer rating when the first rating for a new
leaderboard is saved. For instance if tmm_2v2 is initialized from global, and
a player new to the matchmaker queues for 2v2, their 2v2 rating will be
initialized based on their global rating, and marked as transient. If the
player then cancels the queue and plays a bunch of global games (changing
their global rating), when they go to queue for 2v2 again, their 2v2 rating
will be reinitialized based on the updated global rating (instead of using the
cached version).
Legacy rating tables were migrated into the new leaderboard_rating table
in database migration v98. Therefore we can delete the code that checks
those legacy tables.
* Mark explicit initialization of global and ladder as deprecated
* Fix deviation propagation for initialization chains
Deviation will now only be increased once when initializing a long chain of
ratings
Co-authored-by: BlackYps <jonas-fb@gmx.de>
For 2v2 we wanted players ratings to be initialized based on their global rating, but with a sigma increase. This was hardcoded into the player rating dictionary here:
server/server/rating.py
Lines 39 to 47 in d2265dc
For future 3v3+ queues we will want to do a similar thing, so it would be best to fully generalize this process. We should add a field in the database to the
leaderboard
table that will reference another leaderboard id to initialize from. I think we can leave the sigma increase as it is, hardcoded to +150 sigma with a 250 sigma cap. I don't see a reason why those values would need to be configured in the database; they would only complicate the tables.The text was updated successfully, but these errors were encountered: