H. G. Muller wrote on Thu, May 19, 2022 09:32 PM UTC:
The Diagram below implements summoning for entering user moves. (The AI doesn't understand it yet.) It appears I had already built in some provisions to promote a piece on a locust square through the user-supplied WeirdPromotion routine: if the '256' bit of the promotion piece that is returned by the function was set, it doesn't promote the piece on the destination, but the piece on the locust square. I still had to fix some bugs in relation to handling of the pieces in hand, though. (Swapping with a piece increased the number of pieces in hand, and promoting at the locust square did not decrease it.) So refresh your browser cache!
In this Diagram there is one unorthodox piece, the Lady. It moves and captures like a Rook, but it can also swap with friendly pieces that are a Rook move away. In addition it can summon a Queen on an adjacent square, if you have one in hand. (And initially you do have one!) To do that just move the piece to such a square, and then back. A second click on an adjacent square would move the the piece there, rather than summoning.
The Diagram below implements summoning for entering user moves. (The AI doesn't understand it yet.) It appears I had already built in some provisions to promote a piece on a locust square through the user-supplied WeirdPromotion routine: if the '256' bit of the promotion piece that is returned by the function was set, it doesn't promote the piece on the destination, but the piece on the locust square. I still had to fix some bugs in relation to handling of the pieces in hand, though. (Swapping with a piece increased the number of pieces in hand, and promoting at the locust square did not decrease it.) So refresh your browser cache!
In this Diagram there is one unorthodox piece, the Lady. It moves and captures like a Rook, but it can also swap with friendly pieces that are a Rook move away. In addition it can summon a Queen on an adjacent square, if you have one in hand. (And initially you do have one!) To do that just move the piece to such a square, and then back. A second click on an adjacent square would move the the piece there, rather than summoning.