Skip to content
This repository has been archived by the owner on Mar 8, 2022. It is now read-only.

roryclaasen/AngularTicTacToe

Repository files navigation

Ultimate TicTacToe (MIT)

Based off my old java project Tic Tac Toe (java) now rebuilt with angular 5

Play the game in your browser at roryclaasen.me/TicTacToe

About

Tic-tac-toe is a simple, 2-player, strategy game played on a board of 9 cells set out in a 3x3 square. The first player places an "X" an any cell. The second player places an "0" in any remaining cell. The players continue taking turns placing their mark in remaining cells. The winner is the first player to place three of his marks in a row, column, or diagonal.

Ultimate Tic-Tac-Toe then takes this a step further and is a 2-player computer game played on a game board comprising nine tic-tac-toe games set out in nine mini-squares within a 3x3 greater-square. Thus, there are 81 cells, arranged in nine 3x3 mini-squares within a greater square.

Rules

Objective:

The objective of this game is to be the first to win three tic-tac-toe games lying in a row, column, or diagonal within the greater-square.

Rules of Play:

  1. The first player may place an "X" in any cell within any mini-square on the board.
  2. The selected cell position within this mini-square corresponds to the mini-square position within the greater-square where the second player must then place an "O".
  3. Thereafter, the two players take turns placing their mark in any unfilled cell within the mini-square dictated by the cell position marked by the previous player. For the first player, this mini-square will be outlined in red.
  4. The first tic-tac-toe winner in a mini-square remains the winner in that mini-square for the remainder of the game.
  5. If a player is sent to a mini-square in which all the cells are filled, the player may next place his mark in any unfilled cell in any other mini-board.

Install

$ git clone https://github.com/roryclaasen/AngularTicTacToe.git AngularTicTacToe
$ cd AngularTicTacToe
$ npm install

If npm install didn't build in the postinstall stage run

$ npm run build.prod

And finally

$ npm start

Starting server listening on http://localhost:4000