Giter VIP home page Giter VIP logo

cutechess's Introduction

Cute Chess

GitHub CI

Cute Chess is a graphical user interface, command-line interface and a library for playing chess. Cute Chess is written in C++ using the Qt framework.

Installation

Binaries

See the Releases page.

Building from source

Cute Chess requires Qt 5.15 or greater, a compiler with C++11 support and cmake. Cute Chess depends on the following Qt 5 modules:

  • qt5-widgets
  • qt5-svg
  • qt5-concurrent
  • qt5-printsupport
  • qt5-testlib (optional: unit tests)

Run these commands:

$ mkdir build
$ cd build
$ cmake ..
$ make

Documentation is available as Unix manual pages in the docs/ directory.

For detailed build instruction for various operating systems, see the Building from source wiki page.

Running

The cutechess program is the graphical user interface of Cute Chess. It can be run either from command-line or from your desktop environment's application launcher.

The cutechess-cli program is the command-line interface for playing games between chess engines. For example, to play ten games between two Sloppy engines (assuming sloppy is in PATH) with a time control of 40 moves in 60 seconds:

$ cutechess-cli -engine cmd=sloppy -engine cmd=sloppy -each proto=xboard tc=40/60 -rounds 10

See cutechess-cli -help for descriptions of the supported options or manuals for full documentation.

License

Cute Chess is released under the GPLv3+ license except for the components in the projects/lib/components and projects/gui/components directories which are released under the MIT License.

Credits

Cute Chess was written by Ilari Pihlajisto, Arto Jonsson and contributors

cutechess's People

Contributors

alwey avatar artoj avatar basil00 avatar ddugovic avatar dependabot[bot] avatar erbsenzaehler avatar gvreuls avatar ianfab avatar ilaripih avatar jjoshua2 avatar kdave avatar mortenlohne avatar prcuvu avatar queensgambit avatar rikardfalkeborn avatar rwst avatar sovaz1997 avatar tilps avatar vondele avatar zz4032 avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

cutechess's Issues

New authentic piece sets for Makruk and Sittuyin

Hi gaintpd! I learned from cjssh1002 about the new pieces to be displayed for Janggi and Xiangqi.

Similarly, will you please consider adding traditional boards/pieces for Makruk (Thai chess) and Sittuyin (Burmese chess) as well? Both variants are already supported in cutechess, and will only require cosmetic changes. They use non-checkered boards. The Sittuyin board also marks its long diagonals.

rnsmksnr_8_pppppppp_8_8_PPPPPPPP_8_RNSKMSNR(2)

The above is the Makruk piece set developed by @Fulmene, and released under CC-BY-SA-4.0. Coming from a Thai player/designer's original effort to lend a more authentic look to the pychess-variants website, the boards and pieces should be pretty authentic in shapes/size/color.

The Sittuyin set below is by @CouchTomato87, also made initially for the same website, and released under CC-BY-4.0. He based the design on diagrams from the official Burmese Sittuyin rules booklet, and they also look quite authentic.

2r2r2_1k1ns3_1snfpppp_pppp4_4PPPP_PPPPFS2_2SNNK2_1R1R4

Thank you!

Makruk2.svg by fulmene: https://github.com/gbtami/pychess-variants/blob/master/static/images/board/makruk2.svg

Sittuyin board by gbtami: https://github.com/gbtami/pychess-variants/blob/master/static/images/board/sittuyin.svg

CouchTomato's Sittuyin pieces in svg: https://github.com/gbtami/pychess-variants/tree/master/static/images/pieces/sittuyin/original

Fulmene's Makruk pieces in svg: https://github.com/gbtami/pychess-variants/tree/master/static/images/pieces/makruk/ada
(This dir contains red pieces as well as the "flipped" wF/rF/bF graphics to represent promoted makruk pawns on the pychess website. The wP/bP are the regular pawns)

An accurate understanding of Janggi "bikjang".

b1

** "RED(black)" Passing in Bikjang state **

  1. Janggi mode: Red can use the passing. Because the score is 1.5 higher, you don't lose. (score pass rules)
  2. Casual mode: Red can use the passing (bikjang/pass = no rules)
  3. Traditional Mode: Draw if Red uses a passing. (pass = no rules)
  4. Modern Mode: Red can use the passing. Because the score is 1.5 higher, you don't lose. (score pass rules)

b2

** Blue(white) Passing in Bikjang state **

  1. Janggi mode: Blue can't use the passing. Because the score is 1.5 low, you will lose. (score pass rules)
  2. Casual mode: No bikjang & no pass rules. (pass or move)
  3. Traditional Mode: Draw if Blue uses a passing.(no rules)
  4. Modern Mode: Blue can't use the passing. Because the score is 1.5 low, you will lose. (score pass rules)

============================================
The rules of Bikjang and Passing apply in duplicate. It is similar to "double check"of chess.

To do list for Janggi

To do list.

Bugs to be fixed.

  1. Perfect implementation of Bikjanggi
  2. janggi pieces image size and stylish janggi board
  3. Change of coordinates (English coordinates of Korea = Winboard coordinates)
  4. Korean language and database Korean search
  5. The normal implementation of the openingbook.

It would be perfect if the five points mentioned above were modified.

Janggi openingbook error

캡처
1rb1k1b1r/3aa4/2ncc1n2/4p1pp1/1p1p5/7P1/1PP1PP2B/2N1C1N2/4AA3/R1B1KC1R1 b - - 31 16

Put this notation and make an opening book, cannon enters the other side.

  1. Ng3 {book} Pab7 {book} 2. Ke1 {book} Ng8 {+0.30/18 5.0s} 3. Nc3 {book} Nc8 {+0.29/18 5.0s} 4. Pih4 {+0.48/15 5.0s} Ke10 {+0.22/18 5.0s} 5. Ade2 {book} Afe9 {+0.17/18 5.0s} 6. Aff2 {book} Cbd8 {book} 7. Cbd3 {book} Ce8 {book} 8. Ca3 {book} Rb10 {+0.28/19 5.0s} 9. Pab4 {book} Ci8 {+0.30/19 5.0s} 10. Rh1 {+0.35/20 5.0s} Pih7 {+0.19/22 5.0s} 11. Chf3 {+0.32/21 5.0s} Ce8 {+0.23/20 5.0s} 12. Ce3 {+0.23/18 5.0s} Add9 {+0.17/19 5.0s} 13. Cf1 {book} Pb6 {book} 14. Ph5 {book} Pcc6 {book} 15. Pgf4 {+0.22/16 5.0s} Pd6 {+0.33/16 5.0s} 16. Bi4 {+0.31/17 5.0s} Cd10 {+0.22/18 5.0s} 17. Ci1 {+0.13/19 5.0s} Rh10 {+0.22/19 5.0s} 18. Cg1 {+0.18/17 5.0s} Pef7 {+0.34/18 5.0s} 19. Pf5 {+0.13/17 5.0s} Nge7 {+0.31/16 5.0s} 20. Pcd4 {+0.17/18 5.0s} Bi7 {+0.37/16 5.0s}

Other situations
캡처2

  1. Ng3 {book} Pab7 {book} 2. Ke1 {book} Ng8 {+0.37/16 5.0s} 3. Nc3 {book} Pih7 {+0.24/18 5.0s} 4. Che3 {book} Ke10 {+0.42/17 5.0s} 5. Cd3 {book} Nc8 {+0.42/18 5.0s} 6. Ade2 {book} Afe9 {+0.43/18 5.0s} 7. Ca3 {book} Rb10 {+0.34/18 5.0s} 8. Pg5 {book} Pgf7 {book} 9. Pab4 {book} Cbd8 {book} 10. Cd3 {book} Ph6 {book} 11. Aff2 {book} Add9 {+0.43/18 5.0s} 12. Cf1 {book} Pa7 {book} 13. Ped4 {book} Ce8 {book} 14. Bge4 {book} Pc6 {book} 15. Pf5 {book} Cd10 {+0.12/16 5.0s} 16. Cd1 {book} Bi7 {+0.13/17 5.0s} 17. Cg1 {book} Ri8 {+0.24/17 5.0s} 18. Ph4 {+0.31/16 5.0s} Pb7 {book} 19. Ri3 {+0.35/17 5.0s} Ba7 {+0.12/17 5.0s} 20. Aff3 {book} Pd6 {+0.15/17 5.0s}

1rb1k1b1r/3aa4/2n1c1n2/p3pp3/2p4p1/5P3/1PPPB3P/2N1C1N2/3cAA3/R1B1KC2R w - - 30 16

I see movement as a problem in the first line of cannon, which is common between the two games.
It seems to be mistaken for something.

Openingbook playback issue

Opening book playback issue.
Openingbook in certain locations do not work.
white works in most positions, but black does not work with openingbook in some movements.

I would like to correct this.

In the picture below, the openingbook is not applied for some movement of white and black. This is a move that has already been entered. However, some locations do not use openingbook.

12122323

Cute janggi win/loss bug (After using the pass)

When playing the game, when the score of the black (red) piece is high, double-click the king and use the "pass" then automatically make the 0-1 decision. Unless Blue "pass" again, the 0-1 judgment is wrong.

The normal janggi rule is play again in white (blue).

but it is automatically changed to "Ke9" in the movement record and is judged as black (red) win.

Many of this bugs appear early in the game.
It works fine after the mid-game.

This is a very serious bug, please fix it as soon as possible.

11
22

There is a bug that cannot be moved

In the picture, the king of white (blue) cannot move up one space. There are no special problems with the rules of movement. The bug is sure.

Ke1->Ke2

3a5/4ak3/9/1pp2pp2/2n3r2/9/P1b1P2PP/3C1cC2/3R4B/3AK4 w 0 1

move bug

"Cute Janggi" move notation problem and game save&load error.

PAWN(P) is missing from Cute janggi's movement record.
So I can't load the game normally after saving.
Request to unite coordinate notation.

Coordinate notation has been separated.
reference pic.
So we cannot share PGN files.
Is there any workaround for this?
좌표

image
This is the coordinates used in Korea.

Issue when installing Cuteches Xiangqi in Windows 10

Hello,

I wanted to install your xiangqi-enabled Cutechess in my computer and I can't get the exe to run. I followed all the steps as described for Windows (https://github.com/cutechess/cutechess/wiki/Building-from-source).

First I installed Qt 5.15.2 - 64 bit. Then I downloaded your master.zip and unzipped it in a folder in Program Files (x86). Then I launched Qt as admin, browsed to the directory and executed the qmake and the mingw32-make commands. Uploading the installation log:

Installation log.txt

Then when I go to the GUI project (C:\Program Files (x86)\Cutechess Xiangqi\projects\gui), I can see a Cutechess.exe file has been generated, but when trying to run it, 4 error pop up asking for some .dll files:

  • Qt5Core.dll
  • Qt5Concurrent.dll
  • Qt5Gui.dll
  • Qt5PrintSupport.dll

Do you know where can I find them? Maybe there was any error during the installation and the needed files were not generated?

Thanks for your help.

Best regards

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.