Page 1 of 1

Bare minimum chess program in javascript

Posted: Sat Jun 08, 2019 7:42 am
by maksimKorzh
Hi, talkchess community!

I'd like to introduce you the bare minimum chess program I've written in javascript that can be played online here: https://maksimkorzh.github.io/bmcp_js/

This won't be interesting to those who writes 2500+ Elo rated engines, but for beginners who wants to write simple and minimalist chess for fun.

It doesn't support castling and enPassant captures for simplicity. Move legality checking is also absent, so feel free to cheat)

I'll appreciate your feedbacks!
Take care!

Re: Bare minimum chess program in javascript

Posted: Sat Jun 08, 2019 10:29 am
by zullil
Good start!

Not handling all legal moves while allowing illegal moves is undesirable.

Also, after I (illegally) captured using a pinned pawn, the engine moved its (unprotected) Queen adjacent to my King and announced checkmate, ending the game. Not only could I have captured the Queen, but my King also had a square to flee to. So mate-detection code needs work. :wink:

Re: Bare minimum chess program in javascript

Posted: Sat Jun 08, 2019 10:34 am
by RubiChess
Pawn promotion seems missing.

Re: Bare minimum chess program in javascript

Posted: Sat Jun 08, 2019 11:11 am
by maksimKorzh
zullil wrote:
Sat Jun 08, 2019 10:29 am
Good start!

Not handling all legal moves while allowing illegal moves is undesirable.

Also, after I (illegally) captured using a pinned pawn, the engine moved its (unprotected) Queen adjacent to my King and announced checkmate, ending the game. Not only could I have captured the Queen, but my King also had a square to flee to. So mate-detection code needs work. :wink:
Thanks for your feed back. To be exact it's not start bat rather the end) I've been doing chess programming for 3 years, wrote several engines in C with full FIDE rules. This program is more like a summary of my overall chess programming experience)

Re: Bare minimum chess program in javascript

Posted: Sat Jun 08, 2019 11:48 am
by maksimKorzh
RubiChess wrote:
Sat Jun 08, 2019 10:34 am
Pawn promotion seems missing.
Thanks for reporting bug, RubiChess, already fixed. I've overlooked that while porting code from C to JS