5 ms·
Why do you say it's shit ?
by elcomet 6y ago
Why do you say it's shit ?
- jayd16 6y agoOnce you reach the top there's much less reason to keep playing. It doesn't have a great way to handle multiplayer situations. It doesn't handle confidence as well as some other systems ie it takes a while to skill test a player. https://en.wikipedia.org/wiki/Elo_rating_system#Practical_issues https://en.wikipedia.org/wiki/Elo_rating_system#Practical_is... Trueskill and many others are often used instead. https://en.wikipedia.org/wiki/TrueSkill https://en.wikipedia.org/wiki/TrueSkill The biggest issue is fun is not the same fair and its a lot more complicated to tune for fun. You could, for example, play 100 matches where you were given the closest opponent but at a disadvantage for every single match. There's a lot of other scenarios around how you want to fold in ping based match making and how that smaller pool effects the fairness of the matchhing.
- maybeOneDay 6y agoI accept your premise and the fact that matchmaking is hard but: > You could, for example, play 100 matches where you were given the closest opponent but at a disadvantage for every single match. not really, you'd derank aggressively and end up playing people at a lower level and presumably winning comfortably after some time.
- deleted 6y ago[deleted]
- jayd16 6y agoIt all depends on who happens to be playing the game to match with but you're right. Ideally you would quickly hit a good match and win.
- xmprt 6y agoWhat's the open source alternative to TrueSkill? It seems really interesting but it's patented by Microsoft.
- wizzwizz4 6y agoThey can't patent the general idea, so just base something off the information in the Wikipedia article. At time of writing, I don't think doing that would infringe their patent.
- ummonk 6y agoGlicko
- noxvilleza 6y agoGlicko (1 and 2) don't handle complex matchups well (as in, anything that's not 1v1). Trueskill was specifically designed to extend the Bayesian concept of Glicko in a more general way which allowed this type of use-case.
- swirepe 6y agoIs your project non-commercial? You can use this[1] official bsd-licensed[2] library for non-commercial projects. [1] https://trueskill.org/ https://trueskill.org/ [2] https://github.com/sublee/trueskill/blob/master/LICENSE https://github.com/sublee/trueskill/blob/master/LICENSE
- asymptotically3 6y agoIf it's BSD licensed, how do they limit it to non-commercial use?
- stephencanon 6y agoBSD doesn’t have a patent grant, so it would still be protected by patent, even if there’s no copyright restriction on commercial entities using the code.
- philihp 6y agoI wrote this library: https://www.npmjs.com/package/openskill https://www.npmjs.com/package/openskill It's open-license, handles complex matchups (e.g. 5 vs. 3 vs. 4), comparable in predictive accuracy, and is up to 20x faster than TrueSkill. The implementation is also much simpler.
- nwallin 6y agoElo is not a matchmaking system, Elo is a rating system. Elo tells you how skilled a player is, how surprising a result (win, loss, draw if applicable) is, and how a player's rating should change based on a result and how surprising the result was. It does NOT tell you who should be matched up against who. > The biggest issue is fun is not the same fair and its a lot more complicated to tune for fun. > You could, for example, play 100 matches where you were given the closest opponent but at a disadvantage for every single match. There's a lot of other scenarios around how you want to fold in ping based match making and how that smaller pool effects the fairness of the matchhing. Elo tells the system that if you play 100 games at a disadvantage, your rating should not go down as much when you lose, and should jump up more on a win. Elo is the math that tells the system that if your skill does not change, your score does not change, regardless of whether you play 100 games at disadvantage and lose most of them, or play 100 games at an advantage and win most of them. I agree that Elo handles uncertainty poorly; when you're rating a chess player whose career is tracked over the course of decades, this isn't an issue, but online play with transient accounts, players who blip into a game when it's hot and then never play it again, smurfs and account buyers, people who take a break for a while and come back, patches which might radically change the meta, etc, uncertainty should be accounted for. Note that TrueSkill is, for all intents and purposes, just Elo+Bayesian inference. Like Elo, it is a rating system, not a matchmaking system. TrueSkill does not handle the problem of playing 100 games in a row against players who are better than you. TrueSkill, like Elo, just tells you what a result means, not which players should be pitted against each other.
- noxvilleza 6y agoElo-like systems (or various other rating systems) are often as part of a matchmaking algorithm - since you can easily calculate expected game win percentages for each party, and this allows you to create more enjoyable matchups. An example of this happens even in online chess: you're much more likely to be paired against a player with a similar rating, because you're much more likely to enjoy a match against someone similarly skilled.
- jayd16 6y agoAgreed. Elo is fine for ranking. The issue is its used to match make and it isn't great for that.
- smogcutter 6y agoOne issue is that once you find your level, Elo should keep you around a 50/50 win rate. So it doesn’t feel like you’re making progress or improving even if in a real sense you are. It’s also a bad fit for team games. But ranking individual contribution to a team is hard. Even for something like the NBA where there’s obviously a ton of incentive to do this, statistical methods rely on a large sample size and often need to be taken with a grain of salt.
- Kranar 6y agoMost multiplayer games I know of, such as StarCraft, use a different score for single player and multiplayer games. You might have an amazing single player Elo score but a crappy multiplayer score and vice-versa.