Tic Tac Toe ++ is a 3- or 4-player version of the old 2-person game. The
method of play is exactly the same -- players take turns putting one of their
markers on the board. The way of winning is also exactly the same -- get 3 of
your markers in a row, vertically, diagonally, or horizontally. The
boards are different. The 3-player game is played on a 4 x 4 board,
and the 4-player on a 6 x 6 board. In the 2 player game, only a mistake
by one player can allow the other player to win. It might be the same for
ttt++ but it has resisted my attempts to analyze it. At the
least, it is much more likely that a player will make a mistake in this game.
All the game requires is a browser to play. No downloads. Probably,
it will only play in Internet Explorer, but I have not tested that theory yet.
To play, contact 2 or 3 other people, settle on a game name, and a time to
play. If you want to test it all by yourself, you will need to
start 3 or 4 browser instances and simulate multiple players.
Then point your browser to
www.mccprogramming.com/tictactoepp/signon.aspx . The first player clicks on
the link to start a new game, then types in the name, chooses 3 or 4 players,
and submits it. Then all the players, including the first, have to sign
on to the game. To sign on, enter a name. You may use one of the
already entered names (Martin, Tom, Ira, John, Walt, Alvin), or you may click
on the link to create a new player identity. Then you choose the
game name, and click on one of the supplied symbols. There is as yet no
test to make sure everyon has a different name, but there is one to make
sure everyone has a different symbol. As soon as the 3rd or 4th player
signs on, the application randomly puts the players in playing order and
informs the appropriate player that it is "Your Turn." That player clicks
on the space that he wants to occupy, etc. When a win is achieved, the
application informs all players and stops. A link is provided to join a
new game. So far there are few safety nets in the game. If anyone
does something like accidentally closing his browser in mid-game, the game is
going to be trashed, although it may look like it is still running.
Mostly, Tic Tac Toe ++ is a
Microsoft Net Framework Web Application written in Visual Basic.Net. It
also includes client-side JavaScript and a Web Service, also written in
VB.Net.
When the first player accesses the web site, the application starts up.
The application can recognize a different session for each browser that
contacts it. The application also maintains a collection of games in
progress. Instances of the class, GameInProgress, hold methods and
properties pertaining to a specific game. An Access database holds
permanent player information and some temporary game information.
Every time an update or a new page is requested by the browser, the application
potentially gets information from the text boxes, radio buttons, and button
clicks that were used in the browser. This information is
incorporated in the game, using the class above and occasionally the database.
Then a new page is sent to the browser, incorporating the new state of the
game.
While the game is in progress, the browser is running a timer, activated and
handled by JavaScript routines. When the timer ticks, the browser
sends information and gets information from the Web Service, to find out if it
needs an update. If it does, the routine clicks a hidden button to
request one. The first version of the game did without the web service,
and just did an automatic update every 10 seconds whether there was any new
information or not. This was very irritating.