mirror of
https://github.com/sockspls/badfish
synced 2025-05-01 09:13:08 +00:00
A combo patch of two tuning patches
STC: LLR: 2.96 (-2.94,2.94) [0.00,4.00] Total: 14223 W: 2700 L: 2494 D: 9029 LTC: LLR: 2.96 (-2.94,2.94) [0.00,4.00] Total: 66294 W: 9065 L: 8739 D: 48490 Bench: 7607385 Resolves #612
This commit is contained in:
parent
f256388e08
commit
d5b24ad77b
1 changed files with 12 additions and 12 deletions
|
@ -132,21 +132,21 @@ namespace {
|
||||||
// Outpost[knight/bishop][supported by pawn] contains bonuses for knights and
|
// Outpost[knight/bishop][supported by pawn] contains bonuses for knights and
|
||||||
// bishops outposts, bigger if outpost piece is supported by a pawn.
|
// bishops outposts, bigger if outpost piece is supported by a pawn.
|
||||||
const Score Outpost[][2] = {
|
const Score Outpost[][2] = {
|
||||||
{ S(42,11), S(63,17) }, // Knights
|
{ S(43,11), S(65,20) }, // Knights
|
||||||
{ S(18, 5), S(27, 8) } // Bishops
|
{ S(20, 3), S(29, 8) } // Bishops
|
||||||
};
|
};
|
||||||
|
|
||||||
// ReachableOutpost[knight/bishop][supported by pawn] contains bonuses for
|
// ReachableOutpost[knight/bishop][supported by pawn] contains bonuses for
|
||||||
// knights and bishops which can reach an outpost square in one move, bigger
|
// knights and bishops which can reach an outpost square in one move, bigger
|
||||||
// if outpost square is supported by a pawn.
|
// if outpost square is supported by a pawn.
|
||||||
const Score ReachableOutpost[][2] = {
|
const Score ReachableOutpost[][2] = {
|
||||||
{ S(21, 5), S(31, 8) }, // Knights
|
{ S(21, 5), S(35, 8) }, // Knights
|
||||||
{ S( 8, 2), S(13, 4) } // Bishops
|
{ S( 8, 0), S(14, 4) } // Bishops
|
||||||
};
|
};
|
||||||
|
|
||||||
// RookOnFile[semiopen/open] contains bonuses for each rook when there is no
|
// RookOnFile[semiopen/open] contains bonuses for each rook when there is no
|
||||||
// friendly pawn on the rook file.
|
// friendly pawn on the rook file.
|
||||||
const Score RookOnFile[2] = { S(19, 10), S(43, 21) };
|
const Score RookOnFile[2] = { S(20, 7), S(45, 20) };
|
||||||
|
|
||||||
// ThreatBySafePawn[PieceType] contains bonuses according to which piece
|
// ThreatBySafePawn[PieceType] contains bonuses according to which piece
|
||||||
// type is attacked by a pawn which is protected or is not attacked.
|
// type is attacked by a pawn which is protected or is not attacked.
|
||||||
|
@ -181,13 +181,13 @@ namespace {
|
||||||
// Assorted bonuses and penalties used by evaluation
|
// Assorted bonuses and penalties used by evaluation
|
||||||
const Score MinorBehindPawn = S(16, 0);
|
const Score MinorBehindPawn = S(16, 0);
|
||||||
const Score BishopPawns = S( 8, 12);
|
const Score BishopPawns = S( 8, 12);
|
||||||
const Score RookOnPawn = S( 7, 27);
|
const Score RookOnPawn = S( 8, 24);
|
||||||
const Score TrappedRook = S(92, 0);
|
const Score TrappedRook = S(92, 0);
|
||||||
const Score Checked = S(20, 20);
|
const Score Checked = S(20, 20);
|
||||||
const Score ThreatByHangingPawn = S(70, 63);
|
const Score ThreatByHangingPawn = S(71, 61);
|
||||||
const Score LooseEnemies = S( 0, 25);
|
const Score LooseEnemies = S( 0, 25);
|
||||||
const Score Hanging = S(48, 28);
|
const Score Hanging = S(48, 27);
|
||||||
const Score ThreatByPawnPush = S(31, 19);
|
const Score ThreatByPawnPush = S(38, 22);
|
||||||
const Score Unstoppable = S( 0, 20);
|
const Score Unstoppable = S( 0, 20);
|
||||||
|
|
||||||
// Penalty for a bishop on a1/h1 (a8/h8 for black) which is trapped by
|
// Penalty for a bishop on a1/h1 (a8/h8 for black) which is trapped by
|
||||||
|
@ -209,10 +209,10 @@ namespace {
|
||||||
|
|
||||||
// Penalties for enemy's safe checks
|
// Penalties for enemy's safe checks
|
||||||
const int QueenContactCheck = 89;
|
const int QueenContactCheck = 89;
|
||||||
const int QueenCheck = 50;
|
const int QueenCheck = 52;
|
||||||
const int RookCheck = 45;
|
const int RookCheck = 45;
|
||||||
const int BishopCheck = 6;
|
const int BishopCheck = 5;
|
||||||
const int KnightCheck = 14;
|
const int KnightCheck = 17;
|
||||||
|
|
||||||
|
|
||||||
// eval_init() initializes king and attack bitboards for a given color
|
// eval_init() initializes king and attack bitboards for a given color
|
||||||
|
|
Loading…
Add table
Reference in a new issue