This is indeed hard for the AI to understand. Since the fmnnD move is not an i move, it thinks that the piece can use it everywhere, and that significantly increases the value, probably by more than the better centralization after pushing it will gain. What it does not realize is that the type that has this move is bound to the 2nd rank, which is only a small fraction of the board, which would be a reason to strongly devaluate it.
Not recognizing area bindings is already a general problem in the value guestimating; on a large board it would evaluate vR as more valuable than R2, because it has more moves. But, being bound to a file, the vR is almost useless, while R2 even has mating potential on 8x8. I suppose I could have the piece make a few hundred random moves on an empty board, and count unvisited squares. For pieces that morph it is even more tricky, but I suppose I could count the morphing squares as inaccessible.
Anyway, the ID already has a solution for valuable aspects (or liabilities) of a piece that it cannot recognize itself: by writing value=N directly after the piece line you can overrule the automatic guestimate, and set it by hand to the given number N.
This is indeed hard for the AI to understand. Since the fmnnD move is not an i move, it thinks that the piece can use it everywhere, and that significantly increases the value, probably by more than the better centralization after pushing it will gain. What it does not realize is that the type that has this move is bound to the 2nd rank, which is only a small fraction of the board, which would be a reason to strongly devaluate it.
Not recognizing area bindings is already a general problem in the value guestimating; on a large board it would evaluate vR as more valuable than R2, because it has more moves. But, being bound to a file, the vR is almost useless, while R2 even has mating potential on 8x8. I suppose I could have the piece make a few hundred random moves on an empty board, and count unvisited squares. For pieces that morph it is even more tricky, but I suppose I could count the morphing squares as inaccessible.
Anyway, the ID already has a solution for valuable aspects (or liabilities) of a piece that it cannot recognize itself: by writing value=N directly after the piece line you can overrule the automatic guestimate, and set it by hand to the given number N.