The Accessible Chess Tutor (ACT) is a software package that allows visually disabled people to learn and play chess.
The first motivation I had was a fourth grade classroom in Durham County where the children play chess when they are given free time. The students who cannot play chess either have to "help" another student who knows how to play, or they try to play with a handout guide that describes the moves. This does not work because the students who know how to play don't want to waste their free time playing with a "less advanced" player. This, unfortunately, leads to frustration and discouragement on the part of the student trying to learn. In the end, they often just give up.
The second motivation was the blind community. The blind play traditional chess using tactile boards where the squares are dimpled and each piece has a unique shape. While the tectile boards are available for purchase, electronic chess games are not available for a blind player. There are, however, many freely downloadable chess games on the Internet. While these games are fun to play for a sighted user, they are completely inaccessible for those who are visually impaired because they depend on being able to see the board. There are two applications that claim to be accessible to the blind; however each has drawbacks. KChess Elite will cost each user $45 and is compatible with existing screenreading software. This requires a gamer to have both KChess Elite and a screenreader installed. The second software package is Winboard. This free program is compatible with JAWS and requires users to use a mouse. As learned during this semester, the blind do not use mice, only the keyboard. I decided that I wanted to remedy the lack of accessible chess games so that anybody can play, regardless of a functional visual system.
ACT provides two modes of operation: tutorial and manual. Tutorial mode provides a player with all the possible moves a piece can make. This mode is intended for players who are learning the rules of chess. The second mode, allows manual control of the pieces. The game will not allow an illegal move, and this mode is meant to be used by more advanced players who do not need all the moves described for them. It is easy to switch between modes so that two players of different skill levels can still play together.
The game is played only via the keyboard: using only the spacebar, enter key, arrows, and escape key. This decision was made to not require the user to "button-mash" in order to perform simple operations. The focus of the game should be on strategic chess moves, not how to make a piece move as desired. ACT also provides voice play-by-play for all possible moves and moves made. There are two different voices, one for each respective color. I chose this method to separate the teams because the visually imparied player may not have a concept of red and blue (the two team colors). Voices provide an auditory differentiation.
The final component that I added is a simulation mode that removes the visual portion of the game. It is an interesting exercise to try playing the game without being able to see the board. It helps a sighted person understand how a visually impaired player plays.
ACT was developed in C++ utilizing openGL and GLUT. The speech was provided by Microsoft's Speech API (MSAPI) 5.1. Below are two different downloads. The first is the executable for ACT. The folder only need be copied to the machine where ACT is to run. The destination machine must have the Visual Studio and MSAPI library files installed. The second download is the source tree. Included in the source zip file are the Visual Studio .NET project files.
The arrow keys move the cursor square around the board. As a space is entered, the piece on that space is spoken by the appropriate voice. The space bar will select the square under the cursor. If in tutorial mode, the valid moves are shown and they can be walked through via the spacebar. If in manual mode, the spacebar selected the cursored square and then the arrow keys can be used to select the destination square. When the desired destination square is found in either mode, the enter key performs the move. The voice making the move will preface the move by saying either "Blue Moves" or "Red Moves". This catch phrase provides an auditory contrast to the typical "query" announcement that describes the state of the board. The escape key will change between tutorial and manual mode. The forward slash button (one with the question mark) will announce whose move it is.