Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add num_matches column #545

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

jauggy
Copy link
Member

@jauggy jauggy commented Dec 21, 2024

Feature

After running

mix ecto.migrate

This will add a new num_matches column to the database and also populate it with values. Whenever a match is rated, the num_matches numer will increase by one, with the exception that if it is a rating override, the num_matches will stay the same.

Purpose

The num_matches column can be used in the future for many possible use cases:

1. We can change the rating to become

min(1, num_matches/30) * skill

This idea has been approved by Marek: Source

This means that new players start at 0 and converge towards their skill over time. We won't have tons of people stuck at 0 due to negative ratings since there's no more subtraction as with Teifion's formula of skill-uncertainty. Having new players start at 0 also means we can create noob lobbies that are max rating 10 instead of max 20.

We can keep leaderboard rating the same.

2. The balancer can classify noobs using num_matches

Generally players prefer new players to be spread evenly across teams. The balancer does this by classifying noobs as someone who has uncertainty > 6.65 and chev level < 4. Using a num_matches to classify noobs is more intuitive and future proof.

Note these are future ideas and are not included in the PR.

Add num_matches column
@jauggy jauggy force-pushed the jauggy/num-matches-column branch from ea39c8f to 38ceb96 Compare December 21, 2024 16:48
@jauggy jauggy marked this pull request as ready for review December 22, 2024 02:04
@L-e-x-o-n
Copy link
Collaborator

It's a bit unclear what override does just from the name without following the usage, it might be better to rename it to something more descriptive. If t's just used when rerating matches maybe it should be called something like update_match_counter, rerate or similar.

@L-e-x-o-n
Copy link
Collaborator

@geekingfrog I am interested in what you think about this, do you see any issues or possible improvements?

@jauggy
Copy link
Member Author

jauggy commented Dec 23, 2024

It's a bit unclear what override does just from the name without following the usage, it might be better to rename it to something more descriptive. If t's just used when rerating matches maybe it should be called something like update_match_counter, rerate or similar.

OK I can update the name.

@jauggy jauggy force-pushed the jauggy/num-matches-column branch from a95154d to e8fa023 Compare December 24, 2024 08:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants