Skip to content
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

Chess960 #103

Open
juergenebert opened this issue Jan 1, 2016 · 3 comments
Open

Chess960 #103

juergenebert opened this issue Jan 1, 2016 · 3 comments
Assignees

Comments

@juergenebert
Copy link

Hi Phokham,

first of all, thank you for publishing this fine library. I was looking for Java code that would generate all legal moves in a given position and MoveGenerator from JCPI is doing a great job for standard chess.

However, I noticed that although JCPI is somewhat prepared to handle non-standard positions, the move generation function does not seem to work correctly for chess960, especially for castling. Castling moves are not included in the move list. As far as I can see, there is a general problem with representing castling moves in JCPI. Castling is represented simply as a king move (e.g. White short castle ist standard setup as e1g1) but that does not suffice for chess960 positions. If eg. the W king is on f1 and the rook on h1, f1g1 could both be a simple kings move or castling.

Any plans on enhancing JCPI in this direction or am I missing something?

Thanks and all the best, Jürgen

@fluxroot
Copy link
Owner

fluxroot commented Jan 4, 2016

Hey Jürgen! Thanks for your kind words. I really appreciate that!

As you correctly noticed, the move generator currently only supports standard chess. There are plans to completely rewrite JCPI and to support Chess960. I will probably switch development from Pulse to JCPI soon. Unfortunately however, I cannot give you an ETA on that rewrite.

Nevertheless, I will probably look over the old code base and see what I can do. I'll leave this issue opened so we can track this feature request.

Thanks, Poke

@fluxroot fluxroot self-assigned this Jan 4, 2016
@juergenebert
Copy link
Author

Hi Phokham, I really appreciate your support. Just to make sure: currently neither of your three fluxchess projects supports move generation for chess960, right? I would prefer to use JCPI in 'library mode', but if necessary I could also extract some source code from your engine projects. But as far as I can see there is the same issue, too.

Thanks again, Jürgen

@fluxroot
Copy link
Owner

Hey Jürgen! Yes, unfortunately none of my engines currently support Chess960. I will probably start implementing Chess960 in JCPI first.

Thanks, Poke.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants