Skip to content

GreysonKrystian/chess

Repository files navigation

Chess

C++ Qt

Table of contents

Requirements

Project should be build in C++. Project requires Qt to work. It can be downloaded from here. Project was tested with Qt version 5.15.2 .

Tutorial for building project using Visual Studio

  1. Download Qt VS Tools as extension for Visual Studio
  2. Download Qt (msv2019) version from Qt website
  3. In Qt versions tab in Qt VS Tools add new Qt version (specify path to bin with qmake file.

Project description

(Back to top)

It was university project where we worked in groups of 3. We created chess game where UI was created using QT. The only language of the game is Polish. Player can choose to play with other player (on same machine) or with AI. AI performs random moves, but captures figures when he can and defends king when king is checked. After the game player can replay whole game and save history of moves to file.

Main clases of project:

  • Game Engine
  • Board
  • chess figures
  • main GUI
  • tests classes

Game Engine - supervises current state of the game, contains methods responsible for capturing figures, checks if king is checked, contains chess mechanics such as castling. Moreover the class contains primitive chess AI. Board - checks where figures can move and what moves are currently legal. Chess figures - manages creating, deletign and positioning figures on the board. Main GUI - main QT class which is responsible for displaying the whole game and capturing user inputs.

Possible future improvements

(Back to top)

  • add more tests - the game can still contain bugs because it was not tested enough
  • the game AI is very primitive - the chess lack AI to compete with, solution for this can be better alghoritm such as Minimax
  • better UI - The Qt design could be improved.
  • add menu - there are no menu real at the moment, the options which include resolution and difficulty could be added.
  • improve game mechanics - the game lacks some basic chess mechanics like the pawn promotion for other figure than queen or en Passant.

Screenshots

(Back to top)

MENU:

Screenshot from menu

Screenshot from menu

GAMEPLAY:

Screenshot from menu

Screenshot from menu

Screenshot from menu


License

(Back to top)

The MIT License (MIT) 2022 - Krystian Grela, Aleksander Woś, Adam Wróblewski. Please have a look at the LICENCE.md for more details. We are NOT authors of gifs and chess figures images which are included in this project.

About

implementation of Chess in C++. University group project.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages