Thank you for your donations!   Download the book!   Public source code repository  

The book is updated

I'm updating the book, since I haven't done so for quite some time, even though there are mostly minor changes.

Changes since the last update:

  • added draw cancellation
  • draw notation (offer, cancellation, ...) is now mandatory
  • significantly change castling, in Nineteen variant and onwards, it's now possible to castle even if King is under attack, or if it has to move over attacked fields (still can't end its move onto attacked field)
  • clarified converting opponent's Rooks on own initial fields (converted Rooks are not granted option to castle)
  • clarified converting opponent's Pawns on own initial positions (converted Pawns are not granted option to rush)
  • clarified disambiguation
  • fixed formatting issues, so now book can be rendered with default font

The latest update to the book was made on August 17, 2022, and the version is 20220817.072405.

Draw notation is now mandatory, to set game score end; and draw offer is mandatory to delimit moves where opponent can accept draw offer, and thus end a match. This is minor change, but allows for game score to be complete, from the very first move, until the very end result of a game. Moreover, it allows client and server to communicate results in the same channel as they do for regular moves, i.e. less reliance on a special API.

Castling changes were sort-of induced by the notion that during any (own or opponent's) cascade, our King can get under attack; this is fine, as long as after a move King is not attacked anymore. Also, when King is under attack, it can still move, albeit at much slower pace, i.e. one square at the time. But the real culprit here was a problematic, OP piece, Centaur. Yes, that guy again. 

You see, without Pawns in place, Centaurs would carpet-siege almost all fields on opponent's figure row, from the very beginning of a match. Since in later variants Rooks and Kings are so far apart, it takes quite some time to clear half-a-chessboard worth of Pawns, and other pieces, just to be able to castle. And no matter how carefully planned, if Centaur is not hard-pinned, it can relatively easy reposition, and control fields between King and its castling buddies. To rectify this, I allowed Kings to castle even if under attack, or if traversing fields under attack. Naturally, King can't end its move on a field which is attacked.

I mentioned a few months ago about an idea to introduce additional pieces, namely two new, different Pawns. Well, I gave up. It's not just that it's huge undertaking. In its current design it would, most likely, confuse the bejesus out of almost everyone. On top of that, I couldn't make it so that it's not cheesy-as-heck. For now, then, it's postponed.

Another change regarding pieces that I have been contemplating recently is idea to buff Serpent, it seems to me quite underwhelming, compared to most other pieces, Monolith notwithstanding. But, Monolith was designed from the very beginning to have limited mobility, it's a feature, not a bug. The reason is to prevent one player to easily snatch other player's Monolith, and to monopolize them. I was thinking of just extending range of Serpent's  normal zig-zag movement; currently it's set at 1/3 of a board size (rounded up), which doesn't seems really enough for any serious flanking, or building up momentum by looping more than once. Again, this is still in idea-on-the-table stage, not something that'll be done tomorrow.

Lastly, I also figured out how to clean-up some formatting issues, when default font is used to render PDF. So, now book can be rendered using  LaTeX default font (i.e. Computer Modern), in addition to my first choice, Bitstream Charter. All that needs to be done is in crochess.tex file comment out lines that read:

\usepackage{charter}
\renewcommand{\rmdefault}{bch}

After that, just re-run PDF file compilation, simply by running:

./pdf.sh

in a root-folder of repository (either unzipped, or cloned from GitHub). If everything goes right, book will be created under book/ folder.

Edit: recently, I added T1 font encoding to the mix, which solved issues with TT fonts, most notably semi-bold {, } characters, with almost no downsides. I write almost, since with T1 encoding default font reverted to normal (i.e. not semi-bold) typeface, which is much less readable. To counter this, one has to also find, and uncomment one of the lines:

% \usepackage{lmodern}
% \usepackage{mlmodern}

No comments:

Post a Comment