Subversion Repositories Games.Chess Giants

Rev

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.
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 = ""
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"