
Eelco
Moderator: Ras
Code: Select all
src\endgame.cpp(199): error : a value of type "int" cannot be assigned to an entity of type "Value"
1> result = VALUE_DRAW + (pos.piece_count(strongerSide, PAWN) * rank);//VALUE_DRAW
1>
Code: Select all
if ( (pawnFile == FILE_A || pawnFile == FILE_H)
&& !(pawns & ~file_bb(pawnFile)))
{
Square bishopSq = pos.piece_list(strongerSide, BISHOP)[0];
Square queeningSq = relative_square(strongerSide, pawnFile | RANK_8);
Square kingSq = pos.king_square(weakerSide);
if ( opposite_colors(queeningSq, bishopSq)
&& abs(file_of(kingSq) - pawnFile) <= 1)
{
// The bishop has the wrong color, and the defending king is on the
// file of the pawn(s) or the neighboring file.
// If the defending king has distance 1 to the promotion square or
// is placed somewhere in front of the pawn, it's a draw.
if ( square_distance(kingSq, queeningSq) <= 1
|| relative_rank(strongerSide, kingSq) >= rank)
result = VALUE_DRAW + (pos.piece_count(strongerSide, PAWN) * rank);//VALUE_DRAW
}
}
Hi Jose,velmarin wrote:Hello, Eelco.
I wanted to compile your code, is the second time,
I get this error in Visual Studio (Microsoft and Intel compilers)Code: Select all
src\endgame.cpp(199): error : a value of type "int" cannot be assigned to an entity of type "Value" 1> result = VALUE_DRAW + (pos.piece_count(strongerSide, PAWN) * rank);//VALUE_DRAW 1>
If I remove this code is no problem, but not the point.Code: Select all
if ( (pawnFile == FILE_A || pawnFile == FILE_H) && !(pawns & ~file_bb(pawnFile))) { Square bishopSq = pos.piece_list(strongerSide, BISHOP)[0]; Square queeningSq = relative_square(strongerSide, pawnFile | RANK_8); Square kingSq = pos.king_square(weakerSide); if ( opposite_colors(queeningSq, bishopSq) && abs(file_of(kingSq) - pawnFile) <= 1) { // The bishop has the wrong color, and the defending king is on the // file of the pawn(s) or the neighboring file. // If the defending king has distance 1 to the promotion square or // is placed somewhere in front of the pawn, it's a draw. if ( square_distance(kingSq, queeningSq) <= 1 || relative_rank(strongerSide, kingSq) >= rank) result = VALUE_DRAW + (pos.piece_count(strongerSide, PAWN) * rank);//VALUE_DRAW } }
One idea is that the name "Rainbow Serpent" is too long and can cause problems in fritz.
In Other forum there is enough interest on your engine.
I can comment.
Code: Select all
result = VALUE_DRAW + Value(pos.piece_count(strongerSide, PAWN) * rank);
Code: Select all
Bugfix of Rainbow serpent.... from TDDB... This is a bugfix version of the 2.3.1, not a lot of line changes but some I think were bugs so those changes I think can be important.
There was a suspected bug in the bad bishop initialization and a certain bug in the end of the pawn evaluation. Not a bug but a code change is that singular extensions are not forced to go through LMR reduction but can go directly to full search depth. The node is expected to fail high so I don't think skipping the reduced search is bring much instability, there are some more (sometimes False-)Fail Lows visible now (there were hardly any before) probably due to this but the benefit should be that a Fail Low is now certainly from a full search and therefore in some instances a bit earlier (which is what you want, trust me )
In spite of fixes, there may be major bugs left and testing is still very minimal... I do hope this is still a bit better than the 2.3.1 now that some of the bugs are fixed, hence the 2.3.2 designation. No new read.me file yet, it is copied from the last archive like most other files. The slightly changed files are thread.h, thread.cpp, pawns.cpp, evaluate.cpp and search.cpp. All of the rest is still very much like Stockfish 2.3.1 + some changes from the GitHub master, all those were already in Rainbow Serpent 2.3.1.
One search change of the "hollowPV" condition should do nothing at all, but I have not yet verified that it does nothing so I left it in for now .
Eelco de Groot
Brilliant José! Now we a professionally made package including everything! Shall I also put a new RAR archive on the TDDB forum? In case the link to mediafire will be no more active then we still have that to refer to.velmarin wrote:http://immortalchess.net/forum/showthre ... post317011
Link dowunload:
http://www.mediafire.com/?8v7cclhvxhy1bck
posdata:
The above link is a link semi_privado beta ....