https://github.com/triformine/py-chess-tk
A chess game written with python and Tkinter
https://github.com/triformine/py-chess-tk
chess chess-game python3 tkinter
Last synced: about 1 year ago
JSON representation
A chess game written with python and Tkinter
- Host: GitHub
- URL: https://github.com/triformine/py-chess-tk
- Owner: TriForMine
- License: apache-2.0
- Created: 2022-04-04T10:51:28.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2022-04-11T09:11:26.000Z (about 4 years ago)
- Last Synced: 2024-05-01T17:32:59.842Z (about 2 years ago)
- Topics: chess, chess-game, python3, tkinter
- Language: Python
- Homepage:
- Size: 551 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# [Py Chess Tk](https://github.com/TriForMine/py-chess-tk)
A chess game written in python with tk

This project was made for a university project.
## Features
- Showing the board with pieces
- Show a preview of the movements that are possible.
- Moving pieces.
- Capturing pieces
- Turn by turn with a second player
- Detect checkmate
- Playing against a basic bot using [minimax algorithm](https://towardsdatascience.com/how-a-chess-playing-computer-thinks-about-its-next-move-8f028bd0e7b1) and [alpha-beta pruning](https://www.chessprogramming.org/Alpha-Beta).
- Configuration menu, with restart, bot or 2 players, bot difficulty.
- Prevent illegal/sucidal moves from being done.
## What is missing
This project only includes the basis of chess.
- And doesn't contain everything like **Pawn Promotion, Castling, Passant**.
- It also doesn't contain any save/load board system, neither algebraic notation.
## Check and Checkmate detection
The project implements a basic detection for check and checkmate.
But it might not be perfect and not always detect them.
Be aware of this if you want to play the game.
## Unstable
Be aware that this project is just a demo of what Tkinter and Python can do.
It will probably contain bugs and doesn't detect everything correctly.
## Bot
The project implements a really simple bot using the minimax algorithm.
This bot is not optimized and not really good.
> You shouldn't try using a big depth for the bot, or it will really be slow.
## Will this project be updated in the future?
No, this project was made for a university project, and I will not maintain it as I work on other big projects.
If you want to contribute feel free to open a pull request.
## Why Tkinter?
This was the requirements for that project.
## Where does the images' comes from?
The project uses the following [images](https://commons.m.wikimedia.org/wiki/Category:SVG_chess_pieces) which are under Creative Commons license.
## Thanks
- [CorentinGS](https://github.com/CorentinGS/Chess-Tkinter/) for suggesting some ideas and improvements to the project.