Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Note that I only need to make tic tac toe, but it should be a general framework to accomodate the other games. The requirements are:

Note that I only need to make tic tac toe, but it should be a general framework to accomodate the other games.

The requirements are: You will create a reusable framework for two-player board games. To demonstrate that your framework can be easily adapted to different games, your design must accommodate all the following games in the same software: Tic-tac-toe. 3x3 board, the first player to place three pieces in a horizontal, vertical, or diagonal row wins. (The Exploratorium, 2000) Reversi aka Othello. 8x8 board, the winner makes pieces of their colour constitute a majority of the pieces on the board at the end of the game. (Masters Traditional Games, n.d.) Nine Mens Morris aka Mills. 24-intersections board, the first player leaves the opponent with fewer than three pieces or no legal moves, by forming vertical or horizontal lines of three in a row. (Masters Traditional Games, n.d.)

To demonstrate the feasibility and effectiveness of the design, you must implement one of the above games using C#.

Your design should extract as much commonality as possible from the different games so that the framework is extensible and reusable for different games. Your design should cater for different modes of play, including: Human vs Human Computer vs Human

With human players, the system must check the validity of moves as they are entered. With computer play, the user should be able to select amongst a range of possible strategies and/or levels of difficulty. You should implement at least the following two strategies: Random selection of a legal move Alpha-beta algorithm The alpha-beta algorithm is the standard look-ahead game-playing algorithm. It requires appropriate board scoring functions, which you should invent and experiment with.

Games should be able to be saved and restored from any state of play. Moves should be undoable and re-doable. A game should be re-playable from any position. This requirement applies to saved games as well (so the history of moves rather than just the current board state needs to be saved).

You should provide at least a primitive help system to assist users with the available commands.

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Mobile Usability

Authors: Jakob Nielsen, Raluca Budiu

1st Edition

0133122131, 9780133122138

More Books

Students also viewed these Programming questions