glinscott / Garbochess-JS

A strong javascript chess engine using WebWorkers
http://forwardcoding.com/projects/ajaxchess/chess.html
Other
310 stars 100 forks source link

Underpromotion not supported #13

Open Chris-Burton opened 11 years ago

Chris-Burton commented 11 years ago

There is no support for "under-promotion". When a pawn reaches the far side of the board, it is most often turned into a queen, but the pawn can also become a knight, bishop, or rook.

In this example it's white to move and white would like to take the black rook with it's pawn and become a knight so it puts the black king immediately in check.

5r2/6Pk/7p/2pB4/8/q7/8/6RK w - -

If the white pawn takes the rook and becomes a queen, the black king is not in check, and black is free to move play Qh3 and checkmate white!

I am new to both Garbochess and GitHub, so I hope this is done correctly.

BTW, I am very impressed with Garbochess! This is the best Java Script version of chess I've ever seen!

If I have suggestions for improvement that are not bugs, how should I submit them?

casaschi commented 11 years ago

The garbochess.js engine supports underpromotion, see for instance this implementation with a different user interface: http://pgn4web.casaschi.net/engine.html?fs=5r2/6Pk/7p/2pB4/8/q7/8/6RK%20w%20-%20-

I can't comment on the original garbochess web interface though.

glinscott commented 11 years ago

Yes, the original interface only auto-promotes to queen currently - thanks for filing the issue :).

Chris-Burton commented 11 years ago

Casaschi,

Thank you for such a quick response! I understand now that the ability to use the Garbochess under-promotion feature is a function of the UI and not a limitation of Garbochess.

It would therefore seem that your UI found at

demo page http://forwardcoding.com/projects/ajaxchess/chess.html

Is not meant to show the entire Garbochess feature set.

For example, some features I want that I did not see on the above demo page include: (1) I want to control under-promotion,* (2)* I want letters and numbers to the default chess board, (3) I want to announce checkmate and stalemate, (4) I want to load a FEN where the user plays black and moves first, and (5) I want to better indicate what piece just moved. Are you saying there is no default UI that contains these features?

Thank you again. I hope my team can assist you in some way to help make Garbochess more robust.

Sincerely,

Chris Burton

On Sat, Apr 13, 2013 at 12:37 PM, casaschi notifications@github.com wrote:

The garbochess.js engine supports underpromotion, see for instance this implementation with a different user interface:

http://pgn4web.casaschi.net/engine.html?fs=5r2/6Pk/7p/2pB4/8/q7/8/6RK%20w%20-%20-

I can't comment on the original garbochess web interface though.

— Reply to this email directly or view it on GitHubhttps://github.com/glinscott/Garbochess-JS/issues/13#issuecomment-16339331 .