Code: Select all
static const uint8 Centre[64] = {
0, 1, 2, 3, 3, 2, 1, 0,
1, 4, 5, 6, 6, 5, 4, 1,
2, 5, 7, 8, 8, 7, 5, 2,
3, 6, 8, 9, 9, 8, 6, 3,
3, 6, 8, 9, 9, 8, 6, 3,
2, 5, 7, 8, 8, 7, 5, 2,
1, 4, 5, 6, 6, 5, 4, 1,
0, 1, 2, 3, 3, 2, 1, 0,};
// knights
piece = WhiteKnight12;
// centre
for (sq = 0; sq < 64; sq++) {
PST(piece,sq,Opening) += Centre[sq] * +3;
PST(piece,sq,Endgame) += Centre[sq] * +3; }
// 1st rank
for (sq = A1; sq <= H1; sq++) {
PST(piece,sq,Opening) -= 15; }
// outpost
PST(piece,C5,Opening) += 3;
PST(piece,D5,Opening) += 5;
PST(piece,E5,Opening) += 5;
PST(piece,F5,Opening) += 3;
PST(piece,D6,Opening) += 3;
PST(piece,E6,Opening) += 3;
// "trapped"
PST(piece,A8,Opening) -= 50;
PST(piece,H8,Opening) -= 50;
Code: Select all
static const int TABLA_ALFIL[] = {
-10, -5, -5, -5, -5, -5, -5, -5, // hmm ?
-5, 0, 0, 0, 0, 0, 0, -5,
-5, 0, 2, 2, 2, 2, 0, -5,
-5, 0, 2, 4, 4, 2, 0, -5,
-5, 0, 2, 4, 4, 2, 0, -5,
-5, 0, 2, 5, 5, 2, 0, -5,
-5, 2, 3, 0, 0, 3, 2, -5,
-10, -5, -5, -5, -5, -5, -5, -10};
Code: Select all
static const int TABLA_DAMA[] = {
-10, -10, -10, -10, -10, -10, -10, -10,
-10, 0, 0, 0, 0, 0, 0, -10,
-5, 0, 4, 4, 4, 4, 0, -5,
-5, 0, 4, 8, 8, 4, 0, -5,
-5, 0, 4, 8, 8, 4, 0, -5,
-5, 0, 4, 4, 4, 4, 0, -5,
-5, 0, 4, 0, 0, 0, 0, -5, // c2/f2 are maybe a bit weird
-10, -10, -5, 0, -2, -5, -10, -10}; // here asymmetry looks more sensible