bug-gnu-chess
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

possible mistake in ScoreP


From: Bernard Helmstetter
Subject: possible mistake in ScoreP
Date: Tue, 21 Jan 2003 02:13:41 +0100
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.1) Gecko/20020826

Hi everybody,

There might be a mistake in the function ScoreP in eval.c:

  /* Pawn on f6/c6 with Queen against castled king is very strong */
  c = board.b[side][pawn];
  sq = board.king[xside];
  if (side == white && board.b[side][queen] &&
   (BitPosArray[C6] | BitPosArray[F6]) & c)
  {
     if (c & BitPosArray[F6] && sq > H6 && distance[sq][G7]==1)
        s += PAWNNEARKING;
     if (c & BitPosArray[C6] && sq > H6 && distance[sq][B7]==1)
        s += PAWNNEARKING;
  }
  else if (side == black && board.b[side][queen] &&
   (BitPosArray[C3] | BitPosArray[F3]) & c)
  {
     if (c & BitPosArray[F3] && sq < A3 && distance[sq][G2]==1)
        s += PAWNNEARKING;
     if (c & BitPosArray[C3] && sq < A3 && distance[sq][B2]==1)
        s += PAWNNEARKING;
  }

In my opinion, the test about the location of the king (sq) should depend on the location of the pawn.

Bernard Helmstetter






reply via email to

[Prev in Thread] Current Thread [Next in Thread]