I think it's important to understand what the cancel button actually does right now. When you select your move, it sends instructions to the server that you have selected your move. Once the server receives instructions from both players, the turn plays out. What canceling currently does is tell the server "redact my instructions". It makes it as if you didn't send any instructions at all. Even if the opponent sends through their instructions, it still waits for yours.
If we changed the cancel button to
instead be, "keep current instructions, but override with new instructions once ready", then we would hit an immediate problem - canceling your move
doesn't actually cancel it. If you clicked your move, then clicked "Cancel", the turn could still advance just fine if your opponent also selects their move. What you're describing wouldn't be canceling the move, it would just be changing what was already locked in. You would always be locked in with
some instructions once you click your move.
I think this would be a bad change for a number of reasons:
- Misclicks become more punishing. If you misclicked, but then wanted time to think about what you should click instead, you wouldn't have that option.
- Especially in formats with multiple Pokemon, the extra time it takes to select your moves is a couple seconds. If I was in the middle of re-choosing my moves and what I "canceled" went through, that would suck.
- It is much less intuitive. What you're describing is a "modify choice" button, not "cancel".