To enable play over the internet, but still allow the player to play by placing stones on a board and hitting a clock, instead of using a mouse, one possibility is to use proxy players.
A possible set-up
- Player A makes move, hits clock A
- Proxy A plays Player A's move on KGS screen (game on KGS has no time limits)
- Proxy B sees move on KGS, plays on board, hits clock B (proxy's clock time is not used for timeout)
- Player B makes move, hits clock B
- Proxy B plays Player B's move on KGS screen
- Proxy A seems Player B's move on KGS, plays on board, hits clock A
There are two venues, A and B. At each venue there is a player, proxy, a pc running custom software and a clock connected to the pc. Each clock has 2 buttons and only one time display, facing the player. The time display shows your and opponent's time. The following procedure is then followed:
- Player A makes a move, hits clock A. This time is then synchronised with clock B as the opponent's time.
- Proxy A plays Player A's move on the custom software
- Proxy B sees the move on the custom software, plays it on board B and hits the clock.
- Player B makes a move, hits clock B. This time is then synced with clock A.
- Proxy A sees the move, plays it, hits clock A.
I propose the slightly different setup above. The advantage is that both players are aware of their opponent's time, while the disadvantage is that is will require custom software and hardware. The hardware and software should be relatively easy to develop, so that in itself should not be a problem. Also, the custom hardware/software do allow for more flexibility and less reliance on the KGS servers. It would be easy to relay the live game to a projected screen and the SGF could obviously be exported after the game. --Francois van Niekerk 07:30, 21 April 2011 (UTC)
The first setup seems simple enough, and can be implemented without any additional hardware or software. The only downside that I see is that neither player can see their opponent's time. The proxy's time should be close enough for a rough idea, though.
The alternative does offer both the ability to see your opponent's time, and also the possibility of flipping the game board on the server, such that both players would see the board as if they are really facing each other.
Given current Android phones, I would assume that a custom server application and a custom time-keeping application for Android would be the simplest method of setting up such a solution.
- While an actual player is thinking, his time on both phones counts down.
- When Player A makes a move, he taps Phone A, stopping his countdown, and sending a signal to the server and Phone B to stop its countdown as well, and also update its time display for Player A. Player B's time doesn't start counting down yet.
- Proxy A records the move on Laptop A, which rotates the board 180 degrees and sends it on to Laptop B for Proxy B to make the move on Board B. Once done, Proxy B taps Phone B, which starts counting down Player B's time, and sends a signal to the server and Phone A to start counting down Player B's time.
- The countdown on Phone A will be considered authoritative for Player A, and likewise Phone B for Player B.
- The countdown for Player A on Phone B and Player B on Phone A will be an approximation, but should be accurate enough that more advanced synchronisation is not required.
- When Phone A is tapped by Player A, it will stop timing and send a signal to Phone B to stop timing. Phone B will not only stop timing, but also update its display to match Phone A's display of Player A's time. This might cause it to add or subtract a second or two to Player A's time, but hopefully not more than that.
- The server can record the game (from either player's perspective), including timing information.
The bigger problem in my opinion would be what happens if and when a proxy mis-records a move. This could have a major impact on the game, especially if it is not picked up for a while. Perhaps having two proxy players at each end, or, assuming there is a tournament director at each end, having him verify each move, could be a solution.
Also, and possibly a minor point, but having the additional delay while the proxy moves are being relayed could give each player more thinking time than they would have in a face-to-face game. Although this would be to both payer's advantage most of the time, in byo-yomo it could be a disadvantage to one player if he is trying a time-tesuji. As time-tesujis are perhaps not in the true spirit of Go, this may not be relevant. Blitz matches, on the other hand, probably can't be played by proxy in any case.
Just my thoughts --Paul Steyn 16:31, 15 November 2011 (UTC)