Check out Symmetric Chess, our featured variant for March, 2024.


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

Ratings & Comments

LatestLater Reverse Order EarlierEarliest
Apothecary Chess-Classic. Large board variant obtained through tinkering with known games.[All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Sun, May 24, 2020 02:09 PM UTC:

The function '#last_piece_moved' has not been defined. Its arguments are e10 f2

A variable appears as a string literal when it has not been defined. Make sure that last_piece_moved has a value assigned to it.

The function 'White_Joker-Range' has not been defined. Its arguments are e1

I didn't give you any code for defining this, but it needs to be defined.

def White_Joker-Range fn join str_replace "Black_" "White_" #last_piece_moved "-Range" #0;
def Black_Joker-Range fn join str_replace "White_" "Black_" #last_piece_moved "-Range" #0;

💡📝Aurelian Florea wrote on Sun, May 24, 2020 01:51 PM UTC:

Now the error is ;

The function 'White_Joker-Range' has not been defined. Its arguments are e1


💡📝Aurelian Florea wrote on Sun, May 24, 2020 01:33 PM UTC:

Yes, you are correct, it was the joker, but now I'm getting:

The function '#last_piece_moved' has not been defined. Its arguments are e10 f2

That happens in the checked subroutine at the line:

if fn const alias #piece #from var king

I had solved that one. There was a line where I wrote last_piece_moved instead of last_type_moved. 

 


🕸Fergus Duniho wrote on Sun, May 24, 2020 12:57 PM UTC:

That kind of error comes from not assigning a codename to a label you use for notation. It could be any piece. Make sure every piece in the game is fully defined.


💡📝Aurelian Florea wrote on Sun, May 24, 2020 04:34 AM UTC:

For now I use code which starts the joker on the board and not in hand. That to make it easier to isolate bugs.

But I'm getting the error:

The function '' has not been defined. Its arguments are e10 f2

It is at the for each where checks are tested. Could it be because of the special king?


🕸Fergus Duniho wrote on Sat, May 23, 2020 09:20 PM UTC:

Since I made White_Joker and Black_Joker separate pieces, use this code in White's Post-Move section:

if != const alias $moved White_Joker:
  set last_type_moved const alias $moved;
endif;

Use the same code for Black's but substitute Black_Joker for White_Joker.


🕸Fergus Duniho wrote on Sat, May 23, 2020 05:15 PM UTC:

I think these should work. Where a piece has a different definition for each side, it will use that for the piece on its own side. The other code for setting last_piece_moved should be used with this. This variable should be initialised in the Pre-Game section, and it should be updated in each Post-Move section. I rewrote None to include the two arguments for origin and destination as other piece functions do. Since it's a contradiction, it will always return false.

  def None == #0 #1 and != #0 #1;
  def White_Joker fn str_replace "Black_" "White_" #last_piece_moved #0 #1;
  def Black_Joker fn str_replace "White_" "Black_" #last_piece_moved #0 #1;

💡📝Aurelian Florea wrote on Sat, May 23, 2020 04:13 PM UTC:

Would the White Joker be able to move as a Black Pawn or as a White Pawn? 

So far I've played whith the joker always imitating it's own pieces when they have different moves. So the white joker moves like a white pawn when imitating a black pawn. That makes sense to me more as generally speaking pawns advance, so should the joker. Maybe if you think about it a little you would feel quite awkward with your piece moving backwards. But when moving as a pawn the joker may not promote.

Thanks for your help! 


🕸Fergus Duniho wrote on Sat, May 23, 2020 04:05 PM UTC:

First of all, you want to keep track of the last type of piece moved, and to start off with, it needs an initial default value.

set last_type_moved None;
def None false;

I'm thinking this could work for tracking the last piece moved:

  if != const alias $moved Joker:
    set last_type_moved const alias $moved;
  endif

This keeps track of the last piece moved using its codename, which matches the function name used for how it moves. But now I have another question. Suppose that the last piece moved was a Black Pawn. Would the White Joker be able to move as a Black Pawn or as a White Pawn?


Apothecary Chess-Modern. Large board variant obtained through tinkering with known games.[All Comments] [Add Comment or Rating]
💡📝Aurelian Florea wrote on Sat, May 23, 2020 01:45 PM UTC:

I have added some clarifications regarding how the joker moves in the beginning and when imitating the enemy joker. They can be found at the end of the rules chapter.


Apothecary Chess-Classic. Large board variant obtained through tinkering with known games.[All Comments] [Add Comment or Rating]
💡📝Aurelian Florea wrote on Sat, May 23, 2020 01:45 PM UTC:

I have added some clarifications regarding how the joker moves in the beginning and when imitating the enemy joker. They can be found at the end of the rules chapter.


Chameleon (2). Change movement abilities after every movement.[All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Sat, May 23, 2020 12:57 PM UTC:

Can you go to a page where your Joker piece is used and explain clearly how it works when (1) no piece has moved yet, and (2) when the last piece to move was a Joker? The function I wrote was recursive without any way to break out of the recursion for these two conditions.


Phantom. Classical Chess featuring an invisible Phantom piece.[All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Fri, May 22, 2020 04:52 PM UTC:

It seems that I had mistyped the ItemID as Phantom, which resulted in it creating the /membergraphics/Phantom directory. For unknown reasons, it was unable to create the directory /membergrahics/MSphantom/ through the script. I'm not sure why it had a problem with this and not the other. So, I created the directory manually via SSH, and uploading should now work for this item.


Chameleon (2). Change movement abilities after every movement.[All Comments] [Add Comment or Rating]
Aurelian Florea wrote on Fri, May 22, 2020 02:29 PM UTC:

Fergus, we have talked about the implementing in game courier of this piece a few weeks ago. It turns out that the stalemated subroutine is incompatible with the code you initilly. Do you have time this weekend to take a better look at the matter? I'd appreciate it for my 2 apothecary games.


FrogsAndPrincess. Members-Only Based on Princess and the Frog Story.[All Comments] [Add Comment or Rating]

Since this comment is for a page that has not been published yet, you must be signed in to read it.

Since this comment is for a page that has not been published yet, you must be signed in to read it.

Phantom. Classical Chess featuring an invisible Phantom piece.[All Comments] [Add Comment or Rating]
Ben Reiniger wrote on Fri, May 22, 2020 01:50 AM UTC:

While I don't get the author information block displayed on this page, I assume (based on the link on my own page and the itemID of this page) that the link is 
https://www.chessvariants.com/index/managefiles.php?itemid=MSphantom
which gives me the error:

The directory  /membergraphics/MSphantom/  does not exist.

Trying to navigate directly to the folder also fails.


🕸Fergus Duniho wrote on Fri, May 22, 2020 01:22 AM UTC:

I just used the file manager to upload and delete a sample file to the directory for Phantom.


💡📝Simon Jepps wrote on Thu, May 21, 2020 10:10 PM UTC:

Nope, whenever I click "upload or manage files" I still get the same error message I posted before.


FrogsAndPrincess. Members-Only Based on Princess and the Frog Story.[All Comments] [Add Comment or Rating]

Since this comment is for a page that has not been published yet, you must be signed in to read it.

Since this comment is for a page that has not been published yet, you must be signed in to read it.

Since this comment is for a page that has not been published yet, you must be signed in to read it.

Since this comment is for a page that has not been published yet, you must be signed in to read it.

HexofenA game information page
. 91-cell hexagonal variant with three knights and parallel pawn rows.[All Comments] [Add Comment or Rating]
Cesc wrote on Wed, May 20, 2020 12:33 AM UTC:

Correct link. Hexofen description found at:

http://www.fishka.spb.ru/artickles/englishversion/ENGLISH/1.htm


How to Design and Post Your Own Game. A reference for those who want to post their own games here.[All Comments] [Add Comment or Rating]
🕸📝Fergus Duniho wrote on Tue, May 19, 2020 06:13 PM UTC:

Okay, I did that.


25 comments displayed

LatestLater Reverse Order EarlierEarliest

Permalink to the exact comments currently displayed.