Disservin / fastchess

fastchess is a chess cli tool to run engine vs engine matches
MIT License
88 stars 21 forks source link

Draw by timeout #410

Open gahtan-syarif opened 6 months ago

gahtan-syarif commented 6 months ago

Screenshot 2024-05-18 040204 apparently this is an actual rule, cutechess seems to already have this while fast-chess not yet (i think). probably would rarely if ever come up but might be worth implementing nonetheless

gahtan-syarif commented 6 months ago

i guess this is more of a chess-library pr but ig can be posted here too :p

Disservin commented 6 months ago

How is this a chess lib thing ? Chess lib doesn’t know anything about time control and there is a public function for insufficient material check I think

gahtan-syarif commented 6 months ago

i think the function exists within chess lib's board.hpp, in fastchess it extracts the data from the board object

gahtan-syarif commented 6 months ago

yep https://github.com/Disservin/chess-library/blob/c45383444969339f5df1457dc4089a3a89d702a3/src/board.hpp#L639 the one in chess lib can only check if both sides have insufficient material, in this case one side is insufficient while the opponent can still mate

gahtan-syarif commented 3 months ago

apparently, theres also a draw by disconnect in cutechess