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
As far as I understand the system, each player id is assigned three Glicko-like ratings: vT, vZ and vP, respectively and the objective is to approximate their strength in tournament matches for the given match-ups. I understand that the system also records which race a player is using but as far as I can see, players do not have different ratings for their own race choice, e.g. if player A has Terran as his main race, offraces as Zerg and plays against a player B who plays Protoss, then the scores are updated based on A's vP and B's vZ rating.
Realistically however, A's vP rating is problably mostly an TvP rating (if he mains T) and would probably overestimate his ZvP strength severely to the point of being close to meaningless for this offrace matchup. Consequently, the score updates from this offrace match for A would probably overestimate B's vZ rating and underestimate A's vP rating.
First of all, is my understanding of this matter accurate?
If I did not make a mistake in the query with the current DB dump then matches in which one player does not play his mainrace make up ~2% of the matches in 2020.
I would like to make a suggestion (conditional on the above being correct) to account for this issue by slightly adjusting how matches are recorded in the database: Record offrace matches under new player ids. I.e. there would be an unaffected player_id for A and his offrace match would be recorded on some new player_id A(Zerg).
Cons:
not very elegant solution
minor data duplication (like the tag and name column for the two rows that the player now has in public.player)
might clutter the leaderboard
Pros:
the website provides more information (we can now find out how strong player A's offrace Zerg is, which we could not do before )
the website provides (imho) more accurate rankings (we no longer underestimate A's strength as his main T based on some offrace games in his history)
as far as I can see this workaround requires no code changes and no database scheme changes which seems appropriate for something that only affects ~2% of the matches
I speculate that this approach would make it easy to expand some features to make them aware of offracing in the future while allowing other features to ignore the issue altogether. For example, there could be a nullable column in public.player that indicates the mainrace player id of the player and is NULL if the row already represents a players mainrace. This would probably make it easy to filter out these extra player ids for some views (e.g. if we want a ranking of unique players with their mainrace strength), or merge them for queries (e.g. by taking a union over left join on ... = player.id and join on ... = player.mainrace_id if we, for example, want all matches for a given player including offrace matches) and ignore the issue altogether where its appropriate, e.g. for rating calculations I believe it would produce the most accurate results to treat a person playing two different races as two different players with different strengths.
The text was updated successfully, but these errors were encountered:
As far as I understand the system, each player id is assigned three Glicko-like ratings: vT, vZ and vP, respectively and the objective is to approximate their strength in tournament matches for the given match-ups. I understand that the system also records which race a player is using but as far as I can see, players do not have different ratings for their own race choice, e.g. if player A has Terran as his main race, offraces as Zerg and plays against a player B who plays Protoss, then the scores are updated based on A's vP and B's vZ rating.
Realistically however, A's vP rating is problably mostly an TvP rating (if he mains T) and would probably overestimate his ZvP strength severely to the point of being close to meaningless for this offrace matchup. Consequently, the score updates from this offrace match for A would probably overestimate B's vZ rating and underestimate A's vP rating.
First of all, is my understanding of this matter accurate?
If I did not make a mistake in the query with the current DB dump then matches in which one player does not play his mainrace make up ~2% of the matches in 2020.
I would like to make a suggestion (conditional on the above being correct) to account for this issue by slightly adjusting how matches are recorded in the database: Record offrace matches under new player ids. I.e. there would be an unaffected player_id for A and his offrace match would be recorded on some new player_id A(Zerg).
Cons:
Pros:
The text was updated successfully, but these errors were encountered: