Subversion Repositories Games.Chess Giants

Rev

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.
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
19
arguments = ""
33 pmbaty 20
 
154 pmbaty 21
;#########################
22
;# Reply string patterns #
23
;#########################
33 pmbaty 24
[reply strings]
25
 
26
; the following pattern immediately precedes a SAN-encoded move reply
51 pmbaty 27
move = "move "
33 pmbaty 28
 
154 pmbaty 29
;##################################################
30
;# Engine commands (separate each by a semicolon) #
31
;##################################################
33 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
33 pmbaty 41
 
42
; command(s) to send to prepare the engine for a new game
40 pmbaty 43
new game = "new"
154 pmbaty 44
 
45
; command(s) to send to setup a board (using a a raw FEN string)
46
setup table from fen = "sd ${SEARCH_DEPTH};setboard ${CURRENT_POS}"
47
 
33 pmbaty 48
; command(s) to send to order the engine to start playing (when switching sides)
154 pmbaty 49
play = "sd ${SEARCH_DEPTH};go"
50
 
51
; command(s) to send to instruct the engine that its opponent played a move
52
move = "sd ${SEARCH_DEPTH};${LAST_MOVE}"
53
 
54
; command(s) to send to order the engine to change its last move and force one
55
force move = "force;undo;${LAST_MOVE};sd ${SEARCH_DEPTH};playother"
56
 
33 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.
40 pmbaty 59
quit = "quit"