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:
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?
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