Author: Michel Langeveld
Date: 07:42:25 01/10/04
Just 2 improvements put the history updating one line lower so from: history[(int)gen_dat[i].m.b.from][(int)gen_dat[i].m.b.to] += depth; if (x >= beta) { return beta; } into: if (x >= beta) { history[(int)gen_dat[i].m.b.from][(int)gen_dat[i].m.b.to] += depth; return beta; } ---------------------------------- Also it helps to make the is_check that it doesn't have to search the king anymore: BOOL in_check(int s) { return attack(kings[s], s ^ 1); } and add into makemove: //king has moved if (piece[m.to] == KING) { kings[side] = m.to; } and into restoremove: //change location of king if (piece[m.to] == KING) { kings[side] = m.from; } Does someone knows other tricks?
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.