Subversion Repositories Games.Chess Giants

Rev

Rev 151 | Rev 178 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 151 Rev 154
Line 1... Line 1...
1
# Chess engine configuration file for Chess Giants.
1
; Chess engine configuration file for Chess Giants.
2
 
2
 
3
# Chess Giants is engine-agnostic, which means it can handle any CECP-compliant
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-
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
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
6
; read this configuration file to learn how to talk to the engine, and how to
7
# interpret the engine's replies.
7
; interpret the engine's replies.
8
 
8
 
9
# IMPORTANT: UCI engines are "stateless" engines. These engines work in a very
-
 
10
# different way and therefore an adapter program such as Polyglot must be used.
-
 
11
# See the "Fruit" or "Stockfish" engine configuration files for an example.
-
 
12
 
-
 
13
#############################
9
;#############################
14
# Basic program information #
10
;# Basic program information #
15
#############################
11
;#############################
16
[program]
12
[program]
17
 
13
 
18
; program display name
14
; program display name
19
name = "Crafty 25.0.1"
15
name = "Crafty 25.2"
20
; program executable
16
; program executable
21
executable = "crafty.exe"
17
executable = "crafty.exe"
22
; optional program arguments
18
; optional program arguments
23
arguments = ""
19
arguments = ""
24
 
20
 
25
#########################
21
;#########################
26
# Reply string patterns #
22
;# Reply string patterns #
27
#########################
23
;#########################
28
[reply strings]
24
[reply strings]
29
 
25
 
30
; the following pattern immediately precedes a SAN-encoded move reply
26
; the following pattern immediately precedes a SAN-encoded move reply
31
move = "move "
27
move = "move "
32
 
28
 
33
###################
29
;##################################################
34
# Engine commands #
30
;# Engine commands (separate each by a semicolon) #
35
###################
31
;##################################################
36
[commands]
32
[commands]
-
 
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
-
 
36
; ${CURRENT_POS} -- will be expanded to the full FEN string of the current pos
-
 
37
; ${SEARCH_DEPTH} -- will be expanded to the maximum allowed search depth
-
 
38
; ${LAST_MOVE} -- will be expanded to the last move in long algebraic notation
-
 
39
; ${GAME_HISTORY} -- will be expanded to the game history in long algebraic
37
 
40
 
38
; command(s) to send to prepare the engine for a new game
41
; command(s) to send to prepare the engine for a new game
39
new game = "new"
42
new game = "new"
-
 
43
 
40
; command(s) to send to setup a board (%s replaced by a raw FEN string)
44
; command(s) to send to setup a board (using a a raw FEN string)
41
setup table from fen = "setboard %s"
45
setup table from fen = "sd ${SEARCH_DEPTH};setboard ${CURRENT_POS}"
42
; command(s) to send to set the max search depth (%d replaced by an integer value)
-
 
43
search depth set = "sd %d"
-
 
-
 
46
 
44
; command(s) to send to order the engine to start playing (when switching sides)
47
; command(s) to send to order the engine to start playing (when switching sides)
45
play = "go"
48
play = "sd ${SEARCH_DEPTH};go"
-
 
49
 
46
; command(s) to send to instruct the engine that its opponent played a specific
50
; command(s) to send to instruct the engine that its opponent played a move
47
; move (%s replaced by a 'b1c3'-style encoded move string)
51
move = "sd ${SEARCH_DEPTH};${LAST_MOVE}"
48
move = "%s"
52
 
49
; command(s) to send to order the engine to discard its preferred move and play
53
; command(s) to send to order the engine to change its last move and force one
50
; a specific move instead (%s replaced by a 'b1c3'-style encoded move string)
-
 
51
force move = "force;undo;%s;playother"
54
force move = "force;undo;${LAST_MOVE};sd ${SEARCH_DEPTH};playother"
-
 
55
 
52
; command(s) to send to tell the chess engine to cleanup and quit. if unset,
56
; command(s) to send to tell the chess engine to cleanup and quit. if unset,
53
; its process will be killed, but at the risk of not saving important data.
57
; its process will be killed, but at the risk of not saving important data.
54
quit = "quit"
58
quit = "quit"