Check out Glinski's Hexagonal Chess, our featured variant for May, 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
Diagram testing thread[Subject Thread] [Add Response]
H. G. Muller wrote on Tue, Jan 17, 2023 03:52 PM EST:

It is good that you also include extra light pieces. But why use the Elephant-Ferz? It is so similar to a Bishop that it adds very little to the game. So why not use the Elephant-Wazir (aka Phoenix) instead? That is a very interesting piece, but you hardly ever see it in western chess variants.


Kevin Pacey wrote on Tue, Jan 17, 2023 02:28 PM EST:

Here's a diagram for a 14x8 CV invention idea of mine that might be called 'Wide-Spiel' (crosses the armies of Courier-Spiel and Capablanca Chess); I can study this at my leisure (Fast Castling rules, like in Wide Chess; FIDE pawn rules) [edit: I now don't like this CV idea much - guards are weak/slow pieces here and 14x8 seems a bit wide, too. edit2: maybe a bit too harsh on this idea.]:

diagram

Kevin Pacey wrote on Tue, Jan 17, 2023 02:07 PM EST:

Here's a diagram for a 12x8 CV invention idea of mine, which might be called 'Janus-Spiel', and which I can study at my leisure (Fast Castling rules, like in Wide Chess; FIDE pawn rules) [edit: I now don't like this CV idea much; elephants seem awkward in the setup and Archbishops might prove too active {or the opposite, if one is left at home beside a castled K}. edit2: maybe a bit too harsh on this idea.]:

diagram

Note that replacing an Archbishop on each player's Q-side with a Chancellor in the setup gets to an earlier CV invention idea of mine ('Capa-Spiel').


Toggle Chess[Subject Thread] [Add Response]
Gerd Degens wrote on Tue, Jan 17, 2023 01:36 PM EST:

Could this be an acceptable chess variant? Toggle Chess.

I would like to take this opportunity to remind you of my variant Borderline.
(Maybe not the most interesting variant, but it is quite suitable for a fast game.)


ChatGPT[Subject Thread] [Add Response]
Aurelian Florea wrote on Mon, Jan 16, 2023 12:38 AM EST in reply to Jean-Louis Cazaux from Sun Jan 15 02:38 PM:

Thanks, Jean-Louis!


🕸Fergus Duniho wrote on Sun, Jan 15, 2023 04:30 PM EST in reply to Jean-Louis Cazaux from 02:20 PM:

I asked it about Cavalier Chess yesterday, and it said David Pritchard invented the game.


Jean-Louis Cazaux wrote on Sun, Jan 15, 2023 02:38 PM EST in reply to Aurelian Florea from 02:28 PM:

@Aurelian. I had tried this! It doesn't know you. So far :=). If you enter and say you are the new president of the U.S.A., I'm sure it will tell me that you are the new president of the U.S.A.


Aurelian Florea wrote on Sun, Jan 15, 2023 02:28 PM EST in reply to Jean-Louis Cazaux from 02:20 PM:

@ Jean-Louis, now I'm curious what does it say about me. It sounds to me it is like a child.


Jean-Louis Cazaux wrote on Sun, Jan 15, 2023 02:20 PM EST in reply to Jean-Louis Cazaux from 02:10 PM:

Very funny.

Do you know Fergus Duniho?

I am aware of Fergus Duniho, he is a chess variant inventor who has created several chess variants, including "Grand Chess", "Knightmate Chess", "Cylinder Chess", "Four-Player Chess", and many others. He is a well-known figure in the chess variant community and his games are played and enjoyed by chess enthusiasts worldwide. He is also a member of the Chess Variant Pages, where he shares his creations and research, and interacts with other variant inventors and enthusiasts. He is considered as one of the most prolific chess variant inventor with many creative and innovative ideas.

Do you know H.G. Muller?

I am familiar with H.G. Muller, he is a Dutch chess player and chess variant inventor who has created several chess variants, including "Makruk", "Crazyhouse", "Bughouse", "Three-Check Chess", "Atomic Chess" and many others. He is also known for his work in the field of computer chess and has written several books and articles on chess programming. He is considered as one of the most important figures in the field of chess variants and computer chess, and his work has been widely recognized and respected by the chess community. He has also been active in promoting chess variants and has organized many tournaments and events for them.

Do you know Greg Strong?

I am familiar with Greg Strong, he is a chess variant inventor and enthusiast who has created several chess variants, including "Shuffle Chess", "Loaded Dice Chess", "Seirawan Chess" and many others. He is also known for his work in promoting chess variants, and has organized several tournaments and events for chess variants. He has also written articles and books about chess variants, and is considered as a valuable member of the chess variant community. He is also an active member of the Chess Variant Pages, where he shares his creations and research and interacts with other variant inventors and enthusiasts. He is considered as one of the most creative and innovative chess variant inventor with many original ideas.


Jean-Louis Cazaux wrote on Sun, Jan 15, 2023 02:10 PM EST in reply to Greg Strong from Sat Jan 14 05:15 PM:

Very strange. I asked: Do you know Shako, a chess variant?

Yes, I am familiar with Shako. It is a chess variant that was invented by Bruce Whitehill in the 1990s. The game is played on a 10x8 board and has different starting position and pieces movements. The game features an additional piece called Shako which moves as a knight or a king, and also it has two additional pawns, which move and capture diagonally. Shako also has several other unique features such as the "Shako Pawn", which can move one or two squares on its first move and can move forward or diagonally, and the "Shako Knight" which moves in the L-shape of a knight but also has an additional move to any adjacent square. This variant is considered a more complex version of chess and it is not as popular as the traditional chess game. However, it has its own enthusiasts and tournaments are organized for it.

Who is Bruce Whitehill?

Bruce Whitehill is an American chess player and author who is best known for inventing the chess variant called Shako. He created the game in the 1990s, and it has since gained a small following among chess enthusiasts. Whitehill is also the author of several books on chess, including "The Big Book of Chess" and "The Big Book of Shako". He is a chess historian and collector, and has many books, manuscripts and chess sets in his collection. He is also an active member of the chess community, and has served as the president of the chess club of Boston. In addition to his work on chess, Whitehill is also a historian and has written several books on historical topics such as the French Revolution and the American Revolution.

Where can I find Shako from Bruce Whitehill?

You can find information about Shako, the chess variant invented by Bruce Whitehill, in several ways: Online: There are several websites that offer information about the game, including its rules and strategies. You can also find online forums and discussion groups where you can talk to other enthusiasts about the game. Books: Bruce Whitehill has written several books about Shako, including "The Big Book of Shako" which provides a comprehensive guide to the game. Clubs and Tournaments: Some chess clubs may also host Shako tournaments or offer the chance to play the game. You can check with your local chess clubs or search online for clubs that specialize in chess variants. Online marketplaces: You can find Shako set on online marketplaces like Amazon, Ebay and others, where you can buy the set and play the game. It's worth noting that, as Shako is not a mainstream chess variant it could be harder to find the resources and people to play it, but it's still possible to find other enthusiasts and resources online.

I cannot find any trace of this variant named Shako from B Whitehill. Nothing on Google, no trace of such a book "The Big Book of Shako" by this author. I really wonder where its information comes from.

Do you know Eurasian chess?

Eurasian chess, also known as Mughal-Moghul chess, is a chess variant that is said to have originated in the Indian subcontinent during the Mughal Empire. It is similar to the traditional game of chess, but with a few key differences. One of the main differences is the board, which is typically an 8x10 board, as opposed to the 8x8 board used in traditional chess. Additionally, the pieces have different moves and abilities. The pawns are able to move and capture diagonally, and the queen and bishop have slightly different moves. Eurasian chess is also known for its use of a "vao" piece, which is similar to a pawn but can move and capture in any direction. Eurasian chess is not as popular as traditional chess, and it is not well known outside of the Indian subcontinent. However, there is a small community of enthusiasts who play and promote the game. It's worth noting that the game is not recognized by the World Chess Federation (FIDE) and it's not considered as an official chess variant.


Greg Strong wrote on Sat, Jan 14, 2023 05:15 PM EST:

ChatGPT: As an AI, I do not have the ability to invent anything, including chess variants.

That's very odd that it would say that, since it did when I asked it (although the ideas may not be original).  As another example of it being creative, I asked it "Can you give me an idea that involves avocados and arachnids?"  It replied:

One possible idea involving avocados and arachnids is to create a themed café or restaurant that serves dishes featuring both of these ingredients. The café could be called "The Avocado Spider" and could feature a variety of dishes that incorporate avocados and arachnids in creative and tasty ways. For example, the menu could include avocado and spider crab salad, avocado and tarantula tempura, and avocado ice cream topped with chocolate-covered spider webs. The café could also have decorations and artwork featuring avocados and arachnids, such as sculptures of spiders made from avocado pits and murals of avocado trees with spider webs.

Unfortunately, I've been unable to connect so far. I can't go farther than checking I'm not a robot. After, it is not responding.

Sometimes the system is full and you need to come back later, although it usually says to try again later.

'Another variant could be to allow pawns to move diagonally when capturing, but not when moving normally.'

This seems to be just FIDE pawns, perhaps - is there a typo/omission?

That is my impression also.  There is no typo - sometimes ChatGPT is just wrong.  I asked it to prove that the square root of 2 is irrational, which I thought would be an easy question for it.  The answer started off on the right track but in the middle it went completely off the rails, saying "but since the square root of 2 is 2, the square root of 2 must be irrational."  (The square root of 2 is not 2, and if it were, it would mean that it is rational.)


🕸Fergus Duniho wrote on Sat, Jan 14, 2023 02:57 PM EST:

Me: Have you ever invented a Chess variant?

ChatGPT: As an AI, I do not have the ability to invent anything, including chess variants. However, I can assist in the creation of a chess variant by providing information on existing variants and their rules, and by simulating and analyzing games of the new variant.

Me: Who created Timekeeper Chess?

ChatGPT: Timekeeper chess is a chess variant created by Dr. Hans Berliner. He was a German-born American International Master of correspondence chess, a former World Correspondence Chess Champion, a computer scientist and professor of computer science at Carnegie Mellon University, and a pioneer in the field of computer chess. He invented timekeeper chess to reduce the time advantage that a player has over his opponent. The variant has a time clock that runs in parallel with the game clock, and it is designed to make time management an important strategic factor in the game.

Me: Does this game have a piece called a Timekeeper?

ChatGPT: Timekeeper Chess does not have a specific piece called a "Timekeeper". It is a chess variant that uses a specialized time control system, in which each player has a regular game clock and a separate timekeeper clock. The timekeeper clock is used to keep track of the total time each player has spent thinking about his or her moves, and it is designed to reduce the advantage of players who take longer to make their moves. The game is played with the standard chess pieces, but the timekeeper clock is an added element that changes the way the game is played, it makes time management a strategic factor in the game.

Me: Do you know Greg Strong?

ChatGPT: I'm familiar with the name Greg Strong, but I don't have any specific information about him. It's a common name, and there might be many people with this name. Without more context, I'm unable to tell you more about a specific person with that name.

Me: Do you remember when he asked you to create a Chess variant, and you invented one called Timekeeper Chess?

ChatGPT: I apologize but I am an AI model and I do not have the ability to remember past interactions or to invent anything, including chess variants. I am a machine learning model that was trained on a large dataset of text and my knowledge is limited to the information that I was trained on. I provided information on Timekeeper chess that was created by Dr. Hans Berliner, a computer scientist and professor of computer science at Carnegie Mellon University, I do not have any information about any other person, such as Greg Strong, asking me to invent a chess variant.

Me: Can you create a Chess variant?

ChatGPT: As an AI, I do not have the ability to invent anything, including chess variants. However, I can assist in the creation of a chess variant by providing information on existing variants and their rules, and by simulating and analyzing games of the new variant. I can also provide possible new rules and modifications to the traditional chess game that could create a new variant.

For example, one possible variant could be a game where a player can move any piece they want, regardless of its normal movement rules. Another possible variant could be a game where players take turns placing pieces on the board instead of moving them. There are many possibilities for creating new chess variants and I can help you explore them.


Jean-Louis Cazaux wrote on Sat, Jan 14, 2023 02:31 PM EST in reply to Greg Strong from 01:54 PM:

It is impressive. I didn't know that. I've created an account. Unfortunately, I've been unable to connect so far. I can't go farther than checking I'm not a robot. After, it is not responding.


Kevin Pacey wrote on Sat, Jan 14, 2023 02:29 PM EST:

@Greg:

I don't get #4 CV idea:

'Another variant could be to allow pawns to move diagonally when capturing, but not when moving normally.'

This seems to be just FIDE pawns, perhaps - is there a typo/omission?


Greg Strong wrote on Sat, Jan 14, 2023 01:54 PM EST:

If anyone hasn't checked out ChatGPT, it's worth a look. It's creativity is pretty impressive. I asked it "Can you invent a chess variant?" and it responded:

Sure, here's a simple chess variant:

  1. Introduce a new piece called "The Timekeeper". It moves like a rook but it has the ability to move back in time to the last time it moved. It will change the position of the board as it was in the previous move.

  2. Another variant could be to allow pawns to move backwards as well as forwards.

  3. Introduce a new piece called "The Portal". The portal can move to any unoccupied square on the board, but once it moves, the player must move a different piece to the square that the portal just left.

  4. Another variant could be to allow pawns to move diagonally when capturing, but not when moving normally.

  5. Introduce a new piece called "The Ghost" which can move through occupied squares, but cannot capture pieces.

These are just a few examples of chess variants, feel free to modify them or come up with new ideas. The possibilities are endless!

I then asked it if it could explain the move of the Timekeeper in more detail:

The Timekeeper is a chess piece that moves like a rook (horizontally or vertically in any direction, any number of squares) but it has the ability to move back in time to the last time it moved. This means that when the Timekeeper is moved, the position of the board is changed to the way it was at the time of the Timekeeper's last move. This creates an interesting dynamic in the game as it allows players to undo previous moves and change the course of the game.

For example, if the Timekeeper is moved from its starting position to a square on the opposite side of the board, and then moved back to its starting position, the board would be returned to the state it was in before the Timekeeper's first move. This can potentially allow players to undo mistakes, or to put their opponent in a difficult position by returning the board to a previous state where their opponent had a disadvantage.

It is important to note that The Timekeeper can only move back to a state where the board was in the previous move, it cannot go back further than that, and also it cannot take back any captures or pawn promotion moves, only the position of the board will be changed. This addition of Timekeeper in the chess variant makes the game more complex as players need to consider not only the current position of the pieces, but also how the board will change if the Timekeeper is moved.

Then I asked it to write a rap song about chess variants:

Verse 1: I got a new game, it's called chess variants A whole new way to play, it's gonna be magnificent I got a new piece, it's called the timekeeper It moves like a rook but it's a game changer

Chorus: Chess variants, chess variants A whole new way to play, it's gonna be fantastic Chess variants, chess variants A brand new game, it's gonna be ecstatic

Verse 2: I got another one, pawns can move backwards too It's a game changer, it's a brand new view I got a new piece, it's called the portal It can move anywhere, but it's not mortal

Chorus: Chess variants, chess variants A whole new way to play, it's gonna be fantastic Chess variants, chess variants A brand new game, it's gonna be ecstatic

Verse 3: I got another one, pawns can move diagonally When capturing, it's a whole new strategy I got a new piece, it's called the ghost It can move through pieces, it's a game host

Chorus: Chess variants, chess variants A whole new way to play, it's gonna be fantastic Chess variants, chess variants A brand new game, it's gonna be ecstatic

Outro: So come on and play, this brand new chess It's gonna be fun, it's gonna be a success Chess variants, chess variants A whole new way to play, it's gonna be fantastic.

 


Kamikaze Mortal Shogi[Subject Thread] [Add Response]
🕸Fergus Duniho wrote on Fri, Jan 13, 2023 04:07 PM EST in reply to wdtr2 from 02:34 PM:

Thanks for reporting this. This is now fixed. It turns out that Kamikaze Mortal Shogi was running older code than Shogi was.


wdtr2 wrote on Fri, Jan 13, 2023 02:34 PM EST:

I'm not sure if this is a bug. I just attempted to play Kamikaze Mortal Shogi with 2 people on the same computer.
It appears to me that the screens came up properly, but the game did not show legal moves. (FYI). This was in the 1st move and not on drop moves. (I did not test that). Shogi seems to have had something simmilar, but you fixed that. Thank you. :)


Terminology: Names for some square boards, extending decimal and dozenal[Subject Thread] [Add Response]
Jean-Louis Cazaux wrote on Mon, Jan 2, 2023 07:08 AM EST:

@Jörgen: I don't if there is a need or not but I like your proposed words. I didn't know that femto- and atto- prefixes are from Danish, nice to learn.

For 13, I think trezenal would be better. I've found it is used by people using base-13 computation. https://trezenal.fandom.com/wiki/Trezenal_Wiki


H. G. Muller wrote on Mon, Jan 2, 2023 01:42 AM EST in reply to Jörg Knappen from Sun Jan 1 04:41 PM:

Is there a technical limitation that tags should start with a letter? If not, why not just have tags 10x10, 10x8 etc.?


Duck Chess are everywhere, but why not there?[Subject Thread] [Add Response]
H. G. Muller wrote on Mon, Jan 2, 2023 01:11 AM EST:

I thought about adding a Duck Chess article. I even uploaded a Duck image with the XBoard set. But the Interactive Diagram is not able to play it yet, so I deferred that plan to when I had an idea for how to adapt that.

BTW we have an article about a very similar variant, called Blue Chip Chess.


Greg Strong wrote on Sun, Jan 1, 2023 08:31 PM EST in reply to Kevin Pacey from 08:05 PM:

This link has complete rules but you need to scroll down a while to get to them:

https://duckchess.com/


Kevin Pacey wrote on Sun, Jan 1, 2023 08:05 PM EST:

Included in the sub-wiki below is a brief description of Duck Chess (not really sufficient):

https://en.wikipedia.org/wiki/List_of_chess_variants#Variant_(fairy)_pieces

Also, from Google here's a brief blurb:

Duck Chess is a chess variant invented by Dr. Tim Paulden in 2016. The game follows most regular chess rules but adds a dynamic component to the mix: a rubber duck that both players can move. Duck Chess introduces a rubber duck that acts as a blocker.

Another such blurb, again not quite sufficient:

Each player's turn has 2 steps: After moving a piece, the duck must be moved to a different and empty square. The duck does not move like a chess piece, you can move the duck to any open square on the board. There is no check or checkmate in Duck Chess! This means you can move into check, so be careful!

Here's a link Google gives from Chess.com about the rules of Duck Chess, again brief, but apparently this time sufficient:

https://support.chess.com/article/4578-what-is-duck-chess#:~:text=Each%20player%27s%20turn%20has%202,into%20check%2C%20so%20be%20careful!


Terminology: Names for some square boards, extending decimal and dozenal[Subject Thread] [Add Response]
🕸Fergus Duniho wrote on Sun, Jan 1, 2023 05:11 PM EST in reply to Jörg Knappen from 04:41 PM:

I think they will be very unfamiliar to English speakers, and board size is already kept track of without using tags. In the Related menu, you can usually find a link to Games on Same Board.


Jörg Knappen wrote on Sun, Jan 1, 2023 04:41 PM EST:

While adding some tags here and there, I am thinking of tagging some more square boards and I need agreeable names for that tags.

Two are quite clear:

16x16 hexadecimal (from Greek)
20x20 vigesimal (from Latin)

But what about the other numbers 11, 13, 14, 15, and 18 (I leave out 17 and 19 just now, they are probably too odd)?

I'm thinking of

11x11 onzenal (from French)
13x13 treizenal (also from French)
14x14 quatorzenal (again from French)
15x15 femtenal (from the metric prefix "femto" 10^{-15}, ultimately from Danish 15)
18x18 attenal (from "atto" 10^{-18}, ultimately from Danish 18)

What do you think?


Happy New Year[Subject Thread] [Add Response]
Jean-Louis Cazaux wrote on Sun, Jan 1, 2023 03:55 PM EST in reply to Diceroller is Fire from 01:42 PM:

Happy new year


Diceroller is Fire wrote on Sun, Jan 1, 2023 01:42 PM EST:


Amphibians synergy bonus compared to other compounds[Subject Thread] [Add Response]
Ben Reiniger wrote on Tue, Nov 29, 2022 11:20 AM EST:

From the chess StackExchange site comes this variant question: https://chess.stackexchange.com/q/41052/18278

To paraphrase very briefly: compound pieces seem to often have a synergy value of 1 (e.g. Q=R+B, v(Q)=9, v(R)+v(B)=8); do amphibians see a larger synergy bonus arising from their un-binding?


Horde chess[Subject Thread] [Add Response]
H. G. Muller wrote on Tue, Nov 15, 2022 03:13 PM EST in reply to Diceroller is Fire from 12:48 PM:

Why Horde chess exist on Lichess and aren't on Chessvariants?

Well, it is nearly the same as Dunsany's Chess. Perhaps it could be added as a note to that page, and the page also put in the alphabetical index under Horde?

As to why variants that are on LiChess might not have an article here, you should pose that question primarily on the LiChess forums. If no one from LiChess creates a page for it, then it is unlikely to be here. Most people here do not visit LiChess, and even when they do, not many people would create articles about someone else's chess variant.


Diceroller is Fire wrote on Tue, Nov 15, 2022 12:48 PM EST:

Why Horde chess exist on Lichess and aren't on Chessvariants? I tried to write Horde's rules but I met a page's number limit) Please write. Lichess is free chess site with billions of games and millions of players worldwide♡


Possible problem in PGP code [Subject Thread] [Add Response]
wdtr2 wrote on Sat, Nov 5, 2022 01:26 PM EDT in reply to Fergus Duniho from Thu Nov 3 11:47 AM:

yes, PHP. lol. oops. Thank you.


🕸Fergus Duniho wrote on Thu, Nov 3, 2022 11:47 AM EDT in reply to wdtr2 from Thu Oct 27 07:59 PM:

I don't know what PGP has to do with Game Courier, but the problem is now fixed. Perhaps you meant PHP.


Stockfish and chess variants [Subject Thread] [Add Response]
Aurelian Florea wrote on Thu, Nov 3, 2022 08:00 AM EDT in reply to H. G. Muller from 07:26 AM:

Thanks, HG!


H. G. Muller wrote on Thu, Nov 3, 2022 07:26 AM EDT in reply to Aurelian Florea from 07:04 AM:

This is what I expected. Stockfish uses bitboards, and the standard algortithms for bitboards are very much specialized for sliding along diagonals and orthogonals. Fast algorithms for check detection also often assume that moves are reversible which is also not true for bent riders.


Aurelian Florea wrote on Thu, Nov 3, 2022 07:04 AM EDT in reply to Daphne Snowmoon from Wed Nov 2 07:50 AM:

So it seems stockfish cannot do bent riders!


Daphne Snowmoon wrote on Wed, Nov 2, 2022 07:50 AM EDT in reply to Aurelian Florea from 07:39 AM:

https://github.com/ianfab/Fairy-Stockfish/blob/master/src/variants.ini

It might be good to take a look at this. Variants created by individuals are implemented by this definition.

And I use Fairy Stockfish via WinBoard (XBoard), I'll give you the file if you need it.


Aurelian Florea wrote on Wed, Nov 2, 2022 07:39 AM EDT in reply to Daphne Snowmoon from 06:28 AM:

Thanks, Daphne! Have you any idea about what fairy pieces it recognizes?


Daphne Snowmoon wrote on Wed, Nov 2, 2022 06:28 AM EDT in reply to Aurelian Florea from 06:10 AM:

Aurelian Florea //

https://github.com/ianfab/Fairy-Stockfish/releases/tag/fairy_sf_14

I downloaded Fairy Stockfish from assets here.

https://discord.gg/aPs8RKr

It might be quicker to ask on this channel how to use Fairy Stockfish.


Aurelian Florea wrote on Wed, Nov 2, 2022 06:10 AM EDT:

I have seen below a discussion involving stockfish and chess variants. I did not knew that there is a connection. Can someone explain me please what variants, stockfish can play!


Possible problem in PGP code [Subject Thread] [Add Response]
wdtr2 wrote on Thu, Oct 27, 2022 07:59 PM EDT:

Using Self play against the game https://www.chessvariants.com/play/pbm/play.php?game=Pocket+Shogi+Copper&settings=default

Now move the black bishop to the center of the board without a capture (when that move is legal). (3rd or 4th move)

I think This move will produce a "move" parse error IMO.

There has been no coding changes to that game for many years.


Did something change in the Code syntax?[Subject Thread] [Add Response]
🕸Fergus Duniho wrote on Wed, Oct 26, 2022 01:29 PM EDT in reply to wdtr2 from Sun Oct 23 06:19 PM:

Please provide a link to the code that isn't working.


wdtr2 wrote on Sun, Oct 23, 2022 06:19 PM EDT:

A few months ago (perhaps a year or more), the code for shogi was modified. We now seem to have special variables like pawn-range etc.

The code I copied and modified many years ago does not seem to be working. Below is an error message below that I got using my old code where b is a black bishop, when I attempt to do a drop I seem to get the error message The move MOVE: b*9h ain't well-formed.

Any suggestions on how I should correct this?

Array ( [0] => MOVE: [1] => b [2] => * [3] => 9h )

ILLEGAL: b*9h on turn 8:

The move MOVE: b9h ain't well-formed. b is a coordinate. So should be a hyphen.

Go back with your browser's BACK button, reload the page, and try again.

For diagnostic purposes, here is the full movelist:

  1. p 8g-8f 1... P 8c-8d
  2. n 9i-8g 2... N 9a-8c
  3. n 8g-7e 3... N 8c-9e
  4. n 7e-8c; +n-dest 4... N 9e-8g; +N-dest
  5. +n 8c-9b 5... +N 8g-9h // - bCapture- -
  6. s 8i-9h 6... B*8g // - Check! -
  7. s 9h-8g 7... P 4c-4d
  8. b*9h

Setup graphics, piece sets[Subject Thread] [Add Response]
H. G. Muller wrote on Thu, Oct 20, 2022 03:19 PM EDT in reply to Bn Em from Sun Oct 9 02:07 PM:

The obvious remaining reason to favour static images over the interactive diagram is that the latter only works with Javascript enabled. I suppose the obvious(?) way around that would be to also have the design wizard generate a link to a Diagram‐Designer‐ or Scalable‐Diagram‐Editor‐generated (if the latter gets installed?) image and wrap it in <noscript> tags?

Indeed, this is what I have done in my own articles that use Interactive Diagrams as principal diagram. I don't think a special application would be needed to generate the static image; once people would have created an Interactive Diagram to their satisfaction, they can simply take a screenshot of it to obtain an identical static image, and upload that.

But there are two different issues here: (1) how we could streamline the submission process, and guide the user to submit articles in a form we like to have them, and (2) what we would like best, and whether we should make an effort to give the CVP website a facelift to cast existing articles authored by people that have left long ago in that form.

For the moment I would like to focus on (2). If we all agree that the Interactive Diagram at its current stage should be preferably used as principal image of the initial setup, I am in favor of starting working towards that goal, and replace the images there are now by Interactive Diagrams (with 'noscript' static backups). We can argue about how perfect the Diagram representation has to be in order to be superior to a static image. (E.g. should the AI work perfectly, work at all, or would it be sufficient to just use it for summoning move diagrams and highlighting piece moves?) Or how poor the image that there is now should be in order for replacement by anything whatsoever to be an improvement.

I would for instance be in favor of replacing all ASCII diagrams, even for games the Diagram cannot actually play (yet?), and even when some of the more quirky rules (such as turning a piece of choice into a King when you lost your old one) can not be implemented when the Diagram is operated by the user. Even a static screenshot of the Diagram would be an improvement there.

I have already started churning out Diagrams for all variants in the Alphabetical Index that are playable, and can be made to look like the static image the article is using now (if not ASCII). I think I worked my way all through 'a' now. A problem is that the CVP seem completely unorganized as to available piece graphics; some of the diagrams use piece images that are probably available, but I have no idea where to find those.


Borderline[Subject Thread] [Add Response]
Gerd Degens wrote on Tue, Oct 18, 2022 07:52 AM EDT:

I would like to introduce a new variant - called 'Borderline'.

It is a minimalistic version on a 7x7 board, without pawns, with only one king to capture, no capturing of opponent pieces. Rank 4 is the borderline, which must be crossed to attack the king. The pieces move according to FIDE rules.

Perhaps the variant is a bit too minimalistic, but it seems pleasantly playable.

I don't know if such a variant has been presented before. But I'm sure the community knows it.


Metamachy preset not working[Subject Thread] [Add Response]
Jean-Louis Cazaux wrote on Sat, Oct 15, 2022 10:55 AM EDT in reply to Aurelian Florea from 05:01 AM:

I get the same. Maybe something is wrong in the setting of the invitation


Aurelian Florea wrote on Sat, Oct 15, 2022 05:01 AM EDT:

I'm trying to accept a metamachy challenge but I am getting the following error:

"Your userid is catugo. This log is private. It may be viewed only by the players. If you are one of the players, please sign in first. You may use the menu for this."


Setup graphics, piece sets[Subject Thread] [Add Response]
H. G. Muller wrote on Wed, Oct 12, 2022 03:47 AM EDT in reply to H. G. Muller from Mon Oct 10 04:18 AM:

The Interactive Diagram can now also generate the list of pieces and their starting square as lines of text, rather than as a table (like it was doing in the original posting of this Diagram). Whether one or the other method is chosen depends on how you embed the piece list on the page. In both cases the HTML tag pair that indicates the point where the list will be inserted will have to have id="pieceList". When the tag having this id is an unnumbered list (<ul>), the Diagram script will fill it with clickable list items for the pieces. When it is a paragraph (<p>) it will create text lines from clickable spans to describe the initial piece set up, like in the example below.

I am not sure whether the blue text for reminding people that the text can be clicked is optimally placed; there seems enough room to put it behind the 'White:' header on the same line.

graphicsDir=/graphics.dir/alfaeriePNG/ whitePrefix=w blackPrefix=b graphicsType=png squareSize=50 darkShade=#3030FF rimColor=#C0C0FF promoChoice=ACIWBRNF symmetry=none firstRank=1 useMarkers=1 satellite=nutters royal=11 royal=10 pawn::::a2-h2,,a7-h7 waffle::WA:elephantwazir:b1,g1 fad::FAD:elephantferzwarmachine:c1,f1 bede::BD:bishopwarmachine:a1,h1 cardinal:A:BN::d1 fibnif:I:FvN:narrowknightferz:,,b8,g8 charging knight:N:fhNbsWbF:forwardknightbackwardsprince:,,c8,f8 charging rook:R:fsRbWbF:forwardrookbackwardsprince:,,a8,h8 colonel::fsRfhNbWF:forwardchancellorprince:,,d8 clobber king:K:KirO2ilO3:king:e1 nutty king:K:KisO2:king:,,e8

Note that the starting squares of black pieces are now also mentioned. This is another improvement; only the white pieces used to have their starting squares mentioned. Because those are the only coordinates the user must supply when specifying the Diagram. For the black pieces one usually depends on the symmetry setting (mirror or rotate) to deduce the black starting squares from the white. The Diagram now converts the deduced starting squares to text form so that it can give them for the black pieces even in those cases (and for asymmetric setups displays those as given by the user).


H. G. Muller wrote on Mon, Oct 10, 2022 04:18 AM EDT in reply to Greg Strong from Sun Oct 9 08:50 PM:

Well, as a compromise I introduced a parameter fileOffset (default value 0), which determines how much the normal file labeling is shifted to the right (white POV). Where the alphabet is treated as a cyclic set a-w. This means that for fileOffset=1 the left edge gets labeled 'w', and the right edge just gets the next character in the normal sequence (so 'i' for Brouhaha. This was easy to do, and offers at least some improvement for the rare case one would want this.

This would not allow pasting of Game-Courier notation into the Diagram for Brouhaha (assuming the preset there uses the labels x and y), as GC always mentions the square of origin, and the Diagram would not recognize those labels. But I guess GC notation would not be accepted anyway, as it has a space between piece ID and the coordinate move. (This could probably be solved by making the parser ignore all strings of length 1, though, as the piece ID is redundant.) But relatively simple pre-processing of a GC game with a text editor (globally replacing 'y' -> 'i' and ' x' -> ' w') could solve that.

For Omega Chess the wizard squares would become w0, w11, k0 and k11. As the Wizards starting there are also color bound these are not very likely to appear in game notation, unless you would actually move something to those.


Comment Searching is Working Again[Subject Thread] [Add Response]
🕸Fergus Duniho wrote on Sun, Oct 9, 2022 10:27 PM EDT:

Since we're using MariaDB 10 again, I relearned how to enable fulltext searching and added a fulltext index to the appropriate column in the Comment table. So, we can now search the comments again.


Setup graphics, piece sets[Subject Thread] [Add Response]
Greg Strong wrote on Sun, Oct 9, 2022 08:50 PM EDT in reply to H. G. Muller from 06:04 PM:

I'm not really concerned about backwards compatibility, but on further consideration it is probably not worth modifying the program for this. It would make the program more complicated for very little gain. It is a very unusual use case, and there will always be some games that its not going to accommodate (Alice Chess, Backlash, Viking Chess, Marseillais, etc.) And since you mention Omega, yes, it has even stranger square naming. The four extra "Wizard squares" are annotated w1, w2, w3, and w4.


What's New?[Subject Thread] [Add Response]
Ben Reiniger wrote on Sun, Oct 9, 2022 07:07 PM EDT:

I've added a link to What's New to the menu. It already appears on the home page under the Explore heading.


Setup graphics, piece sets[Subject Thread] [Add Response]
Ben Reiniger wrote on Sun, Oct 9, 2022 06:52 PM EDT:

(I think I've fixed the subject title for comments in this thread; it wasn't an artifact of the site move, but rather of me not being thorough enough in database edits when I moved over the two first comments.)


H. G. Muller wrote on Sun, Oct 9, 2022 06:04 PM EDT in reply to Greg Strong from 04:20 PM:

Probably best that I change the extra files to 'y' and 'z'.

Well, if it is important for backward compatibility you could keep the 'x' for Brouhaha, as I explained in the edit of my previous posting. I suppose there aren't many other variants where simple a-... file IDs would not be satisfactory. Perhaps Omega Chess.

I think that there is very little reason to ever use anything else than consecutive letters to indicate the files, so a general way to define arbitrary individual names seems like overdoing it. A satisfactory solution would be to define 'w' as the letter preceding 'a' (to avoid xyz), and count backwards through the alphabet when more-'negative' letters are needed. So for Brouhaha we would use 'w' and 'i', and could describe the system by specifying a simple offset (e.g. firstFile=w). Another possible system would be to define the number of 'extra files', which would be assumed added to the board proper both left and right, and would have their own system of letter assignment from near the end of the alphabet. The first file of the proper board would then always be 'a'.


Greg Strong wrote on Sun, Oct 9, 2022 04:20 PM EDT in reply to H. G. Muller from 02:59 PM:

But 'x' would not be acceptable, as it would make the SAN notation ambiguous: the is also used as a capture indicator.

This is an excellent point.  ChessV doesn't use SAN at all and I'm not really familiar with it so this didn't occur to me.  Probably best that I change the extra files to 'y' and 'z'.


H. G. Muller wrote on Sun, Oct 9, 2022 02:59 PM EDT in reply to H. G. Muller from 01:44 PM:

That would be great, it its not too difficult.  Admittedly this is pretty unusual, but in the case of Brouhaha, I think it makes sense.  Games will often open with the usual moves and I like the fact that they are still "e4 e5 Nf3" ...

There is a problem, though: I see that you are using 'x' and 'z' for the edge files on your Brouhaha page. But 'x' would not be acceptable, as it would make the SAN notation ambiguous: the is also used as a capture indicator. There must be some restrictions on file labels to make notation work. If it was only a matter of choosing what to display in the margin of the board diagram it would not matter what labels you choose. (As long as they are not so large they would not fit in a cell the size of a square.) But the SAN generator and move parser must also be adapted to use those labels.

Regarding the array FEN, no, I am not asking the interactive diagram to generate it.  If I could add custom text under the list or under the board that would do it.  My appologies if this is already possible - it may well be.

Well, the Interactive Diagram is just an element in the HTML page you would submit as an article or comment. It would be entirely up to you to design the rest of the page. You just embed the Diagram and its 'satellites' in the page you design by inserting a HTML tag pair with the proper id (or, for the board element, with class="idiagram") in the place where you want those to appear. The board element will contain the Diagram's specification, which will be deleted by the script, and then all the recognized elements (board diagram, piece table, piece list, piece descriptions) will be filled with the proper content according to the specs.

There only would be a problem if you would want to have extra text embedded in the elements that are filled by the script, because anything you write there would be replaced by what the script generates for that element. The reason for having the script generate those elements, rather than have the user write them, is usually that they contain clickable items that must invoke functions of the script. It would not be very hard even for an HTML-ignorant user to supply a list of pieces and their starting squares (by using the WYSIWYG mode of the editor), but clicking the pieces would then not summon the move diagrams.

[Edit] Perhaps we get away with the 'x' in Brouhaha: there are only Brouhaha squares on that file. They can never be destinations, and SAN would never mention a square of origin unless there is a need to disambiguate. And since the piece starting on this square is color-bound, and its Brouhaha squares for the same player are of different color, disambiguation for a Cleric move would never be needed. So the 'x' would never appear as a square coordinate in the move notation, and the fact that the move parser assumes it will never be a square coordinate will not hurt.


Greg Strong wrote on Sun, Oct 9, 2022 02:19 PM EDT:

the options to color the squares and use arbitrary sets of piece images has been there from the very beginning

Ok, sorry.  Not surprising that my memory is inaccurate ...

Anyway, it should be easy to implement an option 'fileLabels' that would override normal labeling.

That would be great, it its not too difficult.  Admittedly this is pretty unusual, but in the case of Brouhaha, I think it makes sense.  Games will often open with the usual moves and I like the fact that they are still "e4 e5 Nf3" ...

Regarding the array FEN, no, I am not asking the interactive diagram to generate it.  If I could add custom text under the list or under the board that would do it.  My appologies if this is already possible - it may well be.

There is something very strange with the title of your posting, which is not equal to the title of the subject thread.

Yes, my post was a standard reply.  Don't know what happened here, but probably another glitch of the site move.


Bn Em wrote on Sun, Oct 9, 2022 02:07 PM EDT:

The obvious remaining reason to favour static images over the interactive diagram is that the latter only works with Javascript enabled. I suppose the obvious(?) way around that would be to also have the design wizard generate a link to a Diagram‐Designer‐ or Scalable‐Diagram‐Editor‐generated (if the latter gets installed?) image and wrap it in <noscript> tags?

P.S. There is something very strange with the title of your posting, which is not equal to the title of the subject thread.

The same is true for the first two comments to be moved to this thread, when viewed through the main comments page (EDIT: and apparently this comment too; the comment editing form has the following warning above it: The ItemID 836609b4fd3c40eb no longer matches any item in the Item table.)


H. G. Muller wrote on Sun, Oct 9, 2022 01:44 PM EDT in reply to H. G. Muller from 06:57 AM:

Now it has lots of options to set colors, etc., but if I remember correctly, it didn't originally let you set squares colors.  Now you can pick piece graphics, set square colors, and set border color.  I think that mostly addresses the concerns.  I can only think of two outstanding concerns (one is probably very easy to address, the other is probably not.)

Well, the options to color the squares and use arbitrary sets of piece images has been there from the very beginning. What is a relatively recent addition is that you can also enable a rim with coordinates around the board, and specify the color and letter color of that.

About the coordinates: there already is an option 'firstRank' which you can use to specify how ranks are counted. (And then enables the display of the coordinate rim.) I don't have something like that for the files, as I couldn't imagine this would ever be needed. Bfore 1 comes 0, and indeed some variants count 0-9. But what comes before 'a'? Anyway, it should be easy to implement an option 'fileLabels' that would override normal labeling.

I did not quite understand the other request. You are referring to the 'satellite' that can be embedded in the text to display the pieces as clickable items in an 'unnumbered list'? Would the FEN have to appear as the last item in that list? The list would only be added if you embed the HTML <ul> directive with the proper satellite id in your text. I could easily make it such that items you already specified in that list remain at the bottom of it after the Diagram scripped has filled the table with the piece items. If you want the FEN to appear below the table, you could write it there yourself in the HTML. Or do you expect the Diagram script to generate the FEN? Not all sets of piece IDs would allow a position to be encoded as FEN, though. (There could be multi-letter IDs, of some pieces might have the same ID.)

P.S. There is something very strange with the title of your posting, which is not equal to the title of the subject thread.


Greg Strong wrote on Sun, Oct 9, 2022 12:57 PM EDT:

Very nice!  This has come a long way.  One small glitch I noticed is that if you click to move a piece and then right-click to reset, the banner still says "position after (half)move 0" rather than returning to its original state.

Sorry I didn't respond sooner to the question about why I don't use the interactive diagram as the main diagram.  I think it was primarily because I wanted complete control over how the board looked.  Now it has lots of options to set colors, etc., but if I remember correctly, it didn't originally let you set squares colors.  Now you can pick piece graphics, set square colors, and set border color.  I think that mostly addresses the concerns.  I can only think of two outstanding concerns (one is probably very easy to address, the other is probably not.)

First, I am assuming you cannot change the rank/file notations.  This is generally unimportant, but there are exceptions.  For example, in Brouhaha, the files have different names so that the main portion of the board still has the usual files a through h.

Second, to the right of the board, I was listing the pieces and locations using the long-standing format of the Chess Variant Pages.  I then started adding the array FEN (perhaps not useful to some, but very useful to others as the most compact descripton of all the pieces, their starting locations and notations.)  If it was possible to add text below the piece list for the optional specification of array FEN, or whatever the author wanted to write there, I think that would be sufficient.


H. G. Muller wrote on Sun, Oct 9, 2022 06:57 AM EDT in reply to Ben Reiniger from Mon Oct 3 09:00 AM:

I see two minor downsides to the interactive diagram as the main/first/only setup display: it takes a little longer to load, and after making use of the interactivity it is no longer a setup diagram (requires a refresh, or is there a button for reset now?).

I tried to better address these points now. The Diagram can be reset to its original position by right-clicking on an empty square in it. Right-clicking on a piece summons its move diagram. (The latter is a feature I always wanted to have, but it was spoiled by that pesky context menu that the browser would pop up on using the right mouse button. I finally figured out how to suppress that for right clicks on the board.)

I altered the initial message displayed above the board to announce this possibility to the unwary user. I hope this does not make the message too long for very small boards. Perhaps I should make the font side dependent on the board width.

I also shortened the timeout used for initializing the Diagram from 1 sec to 100msec. I hope this doesn't lead to problems.

symmetry=mirror graphicsDir=/graphics.dir/alfaeriePNG/ graphicsType=png squareSize=50 pawn::::a2-h2 knight:N:::b1,g1 bishop::::c1,f1 rook::::a1,h1 queen::::d1 king::::e1

What's New?[Subject Thread] [Add Response]
Kevin Pacey wrote on Thu, Oct 6, 2022 06:10 PM EDT:

Hi J-L

I have a vague feeling that the 'What's New' section used to be prominently displayed on the CVP main page, but somehow it got buried a bit. Bugged me initially, but I got used to it. Still, it might be a turnoff for newbies to the site who don't know where to look for all the vital info covered by 'What's New'.


Jean-Louis Cazaux wrote on Thu, Oct 6, 2022 03:09 PM EDT:

My earliest post on that seems to have been ignored. I try to ask again the question, I don't understand being the only one feeling the need for that:

I would find useful to have "What's New" appearing directly on the "Explore" menu of the top bar.

If I'm not wrong, it only appear under "Topic Index" in the "Explore" menu, which is a bit burried.

What do you think? Is my suggestion stupid, maybe I've missed something?


Setup graphics, piece sets[Subject Thread] [Add Response]
H. G. Muller wrote on Mon, Oct 3, 2022 11:23 AM EDT in reply to Ben Reiniger from 09:00 AM:

There is a 'Restart' button in the AI panel (which would start a new game, but shuffle the pieces in case of a shuffle variant), as well as a |< navigation button for getting back to the initial position of the current game (undoing all manipuations that were made so far). But you would have to open the AI panel to see those buttons. I never payed much attention to this, because the browser refresh seems an alternative that works just as well.

Slowless in loading is in a sense a self-inflicted problem: I let the Diagram script intentionally delay 1 second before executing the code that creates it. This was to solve the problem that comment pages contain multiple Diagrams, each of the comments referring to the script (because at the time they were posted the user assumed he would have the only comment with a Diagram on that page). If the first Diagram then immediately starts executing the script, the other Diagrams might not have been loaded yet. Ideally the script should only execute after the page has completely loaded. I tried to do that using onload="Init()", but that never was executed. Probably I was doing something wrong, but I have no idea what.

In principle generating the Diagram with the script should be very fast, probably faster than loading a dedicated image. Because the JavaScript and piece images should all come from the browser cache, if you have viewed other pages with Interactive Diagrams and the same pieces from the same set before. A dedicated image would be specific for the page you are loading, and you would most likely not have seen it before.


Ben Reiniger wrote on Mon, Oct 3, 2022 09:00 AM EDT:

I'm spinning off a discussion from Sac Chess around piece set images to a separate thread (moving the last two which didn't discuss Sac Chess at all, but leaving a couple that are split-subject).

what do you see as a disadvantage for using Interactive Diagrams as the main diagram? -- H.G. Muller

I see two minor downsides to the interactive diagram as the main/first/only setup display: it takes a little longer to load, and after making use of the interactivity it is no longer a setup diagram (requires a refresh, or is there a button for reset now?).

The interactive diagram has the benefit of also supplementing the Piece descriptions (position-specific and interaction-specific piece rules are needed in addition, and for accessibility a text move description should always appear) and giving some Playability.

What I think would be nice is to have buttons over the graphic which switch all page graphics between the options. -- Greg Strong

A graphics selection button would be nice, although of course it wouldn't apply to pages requiring (or otherwise using) custom images. Perhaps even better, we could take to setting some more user-specific configurations, and let a logged-in user automatically use their favored piece set when possible?

Fergus requested I use [abstract diagrams] Kevin Pacey

If I found the comments you're referring to, I wouldn't characterize it as a request, and I'm sorry if it came across as an editorial request. You should feel free to use whatever graphics you want. (I guess I should caveat that: we do strongly encourage using the site's tools when possible for consistency, and using piece graphics that are traditionally used for corresponding pieces.)


Looking for [Subject Thread] [Add Response]
Jean-Louis Cazaux wrote on Mon, Oct 3, 2022 05:03 AM EDT:

I would find useful to have "What's New" appearing directly on the "Explore" menu of the top bar.

If I'm not wrong, it only appear under "Topic Index" in the "Explore" menu, which is a bit burried.

This is just a suggestion


Setup graphics, piece sets[Subject Thread] [Add Response]
Jean-Louis Cazaux wrote on Mon, Oct 3, 2022 04:36 AM EDT:

In my opinion, we should add a diagram with conventional graphics (could be Alfaerie SVG, HG's Interactive diagram, Musketeer C. board design tool, ...) every time there is a diagram with the abstract set. It can be afforded to have both, so everyone will be happy. And it will be clear for everyone :=)


Switching servers[Subject Thread] [Add Response]
🕸Fergus Duniho wrote on Sat, Oct 1, 2022 12:22 PM EDT:

Testing


🕸Fergus Duniho wrote on Fri, Sep 30, 2022 10:57 PM EDT:

Since the Hostslayer website remains down, I do not know whether the HostSlayer account will continue after today. It might auto-renew and automatically charge me like it did last year, or it might not. Since I have a backup server with RackNerd, I will backup everything there and switch the DNS for chessvariants.com to point to the same place as chessvariants.org. It may take a while before this fully propagates.

I have been trying to get email to work there without success. I can send and receive internal email, but I have been having lots of trouble with external email. Once we start using the new server, I may need to fix some things.


Setup graphics, piece sets[Subject Thread] [Add Response]
H. G. Muller wrote on Mon, Sep 26, 2022 02:21 PM EDT:

I hate everything about the Abstract set. It is by far the ugliest piece set I have ever seen. The coloring scheme is obnoxious. But there is no accounting for taste, of course. It is an interesting discussion wheter it is desirable to use piece images that fully imply how the piece moves. In Chess that is far more difficult than in Shogi (which has virtually no oblique leaps).

@Greg: what do you see as a disadvantage for using Interactive Diagrams as the main diagram? I never saw the point in having two diagrams of the same position on the same page. It just seems to waste space.


Chess programs move making[Subject Thread] [Add Response]
Gerd Degens wrote on Thu, Sep 22, 2022 02:41 AM EDT in reply to Greg Strong from Tue Sep 20 01:18 PM:

That sounds plausible.


Greg Strong wrote on Tue, Sep 20, 2022 01:18 PM EDT in reply to Gerd Degens from 12:25 PM:

By the way, details about programming are not clear for most people. How to deal with it?

I don't think there is any "fix" to this issue.  I am not sure there is any issue at all.  Some conversations are going to involve things other people don't understand.  That said, the talkchess forums are the usual place for these kinds of discussions, but I am happy to have some discussion here as well.  Some people who are not chess programmers may still be interested in whether the new neural-network techniques being applied to orthodox chess can be applied to chess variants.


Aurelian Florea wrote on Tue, Sep 20, 2022 12:40 PM EDT in reply to Gerd Degens from 12:25 PM:

I did not meant the typo!


Gerd Degens wrote on Tue, Sep 20, 2022 12:25 PM EDT in reply to Aurelian Florea from 08:06 AM:

What is not understandable? Typo! What else.
By the way, details about programming are not clear for most people. How to deal with it?


Aurelian Florea wrote on Tue, Sep 20, 2022 08:06 AM EDT in reply to H. G. Muller from 03:05 AM:

I'm not sure I understand what you say, HG!


H. G. Muller wrote on Tue, Sep 20, 2022 04:07 AM EDT in reply to Aurelian Florea from 03:54 AM:

Indeed. Hard to avoid typos on these virtual keyboards of Android devices... I corrected it.


Aurelian Florea wrote on Tue, Sep 20, 2022 03:54 AM EDT in reply to H. G. Muller from 03:05 AM:

I do not understand "tgat". You probably meant that.


H. G. Muller wrote on Tue, Sep 20, 2022 03:05 AM EDT in reply to Aurelian Florea from Mon Sep 19 07:00 AM:

That describes the 'policy head' of the NN, which is used to bias the move choice (which is otherwise based  on the number of visits of the move and that of the total for the node, and the move scores) when walking the tree from root to leaf for finding the next  leaf to expand. But my understanding was that when the leaf is chosen and expanded, all daughters should receive a score from the 'evaluation head' of the NN in the position after the move, rather than just inheriting their policy weight from the position before the move. These scores are then back-propagated towards the root, by including them in the average score of all nodes in the path to the expanded leaf.


Aurelian Florea wrote on Mon, Sep 19, 2022 07:00 AM EDT in reply to H. G. Muller from 04:25 AM:

The NN outputs a probability distribution over all the possible moves (illegal moves are set to 0 and the probabilities sum to 1). The MTCS call for this distribution, combine it with an exploration coefficient and Dirichlet noise, to form a score, and choses a move to expand until a certain number (in chess is 6000) of nodes have been visited. Nodes are expanded until leaf nodes are explored. This link explains it better than I:

https://joshvarty.github.io/AlphaZero/


H. G. Muller wrote on Mon, Sep 19, 2022 04:25 AM EDT in reply to Aurelian Florea from 04:17 AM:

I thought AlphaZero used the output of its NN for evaluating leaf nodes. That makes it different from 'normal' MCTS, which would randomly play out games until they satisfy a win or draw condition, and uses the statistics of such 'rollouts' as a measure for the winning probability in the leaf.


Aurelian Florea wrote on Mon, Sep 19, 2022 04:17 AM EDT in reply to Greg Strong from Sun Sep 18 01:53 PM:

Thanks Greg, My conundrum comes from the definition of leaf nodes. In the traditional way you apply the evaluation function, but in the MCTS of Alpha zero are only when the endgame conditions apply.


Greg Strong wrote on Sun, Sep 18, 2022 01:53 PM EDT in reply to H. G. Muller from 06:09 AM:

A quick overview for those who are interested ... A traditional Chess program has 3 parts:

Move Generation - Given a position, find all legal moves for the side on the move.

Search - Recursively play out moves and counter-moves to find the best sequence (called the PV or Principal Variation.)

Evaluation - At the leaf nodes on the end of each search path, evaluate the position. This function returns a number - the more positive, the better for player 1, the more negative, the better for player 2.

Chess variants. To program a chess variant, you definitely need to change Move Generation. You probably also need to change the Evaluation function. If nothing else, at least give material values to the new piece types. This is the most pronounced of all the evaluation terms. But other things may need to be altered -- for example, pawn structure is important, but should not apply to Berolina Chess.

The Search is typically extended by something called a Quiescent Search. The Evaluation function cannot reliably detect pins, forks, hanging material, etc., which would all affect the evaluation a lot. So, the Evaluation function can only be used on "quiet" ("quiescent") positions. So after the search function searches all legal moves to the desired depth, it then hands off to Quiescent Search, which continues searching recursively, but searches only captures (and, in some programs, checking moves too, but this isn't common in chess variant engines.) This way, all exchanges in progress are played out and hanging pieces are captured before the position is evaluated.

So, with that background on Quiescent Search ... Remember how I said the Search function doesn't need to change for different variants? Well, that's not entirely true. For some variants, like Shogi (or other variants with drops), or double-move variants, there are no "quiet" positions. So traditional Quiescent Search doesn't work. Other approaches must be taken. ChessV doesn't modify the Search function for different variants at all. That's why it doesn't play Shogi. It does play Marseillais Chess, but I haven't modified the Search, I'm basically just sweeping the issues under the rug... I don't know how Zillions-of-Games works for certain, but I believe it has no Quiescent Search function at all. It modifies the Move Generator to support different games, but there is no variant-specific Search or Evaluation.

ChessV handles the Evaluation by building it from various elements that can be turned on, off, or configured. (Pawn structure, king safety, outposts, colorbinding, open file bonuses, castling rights, etc.) You can find out basically everything ChessV does for every game it plays by looking at the Game Reference: http://www.chessv.org/reference/games/


H. G. Muller wrote on Sun, Sep 18, 2022 06:09 AM EDT in reply to Kevin Pacey from Sat Sep 17 05:29 PM:

Well, it is a bit more subtle than that, because you would not know what line B leads to without searching it first. And after you have done that, it is too late to prune it. So what really happens if that after you have found the single reply to the first move of line B that leaves you stuck with the doubled Pawns, you consider the first move of B refuted, and you prune the remaining replies to it.

But you are right in the sense that positional characteristics can also be sufficient reason to reject a move. This is purely a matter of evaluation, though. Whatever search method you would use, it should in the end give you the line to the position with the best evaluation that you can force (the 'principle variation'). If there is no mate in view the evaluation of positions must be based on heuristics. Piece values are one such heuristic. In general one should base the evaluation only on features that are not easily changed. Otherwise it would be pretty meaningless, as you know the game must go on from there (even though it is beyond your capability to take into account what will happen then), and if the feature would in general not persist after the next move it is pointless to optimize it. But next to material composition pawn structure is definitely a persistent feature (with FIDE or Shatranj Pawns!). King safety as well, when the King is a slowly moving piece.

What you will have to consider in evaluation can indeed depend very much on the rules of the variant. Using a neural network for evaluation (as both AlphaZero and NNUE do) and training that on positions from games is a method to avoid having to think about that yourself; you hope the NN is clever enough to recognize the important features, and quantify their importance. Whether this leads to different pruning in alpha-beta search is of no importance; this kind of pruning is guaranteed to have no effect on the principal variation that will be found. With or without pruning this would be the same. The pruning is just an optimization to get that same result, which was fully specified by the evaluation of the tree leaves, without wasting time on lines that neither of the players would want to play.

From conventional chess engines it is known that pawns on the forelast rank, and king safety can have values comparable to the material value of a minor.


Kevin Pacey wrote on Sat, Sep 17, 2022 05:29 PM EDT:

Hi H.G.

My memory/understanding may be off, but I thought if for a chess engine line A is at least = and line B results in doubled isolated pawns without compensation, then line B would be pruned out. It's not due to material loss (e.g. a pawn for nothing) but rather due to chess-specific knowledge (that doubled isolated pawns are bad if not compensated for). I could imagine a CV where the opposite might be true, depending on the rules of movement or topology of the board, i.e. where doubled pawns might be good (e.g. in a game of Berolina's Pawns).


H. G. Muller wrote on Thu, Sep 15, 2022 07:22 AM EDT in reply to Aurelian Florea from 04:49 AM:

The only moves that are pruned in an alpha-beta search are those whose score could not possibly affect the move choice at the root, because they are in a branch that has already been refuted. E.g. if you find that in a position that is at least equal (i.e. you have already searched a move that does not lose anything), and an alternative move has a reply that loses a pawn without compensation, you would consider that alternative move refuted. It would be a waste of time to continue searching other replies to the move, in order to determine whether these make you lose even more. Because losing a Pawn is already bad enough to dissuade you from playing that alternative move.

This is purely determined from the scores of the moves; you don't need any variant-specific knowledge for it.


Aurelian Florea wrote on Thu, Sep 15, 2022 04:49 AM EDT in reply to H. G. Muller from 04:19 AM:

Ok, HG, I could have misconstrued something. But from what I understand I'd have to cut some moves while doing the alpha beta search. For example, after a certain number of plies. And then do the classification learning. Have you said something else? Anyway, I was saying that I can use handcrafted features at input to the neural network.


H. G. Muller wrote on Thu, Sep 15, 2022 04:19 AM EDT in reply to Aurelian Florea from 02:56 AM:

What pruning? Alpha-beta search only prunes after a beta cutoff, and this does not require any knowledge about the variant.


Aurelian Florea wrote on Thu, Sep 15, 2022 02:56 AM EDT in reply to H. G. Muller from Wed Sep 14 04:17 PM:

I meant the pruning!


H. G. Muller wrote on Wed, Sep 14, 2022 04:17 PM EDT in reply to Aurelian Florea from 04:12 AM:

What do you mean? Alpha-beta search is always the same, no matter what variant it is used for. It does not even have to be a chess variant. As long as it is a deterministic 2-player game with perfect information it should work the same.


Aurelian Florea wrote on Wed, Sep 14, 2022 04:12 AM EDT in reply to Samuel Trenholme from Tue Sep 13 11:35 AM:

Actually, when programming a new game it is not easy to do alpha beta search. I was thinking to add some positional features (like moving the central pawns) to the input of the neural network. This should speed thinks up a bit.


Samuel Trenholme wrote on Tue, Sep 13, 2022 11:35 AM EDT:

A NNUE with an alpha-beta search is fine: Stockfish 15 is stronger than any other chess player in the world, either human or computer.

The main thing that is interesting with Alpha Zero is that it can play a super human game of chess with no human chess knowledge except the game's rules. So, for example, any opening or midgame strategy is has is not based on human play.


Aurelian Florea wrote on Sat, Sep 10, 2022 04:09 AM EDT in reply to H. G. Muller from Fri Sep 9 09:58 AM:

@HG, Thanks for not discouraging me. That matters a lot, thrust me. I'll then slowly train weak bots but stronger every time. Maybe in time hardware will become available. And also, who knows, better software ideas. Good luck!


H. G. Muller wrote on Fri, Sep 9, 2022 09:58 AM EDT in reply to Aurelian Florea from 08:33 AM:

Indeed such questions are more suitable for talkchess.com.

But the fact that the AlphaZero NN also has a 'policy head' next to the evaluation is not the largest difference. IIRC this is only a matter of the final layer, which calculates a preference for each possible move in the same way as the score of the position is calculated. (I.e. each move output is fully connected to the previous layer.)

The main difference is the size. The AlphaZero net is so large that even using a Google TPU or a fast GPU to calculate it slows down the engine by a factor 100-1000, in terms of positions/sec searched. The NNUE only slows the engine by a modest factor, even on a CPU, because it is so small.


Aurelian Florea wrote on Fri, Sep 9, 2022 08:33 AM EDT in reply to H. G. Muller from 04:07 AM:

@HG,

Yes, in my previous comment I was referring to the difference between neural net and the NNUE approach. Alpha Zero's neural net has 2 parts. A CNN feature extraction part and a fully connected classification part. In the NNUE, from what I understand, you keep only the second part. I have said that I did not fully understand how the CNN part works. I'm not sure what filters it uses. But I do not think this is a question for here anyway.


H. G. Muller wrote on Fri, Sep 9, 2022 04:07 AM EDT in reply to Aurelian Florea from 02:42 AM:

You will be already 5000 times slower by the fact alone that Google used 5000 servers, (if I recall correctly), and you only have a single PC. And each Google server contained 4 TPU boards, each capable of performing 256 (or was it 1024) multiplications per clock cycle, while a single core in a PC can do only 8. So I think you are way too optimistic.

I am not sure what your latest comment refers to. If it is the difference between AlphaZero and NNUE: the main point there is that the NNUE net uses 5 layers of 32 cells, plus an initial layer that can be calculated incrementally, (so that the size matters little). While the AlphaZero net typically has 32 layers of 8 x 8 x 256 cells.

I don't want to discourage you, but the task you want to tackle is gigantic, and not very suitable as an introductory exercise in chess programming. A faster approach would be to start with something simple (at the level of Fairy-Max or King Slayer, simple alpha-beta searchers with a hand-crafted evaluation) to get some experience with programming search, then replace its evaluation by NNUE, to get some experience programming neural nets. The experience you gain in the simpler preliminary tasks will speed up your progress on the more complex final goal by more than the simple tasks take. Also note that you will have the disadvantage compared to people who do this for orthodox chess of not having high-quality games available to train the networks.


Aurelian Florea wrote on Fri, Sep 9, 2022 02:42 AM EDT in reply to H. G. Muller from Thu Sep 8 05:53 PM:

@HG,

The alpha-beta search would have replaced the feature extraction part of the NN. That is from what I understand. That is the part I did not understood (especially what filters does the CNN use). Anyway even if it takes a huge amount of time the algorithm will still improve. So I could present a user with monthly updates. But I'm afraid it will take time until an challenging AI is outputed by the program.

Once again thanks a lot for your help!


Aurelian Florea wrote on Thu, Sep 8, 2022 05:58 PM EDT:

Well hundreds of times slower it is not that but. 1000 times slower will be 4000 hours which is 167 days. That is doable. I have one computer for one game (2 in total, remakes of apothecary chess). But my games are 10x10 and have bent riders and an imitator which could itself make things much worse. There could be artifices in the beginning by inserting fake endgame conditions which will train things like "Do not exchange your queen for a knight!".

Anyway I'm doing this because it is the only thing that motivates me so far. With the new treatment (actually 3 years now), I am able to pay attention to stuff. I really enjoy doing this. And the programming is not that hard actually, although there are also NN things I do not understand.

@HG and @Greg Thanks for your advices!


H. G. Muller wrote on Thu, Sep 8, 2022 05:53 PM EDT in reply to Aurelian Florea from 03:17 PM:

It would be a few month when you had a few dozen computers with very powerful GPU boards as graphics cards. For orthodox chess.

But I should point out there is another approach called NNUE, which uses a far simpler neural net just for evaluation in a conventional alpha-beta search. This is far easier to train; for orthodox chess a few hundred-thousand positions from games with known outcome would be enough.


Greg Strong wrote on Thu, Sep 8, 2022 05:23 PM EDT:

Pretty sure H. G. is correct. There is a reason I spend no effort on the neural network approach.


Aurelian Florea wrote on Thu, Sep 8, 2022 03:17 PM EDT in reply to H. G. Muller from 03:09 PM:

I'm aware of this fact, but I'm not sure about six years. Isn't it closer to a few months?


H. G. Muller wrote on Thu, Sep 8, 2022 03:09 PM EDT in reply to Aurelian Florea from 01:19 PM:

Also note that LeelaChess Zero, the imitation of Alpha Zero that can run on a PC, took about 6 months of computer time donated by a large collaboration of people with powerful computers to learn how to play Chess. For AlphaZero this only took 4 hours, but only by virtue of the fact that they used 5000 of their servers equiped with special hardware that calculated hundreds of times faster than an ordinary PC. On a single PC you would be lucky to achieve that in 6 years of non-stop computing.


100 comments displayed

LatestLater Reverse Order EarlierEarliest

Permalink to the exact comments currently displayed.