ChessV

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 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.
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:
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.
Since ChessV 2.2, the engine can be set to adjust to their player's needs:
Supported games.
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 'Almost Chess' : 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.