1
0
Fork 0
mirror of https://github.com/sockspls/badfish synced 2025-04-30 08:43:09 +00:00

Restore standard passed pawn definition

Use the usual and accepted passed pawn semantic
instead of a non-standard one and remove a FIXME.

STC (http://tests.stockfishchess.org/tests/view/576401350ebc5972faa1608d):
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 29646 W: 5663 L: 5557 D: 18426

LTC (http://tests.stockfishchess.org/tests/view/5764e4e90ebc5972faa160c3):
LLR: 2.96 (-2.94,2.94) [-3.00,1.00]
Total: 40224 W: 5578 L: 5484 D: 29162

bench: 7543902
This commit is contained in:
Marco Costalba 2016-06-25 11:42:43 +02:00
parent c2c0e6b07d
commit 190d2ea4bc
2 changed files with 3 additions and 3 deletions

View file

@ -577,6 +577,7 @@ namespace {
Square s = pop_lsb(&b);
assert(pos.pawn_passed(Us, s));
assert(!(pos.pieces(PAWN) & forward_bb(Us, s)));
int r = relative_rank(Us, s) - RANK_2;
int rr = r * (r - 1);

View file

@ -148,9 +148,8 @@ namespace {
}
// Passed pawns will be properly scored in evaluation because we need
// full attack info to evaluate them. Only the frontmost passed
// pawn on each file is considered a true passed pawn.
if (!(stoppers | doubled)) // FIXME this is just doubled by adjacent pawn
// full attack info to evaluate them.
if (!stoppers && !(ourPawns & forward_bb(Us, s)))
e->passedPawns[Us] |= s;
// Score this pawn