Man Linux: Main Page and Category List


       fairymax - xboard-compatible chess and chess-variant engine ’Fairy-Max’


       fairymax [hashSize] [iniFile]

       shamax [hashSize] [iniFile]

       maxqi [hashSize] [iniFile]


       fairymax 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 shamax.

       Similarly, a version of Fairy-Max adapted to play Xiang Qi (Chinese
       Chess) is included in the fmax package as well.

       fairymax 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 fairymax through
       xboard. To start up quickly, you just need the command: xboard -fcp
       fairymax.  However, XBoard might not support symbols for every
       unorthodox piece in board sizes different from bulky, middling and
       petite.  It might thius be adviasable to specify a board size as well,
       e.g.  xboard -fcp shamax -boardSize middling -variant shatranj 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.


               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.

       iniFile 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




       Fairy-Max was written by H.G.Muller <>.

       This manual page was generated with pod2man(1).