Simple Java Object-Oriented Program

  • Posted:
  • Proposals: 3
  • Remote
  • #106599
  • Archived
Ali M.Marc E.Kayama M. have already sent a proposal.
  • 2

Description

Experience Level: Intermediate
you will need to implement a game called Reversi (also known as Othello). It's a game that's played on a grid of squares, which we'll call the reversi board. The game is played by two players who take alternating turns.

Each turn a player can place a single disk of their color (black or white) on the board based on certain Rules. Depending on the player's disk placement, they may convert opponent pieces to their color. The game ends when a player has no more moves to make (either the board is full or the player has no valid moves) and at this point the player with more disks of their color wins.

Rules:

* The game grid consists of an 8x8 matrix of squares
* The game always starts with a certain initial configuration where each player starts with two pieces diagonally next to each other in the center of the board as seen in the picture below:


* Each player can place only one disk of their color per turn. Black plays first. When placing a disk, the player must place it in a square such that there is at least one straight (horizontal, vertical, or diagonal) line filled with enemy disks between the new disk and another disk of the player's color. To start off with, Black has four possible moves shown as empty black circles in the picture below:


* After placing a disk, the player converts all enemy disks that lie on a straight line (horizontal, vertical, or diagonal) between their new disk and any of their old disks to their color. Another way of thinking about valid moves is that any move that converts at least one enemy disk is a valid move.
* Players take alternating turns, each placing only one disk of their color per turn. The game ends when a player has no valid moves left to play. The winner is the player with more disks of their color.
* If you have never played before, try playing a few games here to familiarize yourself with the rules. NOTE: this does not follow the exact same rules that we will follow - in particular in our version the game ends when a player has no moves remaining.

New Proposal

Create an account now and send a proposal now to get this project.

Sign up

Clarification Board Ask a Question

    There are no clarification messages.