-
Notifications
You must be signed in to change notification settings - Fork 22
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Multiple errors, contact approach #34
Comments
Let me try and break down a few things about what you listed.
An en-passant square can never be on the first two ranks from either side. It is using a simple calculation to determine if it's between 3 and 6 (inclusive). If verification is activated it should catch if it's rank 4 or 5.
I'm aware of this - It's actually quite horrible atm.
Yes, the current polyglot code is not working as it should. It does not consider any possible endian conversions.
Correct, something I haven't had time to correct yet.
This is related to previously mentioned issue.
If this didn't work - the Perft calculations would catch errors like this.
This is a case of lacking documentation. In this case an isolated pawn is a pawn which has no opposition on adjacent files. If there are pawns on adjacent files the pawn is able to be captured by the opposing pawn.
Feel free to add a PR for this - my idea with this is to keep the states pre-made to reduce GC activity over time.
Thanks for the feedback. |
Refering to your en passant formula, to be more specific. your code is:
Translated it means. This is correct: This part is not It implied that when the chunk1 number is 3,4,5 or 6 we have no en passant. Its however rare since it only happens when you load a FEN having a en passant square flagged within the fen. |
I will look at the perft code since it is in fact not working properly. Maybe its only sometimes but definetly the issue is that the en passant square gets clared before the movement if in the makemove can even check. |
Thanks for the input, I have merged fixes for the various issues you pointed out. |
Hi,
I am using your library since a few days to create a search algorithm. I succeeded with it reaching around 1800 elo with relative simple means.
However there are many many bugs in your code and I fix them one by one as I approach them.
are you interested knowing them?
I could create a pull request for most of them.
I am not sure 100% that your code style or your idea of how you want to code complies with it and there are still some bugs that I dont care because they are not important for the search engine but still are tecnical wrong chess.
Please answer so we can discuss.
Here a short list out of memory whats wrong:
These are the most crucial ones I remember right now, If wished I can compile a full commented pull request
thanks for your work :) the ciricism seems to be rude but in fact i am very happy the whole bitboard approach is working very well.
The text was updated successfully, but these errors were encountered: