lichess-org / lila

♞ lichess.org: the forever free, adless and open source chess server ♞
https://lichess.org
GNU Affero General Public License v3.0
14.91k stars 2.22k forks source link

Tournament aborts should be treated like regular aborts #544

Closed ghost closed 9 years ago

ghost commented 9 years ago

In rated tournaments, if you lose a game due to not moving (15s rule), you also lose rating points. This unfortunately happens sometimes if the player is away from the screen at the start of the tournament, or has to urgently attend to something during the tournament.

It is incredibly frustrating if you are penalized with rating points because of this. See for instance http://en.lichess.org/n3jZDEAI

I think this is not correct, and such games should be treated as "aborted games". The opponent should be awarded tournament points for the walkover, but neither player's rating should be affected just like in non-tournament aborted games.

Some points to clarify:

  1. Only loss by time (15s rule) should be regarded as an "automatic abort".
  2. To make this feature more clear, you could replace the resign button with a abort, forfeit or withdraw from tournament button at the start of the game before no moves have been played (similar to the abort button in non-tournament games).
  3. To prevent misuse of this feature, where players might "rig a tournament" by strategically aborting games against selective players, the player should be automatically withdrawn from the tournament after their first abort. A notice can be provided to make it clear that he/she was automatically withdrawn for not playing. They can always re-join the tournament when they are ready.
  4. Further, to really prevent any abuse, 3 successive walkovers by a player should disqualify the player from the tournament.
Unihedro commented 9 years ago

I'm not sure if this feature is really worth implementing. First, by declaring a need to disqualify players, this would require establishing a way to ban players from a tournament, which is against the FFA nature of tournaments. Additionally, if you "have to urgently attend to something during the tournament", you could had either quickly surrendered and withdrawn, or closed the window until you're back (and hope you haven't lost yet) which stops the matchmaking process (for having withdrawn, or being offline). The tournament expects all players to be focusing anyway, and it's not like you can play in two+ tournaments at once (it disassociates you from the previous one).

Additionally, the existing "resign" feature works. Allow me to quote from the Arena Tournament FAQ:

You are required to make your first move within 30 seconds of your turn. Failing to make a move in this time will forfeit the game to your opponent.

In existing games in tournaments, you can always "abort" a game by surrendering. (I've seen players done this in the past pretty excessively, especially when they're challenged with grandmasters that 1. They have virtually no chance of winning, and 2. Losing doesn't deduct rating because of the bizarre difference). Replacing resigning to aborting before the game starts doesn't change that.

ghost commented 9 years ago

First, by declaring a need to disqualify players, this would require establishing a way to ban players from a tournament, which is against the FFA nature of tournaments.

I only proposed it to ensure the system is not abused. Anyway, point 4 was just something additional. It is not the core essence of my proposal, so I think you missed the point.

Additionally, if you "have to urgently attend to something during the tournament", you could had either quickly surrendered and withdrawn, or closed the window until you're back

That is the ideal way of dealing with urgent matters, except, as the word urgent implies, and as real world usage has shown, it is not always possible. My proposal is to make this a safe guard so that in the unfortunate event that you are not able to withdraw in time, the system does that for you.

I've seen players done this in the past pretty excessively, especially when they're challenged with grandmasters

That would still be possible. The abort button would still forfeit the game. The grandmaster would still get his 2-4 points (depending on his streak status), but the only difference would be that neither of you will have your ratings affected. I believe this is:

  1. Consistent with non-tournament aborts.
  2. Sensible with respect to the Glicko rating algorithm. If you don't play a single move, it doesn't make sense to use that game for computing your elo.
  3. A good safe guard for when you are not able to withdraw. 15s is quite fast, you know!
  4. Fair. Your opponent still gets those tournament points.

Let me also give some additional background why I proposed what I did.

I used to play a lot on chesscube. They had tournaments similar to our Arena tournaments called Warzones. It was great fun, but over time people started abusing the system. Some crazy fanguys made temp accounts and bunched up in tournaments where their favourite chess hero was playing, and then they would collectively all resign against him, so he would rake up tons of points quickly and with no effort and win the tournament. Others simply resigned every single game. I dunno why... Some people participated, just to resign against everyone! There are lots of cases of abusive behaviour.

One day, I discovered lichess. It was a fresh new website. I loved the concept of freedom, anonymity and a minimalistic UI and most importantly, people didn't behave like this. Here, I got good clean games. The rate of early resigns in tournaments is much, much lower than chesscube. I don't know about you, but I consider the early resign behaviour as abusive and against the spirit of the game, which I believe lichess stands for.

So if there is any way that such behaviour can be discouraged, I am all for it.

ornicar commented 9 years ago

Good, therefore you understand why early resign in tournament - which can be accomplished by waiting 15s - is being discouraged by keeping the game rated.

Accidents like the one you encounter should be exceptional, as emergencies that don't even let you the time to withdraw should be just that: exceptional. Such event could also happen during the game while you're winning it. In any case it makes no sense Glicko2 wise, but what can you do, shit happens.

I don't feel like complicating the codebase and rules for it.

ghost commented 9 years ago

If you wish.

ghost commented 9 years ago

I respect your decision @ornicar, I wouldn't do this usually, but I am re-opening this issue because I genuinely feel this is even more a problem now.

Lots of players during today's marathon tournament have been losing games without even moving. It seems lichess is having some connectivity issues due to the unusual stress perhaps. It is incredibly frustrating if you lose 100 rating points for not moving, and you are not even redirected to the game page, so you don't even know there is a game going on, and you just lose just like that.

I would suggest some kind of safeguard for this. Sometimes it is just not in your control.

Whatever solution you chose, I hope this is resolved in some way.

Unihedro commented 9 years ago

The 24 hour tournament probably crushed the servers with the enormous amounts of computation power involved in the tournament matchmaking. This is an extreme case and could be resolved manually (e.g. database rollback for involved games in the tournament).

ghost commented 9 years ago

@Unihedro The damage was already done.

Unihedro commented 9 years ago

@arjuntemurnikar You're implying it can't be repaired (e.g. with a database drop result query), which I doubt.

ghost commented 9 years ago

I agree with @Unihedro, it is exceptional case -- a bug at that -- that has no place in this conversation. We should be thinking about normal, bug-less usage. A bugless program is an unattainable goal but one that should be strived for. All thinking should be focused around a bugless lichess, not the current state of the program.

ghost commented 9 years ago

I know it is an exceptional case. But disasters happen. If tomorrow someone DDOSes lichess, then we will have the same problem.

My main point was that there should be some sort of mechanism to deal with the rating issue. A pre-emptive safeguard. Sure, you could manually correct things every time it happens, but wouldn't it be great if the system is smart enough that it never happens in the first place?

I felt that my suggestion was solving the issue with minimal fuss. I also felt that it made a lot of sense and it was the correct thing to do anyway. Why are tournament aborts treated differently than normal aborts? I think they should not be. It doesn't make any sense to lose/gain rating for 0-move games, tournament or not. (I am not quibing. I have been on both sides of it. Mostly on the receiving end of good fortune. But that doesn't justify it. I feel it is just wrong.)

However, if you are still against it, I will close the issue. Won't reopen again, promise.