Você está na página 1de 2

Header:

Omitted for confidentiality


Description:
The classic game of chess revamped and remade for the PC. There are many
different game modes including an expert mode with a point system and timer for
each turn, a crazy chess mode with special moves, and a chess editor mode where
a user can setup a new formation and even create new pieces, by combining the o
nes available. The classic and expert modes have a foolproof stalemate/checkmate
system, and special moves including castling and pawn promotion. The additional
gamemodes provide a different angle of play, and allow the user to get lost in
the complex strategy that is chess.
Instructions:
Run the program and select one of the game modes. Classic, "Vanilla" che
ss will work like normal chess, with white side going first and the turn switchi
ng after every move. For the chess editor mode, the board will begin in the defa
ult chess set and in an editing mode. Once the edits are finished, hit the Start
Game button and play. After the game has started, the pieces may no longer be e
dited. Crazy chess starts the same way as normal chess, except that each piece h
as a special move that is available after a certain number of turns, which depen
ds on the number of points the piece is worth. The pawns can attack forward afte
r 1 turn by that user. The knights can boomerang, moving to a square and then ba
ck in the same turn, after 3 turns. Bishops can move like a rook for 1 turn afte
r 3 of its moves. Rooks can destroy the opposite colored pieces in its 4 adjacen
t squares after 5 of its turns, and the queen and king can destroy all surroundi
ng opposite-colored pieces after 9 moves. All special moves are activated by a b
utton on the side. After the piece is selected, the user can press the button to
change the possible moves and activate the move, resetting the piece's countdow
n back to 0. In Crazy Chess, there is no check: once one of the kings is taken,
the game is finished. For all modes, after a checkmate or stalemate, choose an o
ption to exit, play again, or exit to the menu to play a different game mode. Ex
pert Chess has timers that automatically switch when one of the players makes a
move. All modes are equipped with a save and load game feature, which saves the
game to an empty slot, with the current positions and turn state of all of the p
ieces.
Features:
-Must-Haves
-Working, classic Chess with a working checkmate/stalemate system, with the sa
me rules that
classic chess has, including castling and pawn promotion
-Expert Chess, with chess timers and a points system for the hardcore chess ma
sters
-A Crazy Chess mode, with different pieces and less focus on check and checkma
te and more on defeating your enemies in new and improved ways. Once king taken,
game ended
-Chess editor, with options for inserting different pieces in and then "runnin
g" the existing configuration like a game.
-File input/output - allows for saving and storing games, or loading from an e
xisting one
-Want-to-haves
-Checkers option - working checkers in as one of the options
-Different inputs - Mouse or typing in commands such as "E5-C6"
-Instruction manual - pull down menu, describes pieces and move set. Different
according to skin and gamemode
-Fancy Menus - no JOptionPanes except for Checkmate Warning - instead small ch
essboards with squares that choose between modes

-Different toggleable "skins" and styles for chess pieces


-Graphics to highlight possible moves
-Stretch features
-AI - working AI that moves pieces against you and tries to optimize moves, i.
e. not based on moving random pieces to random places. Prioritizes moves based o
n points gained/lost and moving closer to checkmating the opponent.
-3-Dimensional chess inspired by The Big Bang Theory. A GUI on the side choose
s between different layers of boards. Moving up/down through spaces counts as a
move. More pieces to compensate for added difficulty
-Networking - playing aginst another client across the room
-Smooth animation for pieces moving and capturing - instead of just teleportin
g to squares
-Create a mode for Bughouse chess, with two teams of two differently colored p
layers on two different boards. Players can place any pieces their partner has c
aptured on their board for their move, as long as it does not create a check
Class List
-ChessMain - contains the main method, creates ChessMenu window
-ChessWindow - extends JFrame, contains the current board, and has drop-down men
us for saving/loading and for the instructions
-For Editor, includes JButton for starting a game
-For CrazyChess, includes JButton for activating a selected Piece's special m
ove
-FileIO - gets or sets to a file in the project
-GameTranslator - interprets saved file, and creates a new board from it, or wri
tes the current board to the save file
-Instructions - extends JFrame - displays rules for the current gameboard
-CrazyChess - extends ChessBoard - loads a new CrazyBoard
-ChessBoard - extends JPanel - Contains ChessSquares, and all the pieces alive o
n the board. Handles piece selection/movement as well as check, checkmate, and s
talemate
-ExpertBoard - has a chessboard and two MasterTimers
-BoardListener - an interface that may be added to the ChessBoard, and notified
of changes
-CrazyBoard - extends ChessBoard, setups/handles CrazyPieces, and their rules, i
ncluding validity of CrazyPieces' specialMove. ChessSquares are the same as the
ChessBoard
-Editor - extends ChessBoard, includes methods for adding, removing pieces, and
playing from a configuration
-ChessSquare - Stores its location with a coordinate system. Determines if a mou
se's coordinates are inside its hit box. May or may not contain a Piece
-Piece - abstract class - stores color, type, icon, and has method to get valid
moves
-[Pawn, Bishop, Knight, Rook, Queen, King] - extend Piece, have overridden metho
ds for getMove()
Responsibilities
Person A: ChessWindow, ChessBoards (normal crazy), ChessSquare, Pieces, ExpertBo
ard, MasterTimer, BoardListener, Instructions - loading text.
Person B: ChessMain, Editor, ChessWindow, FileIO, GameTranslator, Instructions,
saving/loading game, exiting to main methods, style and look and feel

Você também pode gostar