What is WebChess?

WebChess is an exercise in multiple concurrent usage of a Web page. It is a set of 3 scripts that let individuals from around the world play chess via the World Wide Web. 2 people connect and can play against each other. 2 more people can connect and play against each other. Up to 5 games can be running simultaneously (for now). You're not playing against some dumb computer - you're playing against a real live human who just might kick the pants off you.

Why make WebChess?

Because nobody else had done it yet when I thought of it. I visited the Mercury Project (see the previous page for a link), and was impressed by how it managed to keep track of who was currently operating the robot. There was a big document that explained all about how it worked, but one phrase stood out in my mind - "random tokens". After 24 hours I had the idea of using the token idea and making a human-vs-human chess game on the Web. After 1 week, the game was a reality. I plan to monitor its usage, as well as take email comments, and see what the Web community thinks of it. This same method could work to implement many different games across the Web, including checkers, 5-across, Pente, etc.

How do I use WebChess?

First, sign in.

From the WebChess homepage, select the "sign in" link. You will be taken to the Game Page, or Starter Room, which requires you to fill in a form (i.e. you have to have a forms-compatable browser). If there is anybody waiting for an opponent, their names will appear in a selection list. If you want to play against one of them, select their name on the list. If you don't want to play against any of them, or there isn't anybody to play against, you can start a new game by checking the "Start A New Game" checkbox. In either case, type in your name in the appropriate field, enter your email address, choose your level of play (if you want), and choose between Image or Text playing mode. Image mode will use inlined images to represent the pieces and board (a total of 81 separate images). Text mode uses a text-only chess board, making reloading much faster than when using Images. International users and others who feel that the reload time is way too long should choose Text mode to speed things up. Finally, click the "GO!" button to either play or wait.

If you chose someone to play against, you will begin playing that person. If you decided to wait for an opponent, you will be given a screen that lets you know you don't yet have a partner, with an option to "reload the screen" ("scan the crowd"). I highly recommend that you always choose a link on the page if you can - in this case, you should select the link to reload the page, don't just hit the "reload" button of your browser. "Reloading" checks the Server to see if anybody has come to play against you. When someone does, "reloading" will take you to your chessboard. From there, refer to the "playing" section below.

Second, play chess.

When it is your turn, the page will tell you so, and your pieces on the chessboard will be highlighted. You can select any of your pieces to move by clicking on that piece. The board gets reloaded, and you can select a place to move your piece. Only legal moves will be highlighted on this board - you can't make an illegal move. If you have selected a piece that has no legal moves, you can pick another piece to move by selecting a link on that page. Once you have selected a place to move your piece, the board is redrawn showing your recent move, and you are notified that it isn't your turn. By "reloading" the page (using the link given on that page) every minute or two, you can be sure to know when your opponent has made their move. The Server has no way of notifying you of your turn unless you reload the page.
To castle
To castle, select your king as the piece you want to move. If a castle is legal, you will be allowed to move your king 2 spaces to either the left or right. By selecting that spot as the destination, your king and rook will automatically be moved into the correct positions. You may not castle if: your king is in check; you have previously moved the king; you have previously moved the rook you want to castle with; the king's castle position would put it in check; or if any of the spaces between the king and it's castle position would put the king in check.
To capture en passant
En passant refers to one pawn capturing another pawn that has passed it by using the special "double move" first move allotted to pawns. If an opposing pawn has used a double first move to end up alongside one of your pawns, on your immediate next turn, you may capture that pawn by selecting your pawn as the piece to move, then selecting the space directly behind the opposing pawn (which should be listed as a legal move) as the destination. Your pawn will be moved to that position, and the opposing pawn will be eliminated.
To promote your pawn
You can promote your pawn to either a queen, bishop, knight, or rook by moving it from its starting row all the way to the last row on the opposite side. Once the pawn reaches the last row, a new screen will appear that will ask you what piece you would like to change your pawn into. Click on the playing piece you want, and your pawn will be changed into it when the chess board is re-displayed.

You can leave any time you want to

On every page (except a Token Error notification) there is an option to Quit WebChess. If you want to leave, PLEASE use this option rather than just quitting your browser - using the Quit link at the Server notifies your opponent that you have left, and cleans up some other things that might be left hanging around. Without using the Quit link, the Server and your opponent have no way of knowing that you are no longer connected.

Move History

Near the bottom of most pages is a Move History list. This is a list of moves that have been made by bother players, using standard chess coordinates. For example, one entry might look like this:

3. Black pn: a7 -> a6

This means that on turn #3 (Black's second turn), Black moved a pawn from square A7 to square A6. The rows and columns are labelled on the chessboard, with 8-1 running down the side, and A-H running across the bottom. A move listed in the history of "o-o" or "o-o-o" means that that player castled on their turn. "o-o" is a king-side castle, and "o-o-o" is a queen-side castle.

The Notepad

At the bottom of most pages is a Notepad, where you can send messages to your opponent and where their notes to you are displayed. If you have a note from your opponent, it will be displayed first. Under the note, there is a button to allow you to Erase the note. If you don't erase the note, it will keep showing up until you do. Under the note, or if you don't have a note from your opponent, there is a textfield where you can type in a message to send to your opponent. Enter a note and press the Send Note button to send it to your opponent. They will be shown the message the next time they reload their screen. Notes are limited to 100 characters, and no ":" or ";" are allowed.

A 1-hour time limit

WebChess keeps track of your idle time. If a particular game has not had a new move made for 1 hour, that game will be removed from the Server. This should help make WebChess more accessable, since old games will be deleted automatically.


This option was added in late January. When you sign up at WebChess, you are given a password by the computer. This password will let you jump back into a game from which you were disconnected (i.e. your computer or browser died), or if you get a Token Error in the middle of a game. You should write down your password and hold on to it until your current game is won, lost, or quit. If you get disconnected from your game, all you have to do is get back to Webchess, and from the Starter Room, enter your password in Form 3. If you got your password right, AND your opponent hasn't Quit the Server, AND your game hasn't been timed out (see above), then you'll be put right back into the game like you never left. Fácil, no?

A note about Tokens

Because of the tokens that are used to keep track of who a person is, you are only allowed to move forward, by selecting a link on the current page. Going back (using the "back" button or command in your browser) and then trying a different link will, in most cases, cause a Token Error. If you get a Token Error, your only recourse is to return to the Starter Room and begin again. Your opponent will probably leave after several minutes of not hearing back from you. If you get a Token Error and you don't believe you should have (i.e. you didn't do anything illegal), please send me mail describing exactly what you were doing at the time. I can't guarantee that this server is bug-free, but it has been tested before being opened to the public so I hopefully have found most of the problems.

The pieces

I managed to find some clip art with chess pieces. Resizing them to a reasonable size was not easy, and in the shrinking some detail was lost. (The small size is necessary for Mac and Windows users, so that the board will appear in a single screen). Therefore, here is a list of the pieces and what they are (if you're using a non-graphical browser, the text names of the pieces will be displayed):
Bki - Black King
Wqu - White Queen
Bbi - Black Bishop
Wkn - White Knight
Brk - Black Rook
Wpn - White Pawn
If you play using Text mode, images of the pieces won't be displayed. Pieces are designated by color (either B or W) and a 2-letter piece abbreviation. Examples:

That's it

I hope that most of WebChess is self-explanatory. If you can't find something explained and think I should include it here, please send me email.
Tyler Chambers