Rev 154 | Go to most recent revision | 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. | 
| 100 | 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. | ||
| 100 | pmbaty | 8 | |
| 154 | pmbaty | 9 | ;############################# | 
| 10 | ;# Basic program information # | ||
| 11 | ;############################# | ||
| 100 | pmbaty | 12 | [program] | 
| 13 | |||
| 14 | ; program display name | ||
| 15 | name = "Texel 1.05" | ||
| 16 | ; program executable | ||
| 154 | pmbaty | 17 | executable = "texel.exe" | 
| 151 | pmbaty | 18 | ; optional program arguments | 
| 19 | arguments = "" | ||
| 100 | pmbaty | 20 | |
| 154 | pmbaty | 21 | ;######################### | 
| 22 | ;# Reply string patterns # | ||
| 23 | ;######################### | ||
| 100 | pmbaty | 24 | [reply strings] | 
| 25 | |||
| 26 | ; the following pattern immediately precedes a SAN-encoded move reply | ||
| 154 | pmbaty | 27 | move = "bestmove " | 
| 100 | pmbaty | 28 | |
| 154 | pmbaty | 29 | ;################################################## | 
| 30 | ;# Engine commands (separate each by a semicolon) # | ||
| 31 | ;################################################## | ||
| 100 | pmbaty | 32 | [commands] | 
| 154 | pmbaty | 33 | ; Special strings: some strings enclosed between ${...} are converted during | 
| 34 | ; the game to dynamic values. We call this "variables". Here is the list: | ||
| 35 | ; ${MAX_CORES} -- will be expanded to the maximum number of CPU cores to use | ||
| 178 | pmbaty | 36 | ; ${START_POS} -- will be expanded to the full FEN string of the start pos | 
| 154 | pmbaty | 37 | ; ${CURRENT_POS} -- will be expanded to the full FEN string of the current pos | 
| 38 | ; ${SEARCH_DEPTH} -- will be expanded to the maximum allowed search depth | ||
| 39 | ; ${LAST_MOVE} -- will be expanded to the last move in long algebraic notation | ||
| 40 | ; ${GAME_HISTORY} -- will be expanded to the game history in long algebraic | ||
| 100 | pmbaty | 41 | |
| 42 | ; command(s) to send to prepare the engine for a new game | ||
| 154 | pmbaty | 43 | new game = "uci;ucinewgame;setoption name Threads value ${MAX_CORES}" | 
| 44 | |||
| 45 | ; command(s) to send to setup a board (using a raw FEN string) | ||
| 178 | pmbaty | 46 | setup table from fen = "position fen ${CURRENT_POS}" | 
| 154 | pmbaty | 47 | |
| 100 | pmbaty | 48 | ; command(s) to send to order the engine to start playing (when switching sides) | 
| 178 | pmbaty | 49 | play = "position fen ${START_POS} moves ${GAME_HISTORY};go depth ${SEARCH_DEPTH}" | 
| 154 | pmbaty | 50 | |
| 51 | ; command(s) to send to instruct the engine that its opponent played a move | ||
| 178 | pmbaty | 52 | move = "position fen ${START_POS} moves ${GAME_HISTORY};go depth ${SEARCH_DEPTH}" | 
| 154 | pmbaty | 53 | |
| 54 | ; command(s) to send to order the engine to change its last move and force one | ||
| 55 | force move = "" | ||
| 56 | |||
| 100 | pmbaty | 57 | ; command(s) to send to tell the chess engine to cleanup and quit. if unset, | 
| 58 | ; its process will be killed, but at the risk of not saving important data. | ||
| 59 | quit = "quit" |