Python Easy Chess GUI Save

A Chess GUI based from Python using PySimpleGUI and Python-Chess.

Project README

Python Easy Chess GUI

A Chess GUI based from Python using PySimpleGUI and Python-Chess modules. Users can also load a chess engine and play with it. This program is based on a demo chess against ai from PySimpleGUI.

Command line to compile the source to exe using pyinstaller.

pyinstaller python_easy_chess_gui.py -F -w

Then add the folders for the exe to work.

A. Requirements

If you want to run from the python source the following are required or see the installation section below.

  • Python 3.7 and up
  • Python-chess v0.28.0 and up
  • PySimpleGUI 4.4.1 and up
  • Pyperclip
  • Download this repo

Or you can just download the executable file along with other files such as book and images.

B. Features

1. Save games to repertoire pgn files

2. Install uci engine of your choice

Configure engine via Engine->Manage->Edit, select engine and press modify.

3. Need book assistance? Right-click on BOOK 2 and press show

4. Need what engine adviser will think about the position? Right-click on Adviser and press start

C. Installation

  1. If you want to run from the source code
  1. If you want to run from the exe
  • Download the exe file from the release link

Note

If you are on linux be sure to give permission to uci engine with:
chmod +x uci_engine_fn.

D. How to

To start the gui

  • Execute python_easy_chess_gui.py
    Typical command line:
    python python_easy_chess_gui.py
  • Execute the exe when using exe file

To play as white

  • Mode->Play
  • Move the piece you want to move
  • Press the square you want the piece to move to

To play as black

  • If current mode is Neutral, Board->Flip, flip such that black pieces are at the bottom
  • If current mode is Play, Mode->Neutral, then Board->Flip
  • Mode->Play
  • Engine->Go

To paste a FEN

  • You should be in Play mode. If not, then Mode->Play
  • FEN->Paste
  • If you play as white, you can make your move
  • If you play as black, Engine->Go

To flip board

  • If current mode is Neutral, Board->Flip
  • If current mode is Play, Mode->Neutral, then Board->Flip

To set opponent engine book options

  • Book->Set Book, only available in Neutral mode. This book is used by your opponent engine. This book is named pecg_book.bin and is located in Book folder. You can build a polyglot book name it pecg_book.bin and replace the default.

To Hide/Unhide engine search info

  • Right-click on Opponent Search Info label an press Show. This would only work on Play mode.

To Hide/Unhide Book info

  • Right-click on BOOK 1 or BOOK 2 labels and press Show. This would only work on Play mode.

To request Adviser search info

  • Right-click on Adviser and press start. This would only work on Play mode.

To select opponent engine

  • Engine->Set Engine Opponent, available only in Neutral mode.

To set time control of engine

  • Time->Engine

To set time control of user

  • Time->User

To install engine

  • Engine->Manage->Install
    This is only accessible in Neutral mode. After the uci engine is installed, you have to Edit it to modify its options, etc. Only uci engines are supported so far.
  • Engine->Manage->Edit

To Edit engine

  • Engine->Manage->Edit

To delete engine from config file

  • Engine->Manage->Delete

E. Credits

Open Source Agenda is not affiliated with "Python Easy Chess GUI" Project. README Source: fsmosca/Python-Easy-Chess-GUI
Stars
150
Open Issues
12
Last Commit
2 months ago

Open Source Agenda Badge

Open Source Agenda Rating