Closed Fulmene closed 4 years ago
Maybe we can get the needed info via pyffish from SF. @ianfab ?
Fairy-Stockfish uses the makruk FEN format of cutechess, which indicates the counting limit and the current count in the en passant and half-move clock field (if counting applies), e.g.:
https://www.pychess.org/xAQy1fxQ
8/8/8/8/2nM4/1k6/1mm5/K7 w - 128 49 91
which means:
128 half moves, i.e., 64 full moves is the counting limit
49 half moves have been made since the counting started
So the half-moves just need to be converted to full moves. The half-move clock only refers to counting if the en passant field contains a number, otherwise (if it is a -
) it is a normal 50 move counter (you can check move 66 where the format switches).
However, the optional counting is very problematic, since the count is part of the board state, and you would then change the board state by other means than making a move. I think this topic is much more difficult and should be separated from just displaying the already available counts.
By the way, this format is used for all variants with counting rules, i.e., also Ouk and Sittuyin (as well as ASEAN).
I wondered whether I should've separated optional counting to another issue in the first place. Thanks for confirming.
Yes, please.
@gbtami Extracting it from the FEN should be fine, so we do not need to add anything in pyffish, right?
Yes, it should be Ok.
The endgame counting of makruk and ouk includes verbally counting as you move. Both players know what number it currently is, and that should be reflected in the UI. I'd personally place the box for counting indicator at the top right corner, above the moves box. My only concern is whether pyffish supports retrieving counting value.
Edit: Removed the part about optional counting