Skip to content

Change how rating interpolation works for new players #1024

@BlackYps

Description

@BlackYps

While trying to implement functionality to enable the client to notify the current user when someone else they could probably match with I stumbled upon two problems.

  1. 1v1 uses mean rating to match and all other queues use displayed rating
  2. The mean of new players gets changed for matching purposes.

Both are an issue, because at the moment the client would need to know about these, so it can determine how to compare the players rating to the ratings that get sent over by the server. 1) can be fixed (the client would compare to mean for 1v1 and compare to displayed rating for everything else), but would still be ugly, but 2) is basically impossible to reliably calculate in the client.
Ideally the client shouldn't have to worry about any of this, and should be able to compare the player rating with the other ratings in a trivial way that is the same for all queues.

I propose that we use mean rating and the rating adjustment for everything. For established players it doesn't change anything to change the team matchmaker matching from displayed rating to mean, as everybody should roughly stabilize at the same deviation in the long term. It is just a change for people that are affected by the rating adjustment. I originally used displayed rating in the team matchmaker because it seemed like a "more elegant" way to match new players in the low end and not at a mean of 1500. But as it turns out this split between the queues is biting us now, so we should unify them. This way we solve problem 1.
I'll have to study some real data to determine if we should choose a different interpolation for the team queues, but this is an implementation detail. All these rating manipulations should only concern the server and the ratings it sends out to the clients should be the already adjusted ratings. This way the client doesn't have to worry about rating interpolation and we solve problem 2.
The rating interpolation should maybe even be done for global, because I heard people complain that the autobalancer for custom lobbies uses mean and basically has the same problem as we originally had with 1v1 that it overvalues new players because of this.

I am interested in your thoughts about this @Askaholic

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions