Crafty 7.x Version History
- 7.6
- null move search now searches with R=2, unless within 3 plies of the
quiescence search, then it searches nulls with R=1.
- 7.5
- repetition code modified. it could store at repetition_list[-1] which
clobbered the long long word just in front of this array.
- 7.4
- performance improvements produced by elimination of bit-fields. this was
accomplished by hand-coding the necessary ands, ors, and shifts necessary to
accomplish the same thing, only faster.
- 7.3
- Evaluate() is no longer called if material is too far outside the
current alpha/beta window. the time-consuming part of Evaluate() is no
longer done if the major scoring contributors in Evaluate() haven't pulled
the score within the alpha/beta window, and the remainder of Evaluate()
can't possible accomplish this either. gross error in EvaluatePawns() fixed,
which would "forget" all of the pawn scoring done up to the point where
doubled white pawns were found. error was xx=+ rather than xx+=, which had
an extremely harmful on pawn structure evaluation.
- 7.2
- major clean-up of MakeMove() using macros to make it easier to read and
understand. ditto for other modules as well. fixed a bug in Evaluate() where
bishop scoring failed in endgame situations, and discouraged king
centralization.
- 7.1
- modified next.c and nextc.c so that they check "mvv_lva_ordering" to
determine which capture ordering strategy to use. note that setting this to
"1" (default at present) disables the forward pruning in quiescence search
that wants to cull losing captures.
- 7.0
- removed the to.attack and from.attack bitboards. these are now computed
as needed, using the rotated bitboards. hung piece stuff removed due to lack
of any verified benefit.
Lim Unlimited / 24 Jul 1996