=head1 NAME

kingslayer - xboard-compatible chess engine


=head1 SYNOPSIS

B<kingslayer>


=head1 DESCRIPTION

B<kingslayer> is a program that plays chess. 
It uses the xboard/winboard chess-engine protocol to communicate.

The reason for creating kingslayer was to have a source code
of a simple chess engine, which could be used as a teaching example.
The source code is therefore heavily commented.
As the world is already saturated with engines that play orthodox Chess,
and kingslayer is not a particularly strong one,
the binary itself is not of much interest, although it of course works.
Kingslayers algorithm is based on a 'mailbox' board representation,
and it search uses null-move pruning and late-move reductions.
Its evaluation is based on material value as a function of piece location,
('piece-square tables'),
piece mobility,
pawn structure (passers, isolated and doubled pawns),
king-shield quality, drawishness for lack of mating potential,
with recognizers for well-known draw positions in some simple end-games (like KPK, KQKP),
some special patterns of trapped pieces, and king-seige.
Most of these evaluation terms are game-phase dependent.

As kingslayer's move encoding and execution is such that any move can
have either an additional en-passant victim or be a promotion,
the engine can be easily converted to play chess variants that involve double capture.
Future versions therefore might also support mighty-lion chess and werewolf chess.

See xboard(6) for instructions about how to use B<kingslayer> through xboard.
To start up quickly, you just need the command: B<xboard -fcp kingslayer>.

=head1 OPTIONS

=over 8

=item B<INTERACTIVE OPTIONS>

Kingslayer supports options that can only be set interactively,
though XBoard's engine settings menu dialog.
These mainly concern enabling of its evaluation features.


=back

=head1 AVAILABILITY

At http://hgm.nubati.net/cgi-bin/gitweb.cgi the source code can be obtained.

=head1 SEE ALSO

xboard(6)

XBoard: http://hgm.nubati.net

=head1 STANDARDS

WinBoard, B<xboard>(6) interface ("Chess Engine Communication Protocol")

=head1 AUTHOR

H.G.Muller <h.g.muller@hccnet.nl>.

This manual page was generated with pod2man(1).
