# Computer Chess Club Archives

## Messages

### Subject: hanging pieces in rebel

Author: Bernward Klocke

Date: 11:49:21 01/15/04

```I recently read Ed Schroeder's comments on move ordering in rebel. What I find
puzzeling is the way it detects hanging pieces.
Ed presents the following data structure for square evaluation:
+------+------+------+------+------+------+------+------+
| BIT0 | BIT1 | BIT2 | BIT3 | BIT4 | BIT5 | BIT6 | BIT7 |
+------+------+------+------+------+------+------+------+
|      Number of     | PAWN |KNIGHT| ROOK | QUEEN| KING |
|      ATTACKERS     |      |BISHOP|      |      |      |
+------+------+------+------+------+------+------+------+

After all white pieces are done square F3 from WB looks as follows:
+------+------+------+------+------+------+------+------+  B0-B2 : 2 attackers
| BIT0 | BIT1 | BIT2 | BIT3 | BIT4 | BIT5 | BIT6 | BIT7 |
+------+------+------+------+------+------+------+------+  B3    : white pawn
|      Number of     | PAWN |KNIGHT| ROOK | QUEEN| KING |
|      ATTACKERS     |      |BISHOP|      |      |      |  B4    : white
knight/bishop
+------+------+------+------+------+------+------+------+
|  0   |   1  |  0   |  1   |  1   |  0   |  0   |  0   |
+------+------+------+------+------+------+------+------+
So evaluation is done for each square for black and for white. His example show
the square f3 for white attacked by a pawn from f3 and a knight from g1.
This example is clear but I think gets ambiguous when three pieces attack a
square and two of them are of the same type eg. two rooks and a knight. How can
one see that it's not two knights and one rook.
And the other thing is only going through the movelist isn't the whole story.
What if doubled rooks are the attackers? Only the first one will appear in the
movelist.
Does anybody know how this is solved. What did I miss?
Otherwise the lookup from a precalculated table of STATUS values seems elegant.

Bernward

```