summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
3b7dbc4)
Even if not under attack. This seems to be good
especially on openings.
After 12112 games at 10"+0.05
Mod vs Orig 2175 - 1997 - 7940 ELO +5 (+- 3.7)
[Patch series from Gary, little edited by me]
Signed-off-by: Marco Costalba <mcostalba@gmail.com>
Bitboard b;
Score score = SCORE_ZERO;
Bitboard b;
Score score = SCORE_ZERO;
+ // Undefended minors get penalized even if not under attack
+ Bitboard undefended = pos.pieces(Them)
+ & (pos.pieces(BISHOP) | pos.pieces(KNIGHT))
+ & ~ei.attackedBy[Them][0];
+ if (undefended)
+ score += make_score(25, 10) * popcount<Max15>(undefended);
+
// Enemy pieces not defended by a pawn and under our attack
Bitboard weakEnemies = pos.pieces(Them)
& ~ei.attackedBy[Them][PAWN]
& ei.attackedBy[Us][0];
if (!weakEnemies)
// Enemy pieces not defended by a pawn and under our attack
Bitboard weakEnemies = pos.pieces(Them)
& ~ei.attackedBy[Them][PAWN]
& ei.attackedBy[Us][0];
if (!weakEnemies)
// Add bonus according to type of attacked enemy piece and to the
// type of attacking piece, from knights to queens. Kings are not
// Add bonus according to type of attacked enemy piece and to the
// type of attacking piece, from knights to queens. Kings are not