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.
Fairy-Max was derived from micro-Max (also developed by H.G. Muller), one of the smallest programs to play complete FIDE chess. Therefore, Fairy-Max versioning started with version number 4.8, the version of micro-Max used.
Description.
The Fairy-Max module is a chess engine only, but is packaged with WinBoard/XBoard, which serves as the graphical user interface. Users can play against the Fairy-Max engine, or play the engine against other engines. It can also be set up to play two armies against each other, both using the Fairy-Max engine, for the purpose of analyzing chess moves, chess variants, or variant chess pieces.
Capabilities.
Besides classical FIDE chess, Fairy-Max is provided with a large selection of pre-defined games using fairy chess pieces, including shatranj (ancient Arabic chess), xiangqi (Chinese chess), shogi (Japanese chess), makruk (Thai chess), King of the Hill, Capablanca Chess, Courier chess, Berolina chess, Seirawan chess and other chess variants. Users are also able to specify their own board sizes, and define custom chess pieces, so that user-defined chess variants can also be played. Chessboards can be defined with a maximum size of 14 files in width, and 16 ranks in depth.
Playing strength.
The engine's Elo rating fluctuates at around 1900 when playing orthodox chess in CCRL 40/40 chess engine tournament, which roughly corresponds to class A human player.
The author of the program has said "the goal of Fairy-Max is to make an entertaining but beatable opponent to play against in all kind of chess variants."