I am writing a bot for FICS for game analysis, and I am using crafty to provide the actual analysis.
While it works in most positions, I noticed that it doesn't produce any output if the position is near mate. For example, in this position
6k1/p1p3pp/2pb1r2/3p4/3R1P2/2P1P2q/PP5Q/R5K1 b - - 2 20
My wild guess is that Crafty doesn't want to produce too much output, so it doesn't output anything for the first second or two, but it stops searching when it sees the mate (within the second or two).
How can I change this behaviour? I don't mind getting lots of output since it's going to be parsed by a program anyways.
cyberfish wrote:I am writing a bot for FICS for game analysis, and I am using crafty to provide the actual analysis.
While it works in most positions, I noticed that it doesn't produce any output if the position is near mate.
My wild guess is that Crafty doesn't want to produce too much output, so it doesn't output anything for the first second or two, but it stops searching when it sees the mate (within the second or two).
How can I change this behaviour? I don't mind getting lots of output since it's going to be parsed by a program anyways.
in the crafty.rc file. In some positions Crafty may still show as little as just the next move in its PV, followed by <HT> or <EGTB>. That's just the way it is.
cyberfish wrote:I am writing a bot for FICS for game analysis, and I am using crafty to provide the actual analysis.
While it works in most positions, I noticed that it doesn't produce any output if the position is near mate. For example, in this position
6k1/p1p3pp/2pb1r2/3p4/3R1P2/2P1P2q/PP5Q/R5K1 b - - 2 20
My wild guess is that Crafty doesn't want to produce too much output, so it doesn't output anything for the first second or two, but it stops searching when it sees the mate (within the second or two).
How can I change this behaviour? I don't mind getting lots of output since it's going to be parsed by a program anyways.
cyberfish@cyberfish-desktop:/data/cpp/AnalyzeBot$ ./crafty
Machine is NUMA, 1 nodes (2 cpus/node)
found computer opening book file [./bookc.bin].
Crafty v22.8 (1 cpus)
White(1): xboard
tellicsnoalias set 1 Crafty v22.8 (1 cpus)
tellicsnoalias kibitz Hello from Crafty v22.8! (1 cpus)
post
force
setboard 6k1/p1p3pp/2pb1r2/3p4/3R1P2/2P1P2q/PP5Q/R5K1 b - - 2 20
analyze
Analyze Mode: type "exit" to terminate.
And it just sits there.
Thanks
I think that the problem is related to instant solution (but it looks like a bug since Crafty should cough up an answer and let you know that there is nothing left to analyze. You can get output by typing go instead of analyze:
cyberfish wrote:I am writing a bot for FICS for game analysis, and I am using crafty to provide the actual analysis.
While it works in most positions, I noticed that it doesn't produce any output if the position is near mate. For example, in this position
6k1/p1p3pp/2pb1r2/3p4/3R1P2/2P1P2q/PP5Q/R5K1 b - - 2 20
My wild guess is that Crafty doesn't want to produce too much output, so it doesn't output anything for the first second or two, but it stops searching when it sees the mate (within the second or two).
How can I change this behaviour? I don't mind getting lots of output since it's going to be parsed by a program anyways.
cyberfish@cyberfish-desktop:/data/cpp/AnalyzeBot$ ./crafty
Machine is NUMA, 1 nodes (2 cpus/node)
found computer opening book file [./bookc.bin].
Crafty v22.8 (1 cpus)
White(1): xboard
tellicsnoalias set 1 Crafty v22.8 (1 cpus)
tellicsnoalias kibitz Hello from Crafty v22.8! (1 cpus)
post
force
setboard 6k1/p1p3pp/2pb1r2/3p4/3R1P2/2P1P2q/PP5Q/R5K1 b - - 2 20
analyze
Analyze Mode: type "exit" to terminate.
And it just sits there.
Thanks
I think that the problem is related to instant solution (but it looks like a bug since Crafty should cough up an answer and let you know that there is nothing left to analyze. You can get output by typing go instead of analyze: