After enjoying Lichess for a long time this is my major gripe.
Some players seem to make it a habit of abandoning a game when it does not go their way.
It is very frustrating because there is nothing you can do but sit and waste your time watching the timer run out.
The players who make it a habit show a clear trend in their history, they virtually never resign.
What I suggest is using automated statistical analysis to detect such players, and offer an option to filter out "quitters" when automatcally matching players.
Enabling this option means that you will only be matched against other players that:
There already is a system that detects this, and it is being improved! https://github.com/ornicar/lila/issues/5239
Thank you I missed that.
But I do bring new ideas I think.
What I suggest is using automated statistical analysis to detect such players, and offer an option to filter out "quitters" when automatcally matching players.
The biggest difficulty here is accurately detecting such players, and distinguishing them from people with an unstable connection. But that's being worked on!
However, once we can do that, I disagree with adding an option to filter them out. Rather, I believe the way to go is to improve on our existing playban (temporary ban) system. The biggest issue with it currently is that people with an unstable connection may also be hit with it, so we cannot make it much harsher as it stands.
Dealing with stallers/abandoners is something that _we_ should be dealing with. Adding an option to filter them out would scream that we are able to detect them accurately, but choose to only care if a player enables some filter.
The idea behind the filter is the opposite, as I perceive it. It means that we cannot detect the quitters with 100% certitude therefore we do not impose a ban but offer an option for those who care about this issue enough to enable this option, with the risk of false positive.
The idea is not to ban all quitters. This idea is to filter out those who have a high likelihood of being quitters, even if some just have bad connections, in order to significantly improve the experience, with minimal "false positive cost". This is why I would not want this to be mandatory, but to be an option, it would not be fair to ban those who have bad connections and are detected as quitters (it would not be fair to filter them out either, but that is somewhat more acceptable. It's not fair for players who have bad constant bad connections to repetitively put other users through this either).
I understand the difficulty of differentiating disconnections from abandoned games, and that it is easier for use humans to detect things through intuition and investigation.
I don't think it will ever be 100% accurate - it's always a matter of weighting the pros and cons. There will always be false positives, and the more you try to make it perfect (detecting bad connections, detecting quitting from a position of force, detecting trends in the history, etc.), the more it becomes complicated and hard to manage.
You can make it accurate, however complexity is just something that I am weary of. My idea was simple to calculate the ratio of timeouts to losses - based on my observations when I examined the game history of some players that abandoned a game against me.
I have enjoyed Lichess for a long time. I want to say thank you for this great software! You achieved something awesome.
However the problem with quitters has become very frustrating. Good to see that you are looking into it - I support any effort to improve this problem and am willing to put in some work myself (PR, etc.).
Thank you for discussing with me.
Filtering is probably eventually going to separate the pool into two groups: the non-abandoners will play each other and the abandoners will play each other. Which sounds reasonable, but then we're again overly punishing the people with an unstable connection because they'll likely end up in the second group...
Most helpful comment
The biggest difficulty here is accurately detecting such players, and distinguishing them from people with an unstable connection. But that's being worked on!
However, once we can do that, I disagree with adding an option to filter them out. Rather, I believe the way to go is to improve on our existing playban (temporary ban) system. The biggest issue with it currently is that people with an unstable connection may also be hit with it, so we cannot make it much harsher as it stands.
Dealing with stallers/abandoners is something that _we_ should be dealing with. Adding an option to filter them out would scream that we are able to detect them accurately, but choose to only care if a player enables some filter.