X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=fairymax.pod;fp=fairymax.pod;h=e495219d9aef81b041bfdad274d30e55c3c3ed26;hb=3d38490bc3d3716e9894950279e518c17ae6d9d7;hp=0000000000000000000000000000000000000000;hpb=f0f6ce9c3442aba3131f19ce70075df051262e5a;p=fairymax.git diff --git a/fairymax.pod b/fairymax.pod new file mode 100644 index 0000000..e495219 --- /dev/null +++ b/fairymax.pod @@ -0,0 +1,126 @@ +=head1 NAME + +fairymax - xboard-compatible chess and chess-variant engine 'Fairy-Max' + + +=head1 SYNOPSIS + +B [hashSize] [iniFile] + +B [hashSize] [iniFile] + +B [hashSize] [iniFile] + + +=head1 DESCRIPTION + +B is a program that plays chess and chess variants. +It uses the xboard/winboard chess-engine protocol to communicate. +Apart from 'regular' chess (also known as the Mad-Queen variant), +it can play Capablanca chess, gothic chess, knightmate, cylinder chess, +berolina chess, superchess, makruk (Thai chess) and courier chess. +Fairy-Max can be easily configured by the user to play other variants as well, +by modifying the ini file. +This ini file describes the rules of movement +of the participating pieces and the initial board setup. + +Fairy-Max can also play shatranj, +but in this case is not aware of the shatranj rule that a bare king loses. +So it might play sub-optimally in the late end-game. +A version of Fairy-Max adapted to implement the baring rule is +available under the name B. + +Similarly, a version of Fairy-Max adapted to play Xiang Qi (Chinese Chess) +is included in the fmax package as well. + +B is a derivative of the world's (once) smallest chess program +(source-code wise), micro-Max. +The latter measures less that 2000 characters, (about 100 code lines), +and has a computer rating of around 2050 on the CCRL rating list. +Although this is about 1000 rating points behind the world champion, +micro-Max still makes a quite tough opponent even for club players, +although it is not unbeatable. + +The main difference between micro-Max and Fairy-Max is that the latter loads +its move-generator tables, which specify how the various pieces move, +from an external file, so it can be easily adapted to incorporate un-orthodox pieces. +For ease of use of the artificial-intelligence, Fairy-Max is equipped with +I/O routines that allow it to run with the xboard graphical user interface. + +See xboard(6) for instructions about how to use B through xboard. To +start up quickly, you just need the command: B. +However, XBoard might not support symbols for every unorthodox piece in board sizes +different from B, B and B. +It might thius be adviasable to specify a board size as well, e.g. +B +to get correct display of the elephant and general pieces in shatranj. +Note that to be able to play the chess variants, +you will need xboard 4.3.14 or later. + +Fairymax supports multi-PV mode: by specifying a non-zero multi-PV margin in the +Options -> Engine-Settings dialog of XBoard, Fairy-Max will not only print the +principal variation for the best move, but also for every move that approaches +the score of this best move to within the set margin. +(If it does not find the best move on the first try, this might lead to printing +of a few extra lines below the threshold.) + +The fmax.ini file from which Fairy-Max by default takes the piece and game definitions +is a self-documenting text file, +which contains instructions for how to define new pieces and chess variants. +In addition it contains an extensive list of pre-defined pieces, +incuding many not occurring in any of the pre-defined variants, +which the user can draw on to define his own variants. + +Amongst the move types supported by Fairy-Max are normal leaper and slider moves, +(e.g. knight and rook), +divergent moves (i.e. capture and non-capture moves can be different) +hoppers (which jump over other pieces, such as the Chinese cannon or the grasshopper), +lame leapers (the move of which can be blocked on squares they cannot move to, +such as the Chinese horse and elephant), +and any combination thereof, +in every possible direction. +The board width is configurable upto a width of 14 squares, +and cylindrical boards (where left and right edge connect) are supported as well. + +=head1 OPTIONS + +=over 8 + +=item B + +If the first argument to fairymax is numeric, +it is taken as an indicator for the amount of memory Fairy-Max is allowed to use +for its internal hash table. +The default value for this argument, 22, would result in a memory usage of 48MB. +Each next-higher number doubles the memory usage, each next-lower halves it. +Running with less than 6MB (i.e. argument 19) is not recommended. +When fairymax is running under xboard 4.3.15 the hash-table size can be set +through the xboard menus, +making this argument superfluous. + +=item B + +A second or non-numeric first argument is taken as a filename. +Fairy-max will use the mentioned file in stead of its default fmax.ini file +to define the movement of pieces and initial setup of the variants. +This makes it easier to define your own variants. + +=back + + +=head1 SEE ALSO + +xboard(6) + +http://www.chessvariants.org/index/msdisplay.php?itemid=MSfairy-max + +http://home.hccnet.nl/h.g.muller/max-src2.html + +http://www.open-aurec.com/wbforum/viewtopic.php?t=49439 + + +=head1 AUTHOR + +B was written by H.G.Muller . + +This manual page was generated with pod2man(1).