]> git.sesse.net Git - stockfish/blobdiff - src/position.cpp
Retire 'Randomness' ucioption
[stockfish] / src / position.cpp
index a069cf404be6d012a7ac129c4386b0c3a1721586..537e574f51e4bc723cd85a3a50545de216f88b22 100644 (file)
@@ -641,10 +641,10 @@ bool Position::move_is_check(Move m, const CheckInfo& ci) const {
       }
   }
 
-  // En passant capture with check We have already handled the case
+  // En passant capture with check ? We have already handled the case
   // of direct checks and ordinary discovered check, the only case we
-  // need to handle is the unusual case of a discovered check through the
-  // captured pawn.
+  // need to handle is the unusual case of a discovered check through
+  // the captured pawn.
   if (move_is_ep(m))
   {
       Square capsq = make_square(square_file(to), square_rank(from));
@@ -1307,11 +1307,11 @@ int Position::see_sign(Move m) const {
   Square from = move_from(m);
   Square to = move_to(m);
 
-  // Early return if SEE cannot be negative because capturing piece value
-  // is not bigger then captured one.
-  if (   midgame_value_of_piece_on(from) <= midgame_value_of_piece_on(to)
-      && type_of_piece_on(from) != KING)
-         return 1;
+  // Early return if SEE cannot be negative because captured piece value
+  // is not less then capturing one. Note that king moves always return
+  // here because king midgame value is set to 0.
+  if (midgame_value_of_piece_on(to) >= midgame_value_of_piece_on(from))
+      return 1;
 
   return see(from, to);
 }
@@ -1752,21 +1752,17 @@ void Position::init_zobrist() {
 
 
 /// Position::init_piece_square_tables() initializes the piece square tables.
-/// This is a two-step operation:  First, the white halves of the tables are
-/// copied from the MgPST[][] and EgPST[][] arrays, with a small random number
-/// added to each entry if the "Randomness" UCI parameter is non-zero.
+/// This is a two-step operation:
+/// First, the white halves of the tables are
+/// copied from the MgPST[][] and EgPST[][] arrays.
 /// Second, the black halves of the tables are initialized by mirroring
 /// and changing the sign of the corresponding white scores.
 
 void Position::init_piece_square_tables() {
 
-  int r = get_option_value_int("Randomness"), i;
   for (Square s = SQ_A1; s <= SQ_H8; s++)
       for (Piece p = WP; p <= WK; p++)
-      {
-          i = (r == 0)? 0 : (genrand_int32() % (r*2) - r);
-          PieceSquareTable[p][s] = make_score(MgPST[p][s] + i, EgPST[p][s] + i);
-      }
+          PieceSquareTable[p][s] = make_score(MgPST[p][s], EgPST[p][s]);
 
   for (Square s = SQ_A1; s <= SQ_H8; s++)
       for (Piece p = BP; p <= BK; p++)