Rev 178 | 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. |
115 | 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. |
||
115 | pmbaty | 8 | |
154 | pmbaty | 9 | ;############################# |
10 | ;# Basic program information # |
||
11 | ;############################# |
||
115 | pmbaty | 12 | [program] |
13 | |||
14 | ; program display name |
||
15 | name = "Fruit Reloaded" |
||
16 | ; program executable |
||
154 | pmbaty | 17 | executable = "Fruit_reloaded.exe" |
151 | pmbaty | 18 | ; optional program arguments |
19 | arguments = "" |
||
192 | pmbaty | 20 | ; minimal Windows version requirement |
21 | winver = 5.1 |
||
115 | pmbaty | 22 | |
154 | pmbaty | 23 | ;######################### |
24 | ;# Reply string patterns # |
||
25 | ;######################### |
||
115 | pmbaty | 26 | [reply strings] |
27 | |||
28 | ; the following pattern immediately precedes a SAN-encoded move reply |
||
154 | pmbaty | 29 | move = "bestmove " |
115 | pmbaty | 30 | |
154 | pmbaty | 31 | ;################################################## |
32 | ;# Engine commands (separate each by a semicolon) # |
||
33 | ;################################################## |
||
115 | 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 |
||
115 | pmbaty | 43 | |
44 | ; command(s) to send to prepare the engine for a new game |
||
154 | pmbaty | 45 | new game = "uci;ucinewgame;setoption name Threads value ${MAX_CORES}" |
46 | |||
47 | ; command(s) to send to setup a board (using a raw FEN string) |
||
178 | pmbaty | 48 | setup table from fen = "position fen ${CURRENT_POS}" |
154 | pmbaty | 49 | |
115 | pmbaty | 50 | ; command(s) to send to order the engine to start playing (when switching sides) |
178 | pmbaty | 51 | play = "position fen ${START_POS} moves ${GAME_HISTORY};go depth ${SEARCH_DEPTH}" |
154 | pmbaty | 52 | |
53 | ; command(s) to send to instruct the engine that its opponent played a move |
||
178 | pmbaty | 54 | move = "position fen ${START_POS} moves ${GAME_HISTORY};go depth ${SEARCH_DEPTH}" |
154 | pmbaty | 55 | |
56 | ; command(s) to send to order the engine to change its last move and force one |
||
57 | force move = "" |
||
58 | |||
115 | 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. |
||
61 | quit = "quit" |