Check out Atomic Chess, our featured variant for November, 2024.


[ Help | Earliest Comments | Latest Comments ]
[ List All Subjects of Discussion | Create New Subject of Discussion ]
[ List Earliest Comments Only For Pages | Games | Rated Pages | Rated Games | Subjects of Discussion ]

Single Comment

GAME Code help[Subject Thread] [Add Response]
Nick Wolff wrote on Thu, Jun 1, 2017 03:47 AM UTC:

Figured I'd try to program something VERY easy to learn how to do this.  Boy, was I in for a surprise.  I'm trying to 10-Directional Chess, which only replaces two pieces.  I've canabilized a ton of Fergus's code, looked through many other variants as examples (Sac Chess, Shogi, Opulant Chess, and Chess).  A few questions have come up that I can't locate the answers for.

First, I'm having a lot of issues defining a new function for piece movement involving a piece with a designator more than one character long.  Every include file that I look into has single character designators, but they also have their own piece sets or just a few pieces in the set.  If I were to declare a function for (lets say) _NW_EH in the Alfaerie: Many set, it doesn't let recognize the piece, even if I alias it.  If I were to just simply replace _NW_EH for E, it works perfectly.  Do I have to have a new piece set created to avoid this issue or is there a simpler fix that does not involve alerting an editor every time I try to code from Alfaerie: Many?

Second, in those functions are several parts.  Using the Sac Chess Rook/Ferz compound as an example: 

def G checkride #0 #1 1 0 or checkleap #0 #1 1 1;
def GL merge rays #0 1 0 leaps #0 1 1;

I understand that the #0 and #1 stand for the initial square moved and final square moved, but I don't understand how the 1's and 0's after those work exactly, though I have been able to fudge the results I want with those.  I also understand the functions with the L at the end is for finding revealed checks, but I don't know how to associate rays and leaps how they are supposed to.  I get that rays are for the checkrides and leaps for checkleaps.  Does it essentially match the previous function?

Thank you for any help provided!

-Nick