check, p27, mate, 1reply, and recap
My plan, is to try 'fractional' extensions again.
Some pseudo code with extension stuff:
- Code: Select all
search(alpha, beta, depth, extensions){
if(is_one_reply_to_check) extensions += 1rep;
if(is_mate_threat) extensions += mate;
for each move{
domove()
ext_move = extensions
if(is_check) ext_move += check;
if(is_p27th) ext_move += p27th;
if(is_recap) ext_move += recap;
if(ext_move >= ONEPLY){
extend = 1;
ext_move -= ONEPLY;
if(ext_move >= ONEPLY) ext_move = 3 * ONEPLY / 4;
}
val = -search(-beta, -alpha, depth+extend-1, ext_move)
.....
}
}
Does this basically make sense, or am I missing something?
[besides syntax errors, misspellings, and non-conventional practices ]