Author: Georg v. Zimmermann
Date: 13:57:50 12/05/03
Go up one level in this thread
In my old engine I had something similar , char attacks[COLOR][square] = number of attacks on that square. It could be used for exactly the things you are describing - the move ordering in Sunsetter is pretty good - I seldom get <95% fh. But then with my limited bit-fiddling skills keeping those attack tables updated is simply too slow - I got only around 180knps on a Duron 800. Georg On December 05, 2003 at 16:43:15, Dann Corbit wrote: >On December 05, 2003 at 14:18:27, Georg v. Zimmermann wrote: > >>Hi, >> >>just had a little idea and was wondering whether anyone of you is doing that. >>When in check there are obviously two ways to generate moves, either flip >>through all pieces and see whether they can capture attacker/ move in between, >>or flip through the in-between squares and see whether pieces can move there. >>Now usually b) will be faster. But in some positions when the attacker is far >>aways from the king and few pieces are left, a) will be faster. I wonder if >>someone has 2 versions and uses a) or b) depending on the board situation ? It >>is an insignificant gain in an insignificant function, I know. But still ... > >I have a bitmap of every square (whether occupied by white or black) that is >attacked by white, and also every square (whether occupied by white or black) >that is attacked by black. > >Incheck(white) is just kingbitmap[white] & blackattacks >Incheck(black) is just kingbitmap[black] & whiteattacks > >It's also useful for other things like move ordering.
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.