Skip to content

samlli/Chess-2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

705 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ooga

This project implements a player for multiple related games.

Names: Tarun Amasa (tra23), Richard Deng (rld39), Gordon Kim (kk388), Samuel Li (sbl28), Luis Pereda Amaya (lip4), Albert Yuan (aly11)

Timeline

Start Date: 11/10

Finish Date: 12/6

Hours Spent: 150

Primary Roles

Tarun - powerups Richard - view, all things timer related, Gordon - view, editor mode, model, moves Sam - model, endconditions, moves Luis - login, loading and saving games, boardbuilder and all things config Albert - boardbuilder and all things config, endconditions

Resources Used

all piece image files were taken from Lichess's open source repository: https://github.com/ornicar/lila/tree/master/public/piece

Running the Program

Main class: Main

Data files needed:

  • data/chess/locations/chess.csv
  • data/chess/pieces/*
  • data/chess/powerups/noPowerups.json
  • data/chess/profiles/profiles.json
  • data/chess/rules/default.json
  • data/defaultChess.json
  • src/images/*

Features implemented:

  • Users can pick Chess or Editor Variation
  • Users can create their own pieces, powerup locations, end conditions, and board layouts
  • Users can change the piece style, board color, language, and theme

Cheat Codes: hit 'c', and then select the desired cheat

  • incrementTurnCheat
  • addRandomQueenCheat
  • moveKingRandomCheat
  • transformAllPawnsCheat
  • queenToPawnCheat
  • addTimeCheat
  • removeRandomPieceCheat
  • decrementTimeCheat
  • addRandomPieceCheat
  • addRandomRookCheat
  • addRandomBishopCheat
  • addRandomKnightCheat

Notes/Assumptions

Assumptions or Simplifications:

  • json file contents
    • keys are present, keys are named correctly, the existence of a data/chess/locations, data/chess/pieces, data/chess/rules, data/chess/locations, and data/chess/powerups directories,
  • White always goes first and is at the bottom of the screen
  • Upon a reset, the game reverts to default settings
  • The user only speaks English, Spanish, French, Italian, or German

Interesting data files:

  • data/chess/variantKillPawns - kill 3 pawns to win the game
  • data/chess/variant4PawnLocations - move 4 pawns to the 4 left most squares on the 4th row from the bottom to win the game
  • data/chess/Stalemate - test out stalemate my moving the bottom right rook to the left

Known Bugs: *

Noteworthy Features:

  • Multiple different type of checkmates - regular, eliminating a list of pieces, positioning certain pieces in specific locations
  • multiple different type of powerups - promotion, timer bonuses
  • All types of chess moves (checking, en passant) are functional
  • An editor mode that allows for the user to freely add and remove pieces on the board

Impressions

About

Chess game with custom rule sets and actions

Resources

License

Stars

0 stars

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors