Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Run matches between game engines for chess, checkers, and many others.

License

kz04px/cutegames

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

69 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cute Games

Run engine matches for a variety of games, relying on the engines themselves to validate unsupported games. Given this reliance on the engines, that means they have to be both trustworthy and well tested.


UGI Protocol

The Universal Game Interface protocol is a text based protocol used for communication with engines. A currently incomplete overview can be found here.


Why should I use this?

Cute Games is designed to save engine developers from having to implement a program to run engine matches for every game they might be interested in. As such, it may be missing features that a specifically designed program might provide. If such a program exists for the game of interest, it could be the better option.

Some alternatives:


Limitations

Cute Games will only work for games similar in nature to chess. Specifically, that means:

  • Two player
  • Sequential moves

Cute Games can handle games such as:

  • chess
  • checkers
  • reversi
  • go
  • tic tac toe

Cute Games can not handle games such as:

  • poker
  • rock paper scissors

First class support

CuteGames directly supports a select few games and can provide additional features for them, such as move legality checks or using engine protocols from those games. First class games can still be played by engines using the UGI protocol. This includes playing UGI engines against those using a game's native protocol.

First class games:

  • Ataxx with the UAI protocol
  • Chess with the UCI protocol

Build

CMake, a C++20 compiler, and the boost library are required.

git clone https://github.com/kz04px/cutegames
mkdir cutegames/build
cd cutegames/build
cmake ..
cmake --build .

License

Cute Games is released under the MIT license.


Thanks

  • doctest -- The fastest feature-rich C++11/14/17/20 single-header testing framework -- MIT License
  • CLI11 -- CLI11 is a command line parser for C++11 and beyond that provides a rich feature set with a simple and intuitive interface.
  • JSON -- JSON for Modern C++ -- MIT License
  • Termcolor -- Termcolor is a header-only C++ library for printing colored messages to the terminal. Written just for fun with a help of the Force.
  • Boost Process -- Boost.Process is a library to manage system processes -- BSL 1.0
  • libataxx -- A C++ Ataxx library to handle move generation, move validation, and other aspects of the board game Ataxx
  • libchess -- C++ chess library

About

Run matches between game engines for chess, checkers, and many others.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •