Rev 192 | Details | Compare with Previous | Last modification | View Log | RSS feed
| Rev | Author | Line No. | Line |
|---|---|---|---|
| 154 | pmbaty | 1 | ; Chess engine configuration file for Chess Giants. |
| 32 | pmbaty | 2 | |
| 154 | pmbaty | 3 | ; Chess Giants is engine-agnostic, which means it can handle any CECP-compliant |
| 4 | ; engine, and virtually any state-based engine that communicates using newline- |
||
| 5 | ; terminated ASCII strings over standard IO (stdin/stdout). All it needs is to |
||
| 6 | ; read this configuration file to learn how to talk to the engine, and how to |
||
| 7 | ; interpret the engine's replies. |
||
| 33 | pmbaty | 8 | |
| 154 | pmbaty | 9 | ;############################# |
| 10 | ;# Basic program information # |
||
| 11 | ;############################# |
||
| 33 | pmbaty | 12 | [program] |
| 13 | |||
| 14 | ; program display name |
||
| 154 | pmbaty | 15 | name = "Crafty 25.2" |
| 33 | pmbaty | 16 | ; program executable |
| 40 | pmbaty | 17 | executable = "crafty.exe" |
| 151 | pmbaty | 18 | ; optional program arguments |
| 197 | pmbaty | 19 | arguments = "logpath=C:\Windows\TEMP" |
| 192 | pmbaty | 20 | ; minimal Windows version requirement |
| 21 | winver = 5.1 |
||
| 33 | pmbaty | 22 | |
| 154 | pmbaty | 23 | ;######################### |
| 24 | ;# Reply string patterns # |
||
| 25 | ;######################### |
||
| 33 | pmbaty | 26 | [reply strings] |
| 27 | |||
| 28 | ; the following pattern immediately precedes a SAN-encoded move reply |
||
| 51 | pmbaty | 29 | move = "move " |
| 33 | pmbaty | 30 | |
| 154 | pmbaty | 31 | ;################################################## |
| 32 | ;# Engine commands (separate each by a semicolon) # |
||
| 33 | ;################################################## |
||
| 33 | pmbaty | 34 | [commands] |
| 154 | pmbaty | 35 | ; Special strings: some strings enclosed between ${...} are converted during |
| 36 | ; the game to dynamic values. We call this "variables". Here is the list: |
||
| 37 | ; ${MAX_CORES} -- will be expanded to the maximum number of CPU cores to use |
||
| 178 | pmbaty | 38 | ; ${START_POS} -- will be expanded to the full FEN string of the start pos |
| 154 | pmbaty | 39 | ; ${CURRENT_POS} -- will be expanded to the full FEN string of the current pos |
| 40 | ; ${SEARCH_DEPTH} -- will be expanded to the maximum allowed search depth |
||
| 41 | ; ${LAST_MOVE} -- will be expanded to the last move in long algebraic notation |
||
| 42 | ; ${GAME_HISTORY} -- will be expanded to the game history in long algebraic |
||
| 33 | pmbaty | 43 | |
| 44 | ; command(s) to send to prepare the engine for a new game |
||
| 40 | pmbaty | 45 | new game = "new" |
| 154 | pmbaty | 46 | |
| 47 | ; command(s) to send to setup a board (using a a raw FEN string) |
||
| 48 | setup table from fen = "sd ${SEARCH_DEPTH};setboard ${CURRENT_POS}" |
||
| 49 | |||
| 33 | pmbaty | 50 | ; command(s) to send to order the engine to start playing (when switching sides) |
| 154 | pmbaty | 51 | play = "sd ${SEARCH_DEPTH};go" |
| 52 | |||
| 53 | ; command(s) to send to instruct the engine that its opponent played a move |
||
| 54 | move = "sd ${SEARCH_DEPTH};${LAST_MOVE}" |
||
| 55 | |||
| 56 | ; command(s) to send to order the engine to change its last move and force one |
||
| 57 | force move = "force;undo;${LAST_MOVE};sd ${SEARCH_DEPTH};playother" |
||
| 58 | |||
| 33 | pmbaty | 59 | ; command(s) to send to tell the chess engine to cleanup and quit. if unset, |
| 60 | ; its process will be killed, but at the risk of not saving important data. |
||
| 40 | pmbaty | 61 | quit = "quit" |