ChessV

Last updated
ChessV
Chessv.jpg
ChessV-V2.2.png
Two engines playing Capablanca chess in ChessV 2.2
Developer(s) Gregory Strong
Stable release
2.2 / January 22, 2020;23 months ago (2020-01-22)
Operating system Windows
Type Computer chess
License GPL
Website http://www.chessv.org

ChessV (short for Chess Variants) is a free computer program designed to play many chess variants. ChessV is an open-source, universal chess variant program with a graphical user-interface, sophisticated AI, support for opening books and other features of traditional chess programs. The developer of this program, Gregory Strong, has been adding more variants with each release of ChessV. Over 100 chess variants are supported, including the developer's few own variants [1] and other exotic variants, and can be programmed to play additional variants. ChessV is designed to be able to play any game that is reasonably similar to chess. ChessV is one of only a few such programs that exist. The source code of this program is freely available for download as well as the executable program.

Contents

As of ChessV 0.93, it is possible to customize the variants it supports. Of all chess variants supported, two of the most-played variants are probably Fischer Random Chess and Grand Chess.

ChessV is capable of playing:

(including 10 Capablanca Chess variants)

Some of the provided variants can be customized in their details. While users can create custom variants with ChessV 0.93, it needs to be recompiled, which is tedious when programming. ChessV 2.0+ fixes this, using a scripting language. While the pieces in a custom variant have to be chosen from a limited list, this allows ChessV to play hundreds or thousands of variants of each game it directly supports.

Engine features

Search Extensions: check extension, recapture extension, null-move threat extension, PV extension, Futility Pruning and Razoring, History Heuristic, Killer-move heuristic.

Since ChessV 2.2, the engine can be set to adjust to their player's needs:

Current limitations

Supported games

A game of "Chess and a Half" played on ChessV 0.9 (old) ChessV software program with display of "Chess and a Half" game.png
A game of "Chess and a Half" played on ChessV 0.9 (old)

ChessV supports many variants. Other than chess, it supports:

Since ChessV can be programmed to play additional variants, here are a few examples:

Syntax

ChessV code is saved as the extension ".cvc" (ChessV Code). Its syntax is reasonably similar to C#. The scripting language is mostly stable, but creating new rules for new pieces is not supported yet. Here is an example of "Almost Chess" in .cvc code:

Game'AlmostChess':Chess{Invented="1977";InventedBy="Ralph Betza";AddPieceTypes{Queen.Enabled=false;AddPieceType(Chancellor,"Chancellor","C",900,925);}SetGameVariables{Array="rnbckbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBCKBNR";PromotionTypes="CRNB";}}

Competitions

ChessV software won third place in a 2004 Gothic Chess Computer World Championship. [4] [5]

See also

Related Research Articles

Computer chess Computer hardware and software capable of playing chess

Computer chess includes both hardware and software capable of playing chess. Computer chess provides opportunities for players to practice even in the absence of human opponents, and also provides opportunities for analysis, entertainment and training.

Alpha–beta pruning is a search algorithm that seeks to decrease the number of nodes that are evaluated by the minimax algorithm in its search tree. It is an adversarial search algorithm used commonly for machine playing of two-player games. It stops evaluating a move when at least one possibility has been found that proves the move to be worse than a previously examined move. Such moves need not be evaluated further. When applied to a standard minimax tree, it returns the same move as minimax would, but prunes away branches that cannot possibly influence the final decision.

Evaluation function Function in a computer game-playing program that evaluates a game position

An evaluation function, also known as a heuristic evaluation function or static evaluation function, is a function used by game-playing computer programs to estimate the value or goodness of a position in a game tree. Most of the time, the value is either a real number or a quantized integer, often in nths of the value of a playing piece such as a stone in go or a pawn in chess, where n may be tenths, hundredths or other convenient fraction, but sometimes, the value is an array of three values in the unit interval, representing the win, draw, and loss percentages of the position.

XBoard Graphical user interface for chess games

XBoard is a graphical user interface chessboard for chess engines under the X Window System. It is developed and maintained as free software by the GNU project. WinBoard is a port of XBoard to run natively on Microsoft Windows.

In competitive two-player games, the killer heuristic is a move-ordering method based on the observation that a strong move or small set of such moves in a particular position may be equally strong in similar positions at the same move (ply) in the game tree. Retaining such moves obviates the effort of rediscovering them in sibling nodes.

Capablanca chess is a chess variant invented in the 1920s by World Chess Champion José Raúl Capablanca. It incorporates two new pieces and is played on a 10×8 board. Capablanca believed that chess would be played out in a few decades. This threat of "draw death" for chess was his main motivation for creating a more complex version of the game.

Chess engine Computer program for chess analysis and game

In computer chess, a chess engine is a computer program that analyzes chess or chess variant positions, and generates a move or list of moves that it regards as strongest. A chess engine is usually a back end with a command-line interface with no graphics or windowing. Engines are usually used with a front end, a windowed graphical user interface such as Chessbase or WinBoard that the user can interact with via a keyboard, mouse or touchscreen. This allows the user to play against multiple engines without learning a new user interface for each, and allows different engines to play against each other. Many chess engines are now available for mobile phones and tablets, making them even more accessible.

Crafty

Crafty is a chess program written by UAB professor Dr. Robert Hyatt, with continual development and assistance from Michael Byrne, Tracy Riegle, and Peter Skinner. It is directly derived from Cray Blitz, winner of the 1983 and 1986 World Computer Chess Championships. Tord Romstad, the author of Stockfish, described Crafty as "arguably the most important and influential chess program ever".

KnightCap

KnightCap is an open source computer chess engine. Its primary author is Andrew Tridgell and it was created circa 1996. Major contributions have also been made by Jon Baxter and probably minor contributions by a few others. KnightCap is free software released under the GNU GPL.

Negamax search is a variant form of minimax search that relies on the zero-sum property of a two-player game.

Fruit is a chess engine developed by Fabien Letouzey. In the SSDF rating list released on November 24, 2006, Fruit version 2.2.1 had a rating of 2842. In the CEGT rating list released on January 24, 2007, Fruit version 2.2.1 had a rating of 2776.

Zillions of Games General game playing software

Zillions of Games is a commercial general game playing system developed by Jeff Mallett and Mark Lefler in 1998. The game rules are specified with S-expressions, Zillions rule language. It was designed to handle mostly abstract strategy board games or puzzles. After parsing the rules of the game, the system's artificial intelligence can automatically play one or more players. It treats puzzles as solitaire games and its AI can be used to solve them.

Computer Othello Abstract strategy game

Computer Othello refers to computer architecture encompassing computer hardware and computer software capable of playing the game of Othello.

Solving chess means finding an optimal strategy for the game of chess, that is, one by which one of the players can always force a victory, or either can force a draw. It also means more generally solving chess-like games, such as Capablanca chess and infinite chess. According to Zermelo's theorem, a determinable optimal strategy must exist for chess and chess-like games.

<i>Kasparovs Gambit</i> 1993 video game

Kasparov's Gambit, or simply Gambit, is a chess playing computer program created by Heuristic Software and published by Electronic Arts in 1993 based on Socrates II, the only winner of the North American Computer Chess Championship running on a common microcomputer. It was designed for MS-DOS while Garry Kasparov reigned as world champion, whose involvement and support was its key allure.

Computer Arimaa refers to the playing of the board game Arimaa by computer programs.

Fairy-Max

Fairy-Max is a free and open source chess engine which can play orthodox chess as well as chess variants. Among its features is the ability of users to define and use their own custom variant chess pieces for use in games.

Chess variant Games related to, derived from or inspired by chess

A chess variant is a game related to, derived from, or inspired by chess. Such variants can differ from chess in many different ways.

References

  1. "Opulent Chess". The Chess Variant Pages.
  2. https://www.chessvariants.com/rules/chess-and-a-half Chess and a Half,
  3. https://www.chessvariants.com/invention/butterfly-chess Butterfly Chess
  4. The 2004 Gothic Chess Computer World Championship by Ed Trice http://www.chessville.com/GothicChess/ComputerWorldChampionships.htm
  5. Trice E (Dec 2004). "The 2004 Gothic Chess Computer World Championship". ICGA Journal. 27 (4): 249–254. doi:10.3233/ICG-2004-27414.