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 ]

Comments/Ratings for a Single Item

Later Reverse Order EarlierEarliest
Grand Apothecary Chess-Alert. (Updated!) Very large Board variant obtained trough tinkering with known games.[All Comments] [Add Comment or Rating]
🔔Notification on Thu, Mar 28 06:42 AM UTC:

The author, Aurelian Florea, has updated this page.


Bob Greenwade wrote on Wed, Mar 27 03:47 PM UTC in reply to H. G. Muller from 03:35 PM:

Aurelian was replying to me, about the WZ being usually called Sorcerer.


H. G. Muller wrote on Wed, Mar 27 03:35 PM UTC in reply to Aurelian Florea from 03:28 PM:

Ok, I'll remember that for the future!

No, don't, because it was wrong. The relative pathname would still have needed a graphics.dir in it, as it would not be interpreted relative to the graphicsDir of the Diagram, but to the URL of the page, which is something like /rules/grand-apothecary.

The problem was in the betza.js. It takes apart the name of the %-containing image at the dots, to test whether it already contains a file extension or that the specified graphicsType still should be added. But then it has to put everything that was not an extension together again, (separated by dots), and it was forgetting the last part.


🕸Fergus Duniho wrote on Wed, Mar 27 03:28 PM UTC in reply to Fergus Duniho from 12:37 PM:

That recommendation didn't work, but after I reinstated the previous revision, the WZ piece showed up in Firefox. I then checked Edge, and it still wasn't showing up. Since I had used the Reload Skip Cache button in Firefox, I used the Hard Refresh Button in Edge to reload it with a cleared cache, and then it did show up.


💡📝Aurelian Florea wrote on Wed, Mar 27 03:28 PM UTC in reply to Bob Greenwade from 02:18 PM:

Ok, I'll remember that for the future!


H. G. Muller wrote on Wed, Mar 27 03:28 PM UTC:

There was an error in handling the dots in the alternative filename by the betza.js script, which I thought I had fixed some time ago: it choked on the dot in graphics.dir. Apparently I fixed that wrong, although I thought it did solve the problem we had at the time. Anyway, it should now work correctly. (After flushing the faulty version out of the browser cache).


Daniel Zacharias wrote on Wed, Mar 27 02:50 PM UTC in reply to Fergus Duniho from 12:37 PM:

I'm using vivaldi, but I don't see it in firefox either. Changing to a relative path doesn't seem to make any difference


Bob Greenwade wrote on Wed, Mar 27 02:18 PM UTC in reply to Aurelian Florea from 10:25 AM:

Contrasting with the Wizard's FC, the WZ is generally the Sorcerer.


🕸Fergus Duniho wrote on Wed, Mar 27 12:37 PM UTC in reply to Bn Em from 12:17 PM:

I do see the ZW piece, but looking at the code, I see that this piece is coming from a different directory than the others. Maybe different browsers handle the resulting URL differently, or maybe the JavaScript for this works differently in different browsers. I would recommend starting its file name with ../alfaeriemisc/ instead of /graphics.dir/alfaeriemisc/.


Bn Em wrote on Wed, Mar 27 12:17 PM UTC in reply to Aurelian Florea from 10:27 AM:

Can confirm it's not showing up; the ID seems to be requesting /graphics.gif (which of course does not exist) rather than /graphics.dir/alfaeriemisc/compounds/wzebrawazir.gif as expected


💡📝Aurelian Florea wrote on Wed, Mar 27 10:27 AM UTC in reply to Daniel Zacharias from Sat Mar 23 08:26 PM:

I don't know why the Picture does not work! It works for me!


💡📝Aurelian Florea wrote on Wed, Mar 27 10:25 AM UTC in reply to Daniel Zacharias from Sat Mar 23 08:26 PM:

I though at warlock for ZW because it is related to the wizard CF.


Daniel Zacharias wrote on Sat, Mar 23 08:26 PM UTC:

I can't see the Warlock on the interactive diagram.

Also, I'm wondering where the name Warlock for ZW comes from, or if it's original to this game.


💡📝Aurelian Florea wrote on Fri, Sep 8, 2023 12:25 PM UTC in reply to H. G. Muller from 12:19 PM:

Thanks!


H. G. Muller wrote on Fri, Sep 8, 2023 12:19 PM UTC:

It seems to work now: I implemented a sort of killer heuristic in the 2-ply search needed to test for checkmate. This appears to speed up the search enough so that it can complete in this potentially unfavorable case.

What I did is this: when the reply to an investigated move captures the King (thus disqualifying the move and requiring the search for a legal one to go on), it remembers the square of the piece that made the capture. When it then investigates the next move, it first generates the moves of this piece alone, before generating all moves of the opponent. In positions with a pre-existing check most moves won't resolve that check, and are quickly refuted that way. (By generating moves of only a single piece, rather than of all pieces.)

In the rare case where there wasn't a pre-existing check, but it happened to first try a move that exposed the King, it could lead to extra work, as the moves of the King-capturing piece will be generated twice during investigation of the next move. But even there exposing the King could have been a result of moving away a pinned piece. And since moves are generated piece by piece the next move is then likely to have exposed the King in the same way, and will then be quickly refuted by the same King capture.


H. G. Muller wrote on Fri, Sep 8, 2023 09:34 AM UTC in reply to Aurelian Florea from 04:41 AM:

OK, I see. This was automated with GAME code generated by the Play-Test Applet.

I did some debugging, and it doesn't seem there is anything wrong with the code. I get the impression that it just runs into a timeout enforced by Game Courier, so that it cannot complete, and gives you the error message instead.

You are using full legality checking here (which probably is a necessity due to participation of the Joker). That means that testing to see if white is checkmated requires finding a legal  move for white. So it tries all white moves, and for each of those it then generates all black moves to see if there is one that captures the King. If there isn't, the process is aborted, with the verdict that there is no mate; if it encounters one that does capture the King it knows the preceding white move was illegal, and immediately goes on with the next, to see if it has better luck there.

But it appears the board is scanned for pieces from rank 14 to rank 1. After NN a3xe1 the Nightrider is checking. I have not studied the rules of your game to see if this is actually checkmate, but it is clear that the white pieces on the high ranks cannot resolve the check. And it starts trying all those, before it gets to pieces that would be close enough to the Nightrider to capture it. And all these other moves have to be refuted by Nightrider takes King, which is also one of the last moves it generates for black. So it must refute nearly all white moves, and for each of those it has to generate nearly all black moves to do it.

Had it scanned the board from low to high rank, it would always have detected the NNxK capture as one of the first black moves, so even if it was really checkmate (and it would have to try all white moves to prove that), it would have gone more than an order of magnitude faster. And if a white piece on low rank would have been able to capture the NN, it would have been one of the first things it tried for white. And then it would have found its legal move for white, and abort the mate test, which would again make it an order of magnitude faster. As it is, it only gets to trying moves from g3 before it is timed out.

I am not sure what we could do about this, apart for asking Fergus to stretch the timeout for executing GAME code. The Betza move generator uses a statement

  for (from piece) fn friends #player:

to loop over all pieces of the side to move, and this provides no control over the order in which the pieces are treated. Obviously the mate test could be sped up very much if we would always start with the piece that was checking; then almost all moves of the (nearly) checkmated player would be very quickly refuted by the King capture. The function 'friends' I used here gets its result from either onlyupper or onlylower, and I suppose it would be possible to reorder the pieces in these associative array, to get the checker in front, if the move generator is called for the purpose of legality testing for moves starting from an in-check position.

A poor-man's solution would be to scan the board always strating from the side of the player on move, because that is where his King starts. King moves are often a good way to get out of check, and if the King is suffocated like here, the check is likely to come from a piece that is close by.


💡📝Aurelian Florea wrote on Fri, Sep 8, 2023 04:41 AM UTC in reply to Aurelian Florea from Thu Sep 7 05:32 PM:

@HG & @Fergus, anything about this?


💡📝Aurelian Florea wrote on Thu, Sep 7, 2023 05:32 PM UTC:

I have discovered a new error in the Grand Apothecary Chess-Alert preset. In the game here:

 

Grand Apothecary Chess 1 on the Chess Variants Game Courier

 

I want to capture the joker on e1 with check, by the nightrider in a3. But the move does not go through.


💡📝Aurelian Florea wrote on Mon, Aug 28, 2023 05:33 PM UTC in reply to Bob Greenwade from 05:27 PM:

Indeed. Long leapers make pawns kind of irrelevant. On the other hand leapers the way I used them make the game less local.


Bob Greenwade wrote on Mon, Aug 28, 2023 05:27 PM UTC in reply to Aurelian Florea from 05:01 PM:

The Vultures being that weak is probably because they're lame. A straight-up HFXNY would probably start to rival the Rook (but might disrupt this game in other ways).


💡📝Aurelian Florea wrote on Mon, Aug 28, 2023 05:01 PM UTC in reply to Aurelian Florea from 04:55 PM:

The other 2 grand apothecary games have similar vultures. Also I have wanted a rook level piece. But it is not as strong most certainly! To my surprise they are weaker than the 12 directions leapers!


💡📝Aurelian Florea wrote on Mon, Aug 28, 2023 04:55 PM UTC in reply to Bob Greenwade from 03:51 PM:

Yes, that is because without the leap it would be very hard to develop!


Bob Greenwade wrote on Mon, Aug 28, 2023 03:51 PM UTC:

Fascinating! So just to be sure I understand the Vulture: It can freely leap, but not capture, along its (0,3) destination; but is lame for its (1,4) and (3,4) destinations? (mHnFXnNY)


💡📝Aurelian Florea wrote on Tue, Feb 22, 2022 04:41 PM UTC:

I have added in the notes sections explanations about why are the pieces are the way they are in this game. They are not perfect, but I had questions and I wanted to answer them.


💡📝Aurelian Florea wrote on Sat, Feb 12, 2022 01:05 PM UTC:

I have added in this game's initial position one regular pawn on each flank on the fourth row. That is because flank attacks by white where too dangerous in start positions where the black rook of the file was undefended. Also more king safety should he castle.


25 comments displayed

Later Reverse Order EarlierEarliest

Permalink to the exact comments currently displayed.