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 ]

Comments by FergusDuniho

LatestLater Reverse Order EarlierEarliest
Chu Shogi. Play this large Japanese Shogi variant on Jocly.[All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Thu, Mar 23, 2023 09:21 PM UTC:

Since there were no text files for this game providing credits, I am presuming the author is H. G. Muller, because this game did not originally come with Jocly, and I copied the Jocly files from his site at one time.


Double Move Double Chess. The game is played on a 8x16 chessboard with each player in control of two complete armies.[All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Thu, Mar 23, 2023 05:39 PM UTC in reply to Bn Em from 12:06 AM:

might it be worth somehow marking Editors specially in the Comments?; there is currently no indication of who is or isn't an editor w/o going to one of the special pages

We used to have icons for this, which I had inadvertently left out when I rewrote the code for displaying comments. However, some of the code was still in place, and I fixed it up to identify editors, the webmaster, authors, and inventors. Instead of .gif files, I used unicode emojis for some icons, but I left the editor image alone, since it seems appropriate. However, I didn't display it for the webmaster, because the two icons didn't look good together. If you hover over an icon, you will see a tooltip saying what it is. Also, the names of editors (which includes the webmaster) appear in boldface, and the names of authors or inventors appear in italics.


An Inexpensive Method to Make Print and Play Chess Variants Sets. Chess Variants Print and Play. (8x8, Cells: 64) [All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Wed, Mar 22, 2023 04:02 PM UTC in reply to H. G. Muller from 09:33 AM:

I did cut those to shape, though

Before I read that, I thought you might have used clear sticker paper, which prompted me to search for the product.

Premium Printable Vinyl Sticker Paper,Transparent 30 Clear Self-Adhesive Sheets,No-Waterproof,Dries Quickly Vivid Colors Decal Paper,Tear Resistant-for Any Epson HP Canon Sawgrass Inkjet Printer


🕸Fergus Duniho wrote on Wed, Mar 22, 2023 03:31 PM UTC in reply to H. G. Muller from 09:33 AM:

H.G., your image is not showing up in the comment, though it does show up if I load it in a new tab. My best guess as to why is that it is using http, and this is an https site. Try uploading it here and changing the link.


MSoverwhelmingchess[All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Wed, Mar 22, 2023 01:46 AM UTC:

This is mostly the same as Extinction Chess with only one slight difference. In Extinction Chess, you could win by capturing all your opponent's Knights or all your opponent's Bishops, but in this game, you would have to capture both the Knights and the Bishops. While slightly different, this is really too much like Extinction Chess to count it as a separate variant. Maybe it could be mentioned on the Extinction Chess page as a possible variation of that game.


An Inexpensive Method to Make Print and Play Chess Variants Sets. Chess Variants Print and Play. (8x8, Cells: 64) [All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Wed, Mar 22, 2023 12:14 AM UTC:

I do not currently have an equally easy way to make round boards. If you know of an easy way to make a round board, please share!)

What I did to make a hexagonal board will work for any 2D board.

  1. Create an image file.
  2. Divide it up into parts if you want it bigger than you can print as one piece.
  3. Make sure each image file will print to the size you want.
  4. Print the parts onto sticker paper.
  5. Apply the sticker paper to boards you can piece together later.

If you want a circular board in particular, you can start by having Game Courier generate an image of the board.


Awards given to the Chess Variant Pages. Awards given to the Chess Variant Pages.[All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Tue, Mar 21, 2023 08:42 PM UTC:

Since many of these award sites or programs are defunct, I used the Wayback Machine to search for the pages that actually mention the Chess Variant Pages, and when I found one, I changed the link to an archived version of that page. After all, displaying awards is more meaningful if we can document that we actually got the awards.


King of the Mountain. Be the first player to get your King to the top of the hill! (19x19) [All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Mon, Mar 20, 2023 10:45 PM UTC in reply to Paul Newton from 09:02 PM:

I didn't know that Excel could be used for making board diagrams. Anyway, the closest thing I have to Excel is LibreOffice Calc, and I've never used it that way. Paint.net will let you resize images using the Resize menu item in the Image menu. You may also use the keyboard shortcut of Ctrl-R.


Ai AiA computer program
. Ai Ai is a Java general game playing programme, with many chess variants.[All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Mon, Mar 20, 2023 10:35 PM UTC in reply to Fergus Duniho from 06:11 PM:

Since Ai Ai beat the Interactive Diagram at its default settings, I raised the Interactive Diagram to 4 plies and tried again. This game ended in a draw by three-times repetition, as called by Ai Ai at move 60. Apart from that, the Interactive Diagram was ahead in material and might have won with better endgame play. Here's the MGS file from Ai Ai: ID4-vs-AiAi-Chess.mgs. At move 60, I let the Interactive Diagram, which had been playing White, continue as Black, and I took over as White, eventually checkmating Black.

  1. c4 Nf6
  2. d4 e6
  3. Qa4 Be7
  4. Nc3 Nc6
  5. Be3 Bb4
  6. O-O-O Bxc3
  7. bxc3 Ng4
  8. d5 exd5
  9. cxd5 Nxe3
  10. Qe4 Qe7
  11. Qxe3 Qxe3
  12. fxe3 Ne5
  13. Nf3 Ng4
  14. Rd4 Nf2
  15. Rg1 c5
  16. Rf4 f5
  17. Nh4 Ne4
  18. Nxf5 Nxc3
  19. Nd6 Ke7
  20. Nf5 Kd8
  21. Nxg7 Nxd5
  22. Rf3 Nb4
  23. a4 Kc7
  24. g4 d5
  25. Rf7 Kd6
  26. Rf6 Ke5
  27. Nh5 Na2
  28. Kb2 Nb4
  29. Rf7 b6
  30. Nf4 Kd6
  31. Rf6 Ke7
  32. Rg6 Nd3
  33. exd3 hxg6
  34. Nxg6 Ke6
  35. Nxh8 Rb8
  36. Ng6 Bd7
  37. Nf4 Kd6
  38. Bg2 d4
  39. exd4 cxd4
  40. Ne2 Ke5
  41. Be4 b5
  42. a5 b4
  43. h3 Rb5
  44. Ra1 a6
  45. Ng1 Be6
  46. Nf3 Kf6
  47. Nxd4 Re5
  48. Nxe6 Kxe6
  49. Bf5 Kd6
  50. Kb3 Ke7
  51. Kxb4 Rb5
  52. Kc4 Kd6
  53. Be4 Rc5
  54. Kd4 Re5
  55. Ra2 Rb5
  56. Ra3 Ke6
  57. Bf5 Kd6
  58. Be4 Ke6
  59. Bf5 Kd6
  60. Be4 Rb8
  61. g5 h4
  62. Ra2 Rh8
  63. Rh2 Re8
  64. h5 Re5
  65. h6 Rxa5
  66. h7 Ra4
  67. Ke3 Ra1
  68. h8=Q Re1
  69. Kd4 Ra1
  70. Rh6 Kc7
  71. Qg7 Kb8
  72. Rh8

🕸Fergus Duniho wrote on Mon, Mar 20, 2023 06:11 PM UTC:

Since Ai Ai and Ludii both use Java, I ran a game of Chess against them. Ai Ai won. Since Ai Ai and Zillions-of-Games both run on the computer, I also ran a game between them. Zillions-of-Games won this one. I have uploaded the MGS files Ai Ai records games in: Ludii-vs-AiAi-at-Chess.mgs and ZoG-vs-AIAi-Chess.mgs.

I then ran a game between the Interactive Diagram and Ai Ai. This was a very close game, eventually coming down to a Pawn race in which Ai Ai had a Rook and two Pawns, and the Interactive Diagram had a Bishop and two Pawns. Ai Ai eventually won: ID-vs-AiAi-Chess.mgs

  1. d4 Nf6
  2. c3 d5
  3. Bf4 Bd7
  4. Qb3 Bc6
  5. Nd2 Nbd7
  6. O-O-O Nh5
  7. Bg5 h6
  8. Bh4 g5
  9. g4 Nhf6
  10. Bg3 Bg7
  11. h3 h5
  12. Ngf3 hxg4
  13. Nxg5 Bh6
  14. hxg4 Nxg4
  15. Bh3 Bxg5
  16. Bxg4 Rxh1
  17. Rxh1 Bxd2
  18. Kxd2 e6
  19. Rh8 Nf8
  20. Bf4 Qf6
  21. Rxf8 Kxf8
  22. Qb4 Ke8
  23. Bxc7 Qg5
  24. f4 Qxg4
  25. Be5 f6
  26. Bd6 Qg2
  27. Bc5 Kd7
  28. a4 b6
  29. Be7 Bxa4
  30. Bxf6 Bc6
  31. Qe7 Kc8
  32. Qxe6 Bd7
  33. Qe5 Kb7
  34. Bg5 Bg4
  35. Qe7 Kc6
  36. Qf6 Kb7
  37. Qe7 Kc6
  38. Qf6 Kb5
  39. Qe5 Kc4
  40. Qc7 Kb3
  41. Qe5 Kxb2
  42. c4 dxc4
  43. Qb5 Ka1
  44. Qa4 Kb2
  45. Qb4 Ka1
  46. Qxc4 Bxe2
  47. Qxe2 Qxe2
  48. Kxe2 Rf8
  49. Kf3 Ka2
  50. Ke2 Kb3
  51. Kd3 b5
  52. Bh6 Rf6
  53. Bg5 Rd6
  54. Be7 Rd7
  55. Bc5 b4
  56. f5 Ka4
  57. Kc4 b3
  58. Kc3 Rf7
  59. Kc4 b2
  60. f6 b1=Q
  61. Kc3 Rxf6
  62. Bxa7 Rf3
  63. Kd2 Qd3
  64. Kc1 Kb3
  65. Bc5

Ludii PortalA website
. The home of Ludii, a general game system that can play the full range of traditional strategy games, including chess variants. () [All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Mon, Mar 20, 2023 05:41 PM UTC:

In Ludii vs Biased UBFM, the game was a draw through three-times repetition. It was more interesting, because White kept chasing the King with its Queen while Black had two connected Rooks and a passed Pawn. I eventually took over for White and won, but it was probably due to Biased UBFM's bad playing.

  1. (Move E2-E4)
  2. (Move A7-A5)
  3. (Move D1-H5)
  4. (Move B7-B6)
  5. (Move F1-B5)
  6. (Move A5-A4)
  7. (Move D2-D4)
  8. (Move G8-F6)
  9. (Move G1-H3)
  10. (Move H7-H6)
  11. (Move B1-A3)
  12. (Move F6-H5)
  13. (Move C1-D2)
  14. (Move C7-C6)
  15. (Move H3-G5)
  16. (Move D8-C7)
  17. (Move B5-E2)
  18. (Move B6-B5)
  19. (Move E2-H5)
  20. (Move D7-D6)
  21. (Move H5-F7)
  22. (Move E8-D8)
  23. (Move H2-H4)
  24. (Move H6-H5)
  25. (Move D2-F4)
  26. (Move A8-A6)
  27. (Move G5-F3)
  28. (Move A6-A8)
  29. (Move E1-E2)
  30. (Move B5-B4)
  31. (Move C2-C3)
  32. (Move B4-A3)
  33. (Move B2-A3)
  34. (Move C7-B7)
  35. (Move F7-E6)
  36. (Move A8-A5)
  37. (Move F3-G5)
  38. (Move H8-G8)
  39. (Move G5-F7)
  40. (Move D8-E8)
  41. (Move F7-D6)
  42. (Move E7-D6)
  43. (Move D4-D5)
  44. (Move C6-D5)
  45. (Move A1-B1)
  46. (Move G7-G6)
  47. (Move B1-B7)
  48. (Move C8-B7)
  49. (Move E6-D7)
  50. (Move B8-D7)
  51. (Move C3-C4)
  52. (Move D5-C4)
  53. (Move H1-B1)
  54. (Move A5-A6)
  55. (Move B1-B7)
  56. (Move E8-D8)
  57. (Move F4-G5)
  58. (Move D8-C8)
  59. (Move B7-B1)
  60. (Move D6-D5)
  61. (Move G5-D2)
  62. (Move C8-D8)
  63. (Move D2-G5)
  64. (Move D8-E8)
  65. (Move G2-G4)
  66. (Move H5-G4)
  67. (Move H4-H5)
  68. (Move F8-A3)
  69. (Move H5-G6)
  70. (Move G8-H8)
  71. (Move G5-F4)
  72. (Move A3-C5)
  73. (Move G6-G7)
  74. (Move H8-H5)
  75. (Move A2-A3)
  76. (Move H5-H8)
  77. (Move F4-G5)
  78. (Move H8-H3)
  79. (Move G5-F6)
  80. (Move H3-H2)
  81. (Move B1-B8)
  82. (Move D7-B8)
  83. (Move F6-H4)
  84. (Move H2-H4)
  85. (Move G7-G8)
  86. (Promote G8 to Queen1)
  87. (Move E8-D7)
  88. (Move G8-D5)
  89. (Move D7-E8)
  90. (Move D5-C5)
  91. (Move H4-H6)
  92. (Move C5-E5)
  93. (Move E8-F8)
  94. (Move E5-B8)
  95. (Move F8-G7)
  96. (Move B8-E5)
  97. (Move G7-G8)
  98. (Move E5-G5)
  99. (Move G8-F8)
  100. (Move G5-D8)
  101. (Move F8-G7)
  102. (Move D8-D7)
  103. (Move G7-G8)
  104. (Move D7-D8)
  105. (Move G8-G7)
  106. (Move D8-D7)
  107. (Move G7-G8)
  108. (Move D7-D5)
  109. (Move G8-G7)
  110. (Move D5-D7)
  111. (Move G7-G8)
  112. (Move D7-D8)
  113. (Move G8-G7)
  114. (Move D8-D7)
  115. (Move G7-G8)
  116. (Move D7-D5)
  117. (Move G8-G7)
  118. (Move D5-D7)
  119. (Move G7-G8)
  120. (Move D7-D8)
  121. (Move G8-G7)
  122. (Move D8-D7)
  123. (Move G7-G8)
  124. (Move D7-D8)
  125. (Move G8-G7)
  126. (Move D8-D7)
  127. (Move G7-G8)
  128. (Move D7-D8)
  129. (Move G8-G7)
  130. (Move D8-D7)
  131. (Move G7-G8)
  132. (Move D7-D8)
  133. (Move G8-H7)
  134. (Move D8-D7)
  135. (Move H7-G8)
  136. (Move D7-D8)
  137. (Move G8-G7)
  138. (Move D8-D7)
  139. (Move G7-G8)
  140. (Move D7-D8)
  141. (Move G8-G7)
  142. (Move D8-D7)
  143. (Move G7-G8)
  144. (Move D7-D8)
  145. (Move G8-G7)
  146. (Move D8-D7)
  147. (Move G7-G8)
  148. (Move D7-D8)
  149. (Move G8-G7)
  150. (Move D8-D7)

At this point, I took over as White:

  1. (Move G7-G8)
  2. (Move D7-E8)
  3. (Move G8-H7)
  4. (Move E8-F7)
  5. (Move H7-H8)
  6. (Move F7-C4)
  7. (Move H8-G7)
  8. (Move E4-E5)
  9. (Move A6-A8)
  10. (Move C4-C7)
  11. (Move G7-G6)
  12. (Move E5-E6)
  13. (Move H6-H5)
  14. (Move E6-E7)
  15. (Move A8-H8)
  16. (Move C7-D6)
  17. (Move G6-F7)
  18. (Move D6-D7)
  19. (Move H5-E5)
  20. (Move E2-D3)
  21. (Move H8-E8)
  22. (Move D7-G4)
  23. (Move E8-D8)
  24. (Move D3-C3)
  25. (Move D8-H8)
  26. (Move F2-F4)
  27. (Move H8-H3)
  28. (Move G4-H3)
  29. (Move E5-D5)
  30. (Move H3-H7)
  31. (Move F7-E8)
  32. (Move H7-G7)
  33. (Move D5-D6)
  34. (Move G7-F8)
  35. (Move E8-D7)
  36. (Move E7-E8)
  37. (Promote E8 to Queen1)
  38. (Move D7-C7)
  39. (Move E8-C8)
  40. (Move C7-B6)
  41. (Move F8-D6)
  42. (Move B6-A7)
  43. (Move D6-A6)

🕸Fergus Duniho wrote on Mon, Mar 20, 2023 05:26 PM UTC:

Ludii drew UBFM by three-times repetition, maybe not too surprising since Ludii is more fully called Ludii (UBFM). The surprising thing is how UBFM flubbed up the endgame. It had both a Queen and a Rook against the King, and instead of quickly going for checkmate, it kept repeating the same Rook moves back and forth while the King kept going back and forth.

  1. (Move E2-E4)
  2. (Move E7-E5)
  3. (Move D1-H5)
  4. (Move D7-D5)
  5. (Move F1-B5)
  6. (Move B8-C6)
  7. (Move H5-E5)
  8. (Move F8-E7)
  9. (Move D2-D4)
  10. (Move C8-G4)
  11. (Move E4-D5)
  12. (Move D8-D6)
  13. (Move B5-C6)
  14. (Move G4-D7)
  15. (Move C1-G5)
  16. (Move D6-E5)
  17. (Move D4-E5)
  18. (Move E7-B4)
  19. (Move E1-E2)
  20. (Move B7-C6)
  21. (Move G1-F3)
  22. (Move D7-F5)
  23. (Move B1-C3)
  24. (Move F7-F6)
  25. (Move D5-C6)
  26. (Move F6-G5)
  27. (Move A2-A3)
  28. (Move B4-C3)
  29. (Move B2-C3)
  30. (Move A8-D8)
  31. (Move F3-D4)
  32. (Move F5-G4)
  33. (Move E2-E3)
  34. (Move G8-E7)
  35. (Move A3-A4)
  36. (Move E7-D5)
  37. (Move E3-D2)
  38. (Move D5-F4)
  39. (Move H2-H4)
  40. (Move G5-H4)
  41. (Move D2-E3)
  42. (Move F4-G2)
  43. (Move E3-D3)
  44. (Move H4-H3)
  45. (Move E5-E6)
  46. (Move E8-E7)
  47. (Move D3-C4)
  48. (Move G4-F5)
  49. (Move D4-F5)
  50. (Move E7-F6)
  51. (Move F5-D6)
  52. (Move D8-D6)
  53. (Move F2-F4)
  54. (Move H8-B8)
  55. (Move A1-E1)
  56. (Move G2-E1)
  57. (Move H1-E1)
  58. (Move D6-D2)
  59. (Move E1-G1)
  60. (Move D2-G2)
  61. (Move G1-G2)
  62. (Move H3-G2)
  63. (Move C4-D3)
  64. (Move F6-E7)
  65. (Move D3-E3)
  66. (Move G2-G1)
  67. (Promote G1 to Queen2)
  68. (Move E3-E2)
  69. (Move B8-D8)
  70. (Move E2-F3)
  71. (Move D8-B8)
  72. (Move A4-A5)
  73. (Move G1-D1)
  74. (Move F3-F2)
  75. (Move A7-A6)
  76. (Move F4-F5)
  77. (Move D1-D2)
  78. (Move F2-F3)
  79. (Move D2-C3)
  80. (Move F3-G2)
  81. (Move C3-D2)
  82. (Move G2-G3)
  83. (Move D2-E3)
  84. (Move G3-G2)
  85. (Move E7-D6)
  86. (Move F5-F6)
  87. (Move G7-F6)
  88. (Move G2-H2)
  89. (Move D6-E6)
  90. (Move H2-G2)
  91. (Move E6-F7)
  92. (Move G2-H2)
  93. (Move B8-B1)
  94. (Move H2-G2)
  95. (Move F6-F5)
  96. (Move C2-C3)
  97. (Move E3-C3)
  98. (Move G2-H2)
  99. (Move C3-E3)
  100. (Move H2-G2)
  101. (Move B1-D1)
  102. (Move G2-H2)
  103. (Move D1-B1)
  104. (Move H2-G2)
  105. (Move B1-D1)
  106. (Move G2-H2)
  107. (Move D1-B1)
  108. (Move H2-G2)
  109. (Move B1-D1)
  110. (Move G2-H2)
  111. (Move D1-B1)
  112. (Move H2-G2)
  113. (Move B1-D1)
  114. (Move G2-H2)
  115. (Move D1-B1)
  116. (Move H2-G2)
  117. (Move B1-D1)
  118. (Move G2-H2)
  119. (Move D1-B1)
  120. (Move H2-G2)
  121. (Move B1-D1)
  122. (Move G2-H2)
  123. (Move F7-G7)
  124. (Move H2-G2)
  125. (Move G7-F7)
  126. (Move G2-H2)
  127. (Move D1-B1)
  128. (Move H2-G2)
  129. (Move B1-D1)

🕸Fergus Duniho wrote on Mon, Mar 20, 2023 05:18 PM UTC:

For some reason, I couldn't find the Ludii Player on my computer today. So, I downloaded it again and noted that it was in my Downloads folder before running it. It is just a .jar file and doesn't install anything.

Continuing to use it, EPT-QB quickly beat Ludii. The ironic thing is that EPT-QB made a terrible move, exposing its Queen to en prise capture by either the Bishop or the Queen, and instead of taking the Queen, Ludii just moved its Queen beside it. Then EPT-QB captured the Bishop for checkmate.

  1. (Move D2-D4)
  2. (Move E7-E6)
  3. (Move D1-D3)
  4. (Move D8-F6)
  5. (Move D3-B5)
  6. (Move F6-G5)
  7. (Move B5-F5)
  8. (Move G5-C1)

🕸Fergus Duniho wrote on Mon, Mar 20, 2023 02:50 AM UTC:

I have been running one game after another on Ludii Player between Ludii as White and another agent as Black at one second thinking time each. Going from top down, each has lost to Ludii until I got to EPT, which beat Ludii. Here is that game:

Turn 1. E2-E4
Turn 2. E7-E6
Turn 3. B2-B4
Turn 4. B4-
Turn 5. C1-B2
Turn 6. D7-D5
Turn 7. F1-B5
Turn 8. E8-F8
Turn 9. D1-G4
Turn 10. G7-G6
Turn 11. B2-G7
Turn 12. G7-
Turn 13. G4-G5
Turn 14. G5-
Turn 15. G1-E2
Turn 16. C8-D7
Turn 17. D7-
Turn 18. D7-
Turn 19. E1=0
Turn 20. B4-F8
Turn 21. G2-G4
Turn 22. C7-C6
Turn 23. G1-G2
Turn 24. G5-H4
Turn 25. B1-C3
Turn 26. F2-
Turn 27. F2-
Turn 28. F7-F5
Turn 29. D5-
Turn 30. F8-B4
Turn 31. B4-
Turn 32. G8-F6
Turn 33. F2-F3
Turn 34. A8-B8
Turn 35. A2-A4
Turn 36. H8-G8
Turn 37. G4-G5
Turn 38. E4-
Turn 39. A4-A5
Turn 40. E4-G3
Turn 41. G3-
Turn 42. D7-E5
Turn 43. B4-D5
Turn 44. F3-
Turn 45. F3-
Turn 46. D5-
Turn 47. A1-B1
Turn 48. B8-C8
Turn 49. B7-
Turn 50. C8-C7
Turn 51. C7-
Turn 52. G7-H8
Turn 53. E2-D4
Turn 54. G8-G7
Turn 55. C7-C8
Turn 56. G7-G8
Turn 57. C8-B8
Turn 58. B8-
Turn 59. F3-F2
Turn 60. B8-B2
Turn 61. E6-
Turn 62. C2-
Turn 63. E6-D4
Turn 64. D2-
Turn 65. D4-E2
Turn 66. A7-A6
Turn 67. H2-H4
Turn 68. E2-
Turn 69. E2-
Turn 70. H8-G8
Turn 71. E2-D2
Turn 72. G8-F7
Turn 73. D2-C2
Turn 74. F7-E6
Turn 75. C2-C3
Turn 76. E6-D6
Turn 77. C3-B2
Turn 78. D5-D4
Turn 79. B2-B3
Turn 80. D6-D5
Turn 81. B3-B2
Turn 82. D5-C4
Turn 83. B2-C2
Turn 84. D4-D3
Turn 85. C2-B2
Turn 86. D3-D2
Turn 87. B2-C2
Turn 88. D2-D1, D1 => Bishop2
Turn 89. D1-
Turn 90. F5-F4
Turn 91. D1-C2
Turn 92. F4-F3
Turn 93. C2-B2
Turn 94. F3-F2
Turn 95. B2-C2
Turn 96. F2-F1, F1 => Queen2
Turn 97. H4-H5
Turn 98. F1-F4
Turn 99. C2-B1
Turn 100. G5-
Turn 101. H5-H6
Turn 102. C4-B3
Turn 103. B1-A1
Turn 104. G5-C1

I'm done for the night.


🕸Fergus Duniho wrote on Mon, Mar 20, 2023 02:06 AM UTC:

Since the Ludii Player has many engines (or agents) to choose from, I had it do an analysis to find the best player for Chess. The analysis was quick, and it said "Best predicted agent is AlphaBeta". But I already found that it played poorly against Ludii. In case more thinking time would eventually give Alpha-Beta an edge, I increased the thinking time to 5 seconds for another game between Ludii as White and Alpha-Beta as Black. Ludii won this game with checkmate. During the game, it showed an analysis of each engine, and Ludii, identified here as UBFM consistently had a higher search depth than Alpha-Beta.

UBFM (player 1) completed an analysis that reached at some point a depth of 4:
best value observed at root 0.13999999,
1196 different states were evaluated
50 iterations, with 134 calls of minimax
Alpha-Beta (player 2) completed search of depth 2.
UBFM (player 1) completed an analysis that reached at some point a depth of 3:
best value observed at root 0.20000005,
909 different states were evaluated
30 iterations, with 68 calls of minimax
Alpha-Beta (player 2) completed search of depth 1.
UBFM (player 1) completed an analysis that reached at some point a depth of 4:
best value observed at root 0.54125,
1014 different states were evaluated
33 iterations, with 97 calls of minimax
Alpha-Beta (player 2) completed search of depth 2.
UBFM (player 1) completed an analysis that reached at some point a depth of 3:
best value observed at root 0.6924999,
1002 different states were evaluated
28 iterations, with 75 calls of minimax
Alpha-Beta (player 2) completed search of depth 1.
UBFM (player 1) completed an analysis that reached at some point a depth of 6:
best value observed at root 1.2237501,
837 different states were evaluated
32 iterations, with 110 calls of minimax
Alpha-Beta (player 2) completed search of depth 2.
UBFM (player 1) completed an analysis that reached at some point a depth of 4:
best value observed at root 0.7437501,
878 different states were evaluated
37 iterations, with 114 calls of minimax
Alpha-Beta (player 2) completed search of depth 2.
UBFM (player 1) completed an analysis that reached at some point a depth of 3:
best value observed at root 0.66375005,
881 different states were evaluated
36 iterations, with 72 calls of minimax
Alpha-Beta (player 2) completed search of depth 2.
UBFM (player 1) completed an analysis that reached at some point a depth of 4:
best value observed at root 0.7237501,
883 different states were evaluated
35 iterations, with 101 calls of minimax
Alpha-Beta (player 2) completed search of depth 2.
UBFM (player 1) completed an analysis that reached at some point a depth of 2:
best value observed at root 0.6237501,
894 different states were evaluated
33 iterations, with 65 calls of minimax
Alpha-Beta (player 2) completed search of depth 1.
UBFM (player 1) completed an analysis that reached at some point a depth of 4:
best value observed at root 0.9375,
908 different states were evaluated
24 iterations, with 65 calls of minimax
Alpha-Beta (player 2) completed search of depth 1.
UBFM (player 1) completed an analysis that reached at some point a depth of 3:
best value observed at root 0.9112501,
918 different states were evaluated
25 iterations, with 63 calls of minimax
Alpha-Beta (player 2) completed search of depth 2.
UBFM (player 1) completed an analysis that reached at some point a depth of 3:
best value observed at root 0.9512501,
1025 different states were evaluated
39 iterations, with 80 calls of minimax
Alpha-Beta (player 2) completed search of depth 2.
UBFM (player 1) completed an analysis that reached at some point a depth of 3:
best value observed at root 0.77125,
900 different states were evaluated
35 iterations, with 71 calls of minimax
Alpha-Beta (player 2) completed search of depth 2.
UBFM (player 1) completed an analysis that reached at some point a depth of 2:
best value observed at root 0.9112501,
909 different states were evaluated
34 iterations, with 67 calls of minimax
Alpha-Beta (player 2) completed search of depth 2.
UBFM (player 1) completed an analysis that reached at some point a depth of 3:
best value observed at root 0.73125005,
912 different states were evaluated
34 iterations, with 69 calls of minimax
Alpha-Beta (player 2) completed search of depth 2.
UBFM (player 1) completed an analysis that reached at some point a depth of 2:
best value observed at root 0.6712501,
794 different states were evaluated
22 iterations, with 43 calls of minimax
Alpha-Beta (player 2) completed search of depth 1.
UBFM (player 1) completed an analysis that reached at some point a depth of 3:
best value observed at root 0.68000007,
803 different states were evaluated
20 iterations, with 55 calls of minimax
Alpha-Beta (player 2) completed search of depth 2.
UBFM (player 1) completed an analysis that reached at some point a depth of 3:
best value observed at root 0.6575,
875 different states were evaluated
23 iterations, with 50 calls of minimax
Alpha-Beta (player 2) completed search of depth 2.
UBFM (player 1) completed an analysis that reached at some point a depth of 4:
best value observed at root 0.87125003,
920 different states were evaluated
22 iterations, with 60 calls of minimax
Alpha-Beta (player 2) completed search of depth 2.
UBFM (player 1) completed an analysis that reached at some point a depth of 3:
best value observed at root 0.90250015,
1043 different states were evaluated
26 iterations, with 70 calls of minimax
Alpha-Beta (player 2) completed search of depth 2.
UBFM (player 1) completed an analysis that reached at some point a depth of 4:
best value observed at root 1.15625,
1223 different states were evaluated
32 iterations, with 98 calls of minimax
Alpha-Beta (player 2) completed search of depth 2.
UBFM (player 1) completed an analysis that reached at some point a depth of 3:
best value observed at root 0.8962499,
1111 different states were evaluated
44 iterations, with 88 calls of minimax
Alpha-Beta (player 2) completed search of depth 2.
UBFM (player 1) completed an analysis that reached at some point a depth of 3:
best value observed at root 0.9849999,
1272 different states were evaluated
51 iterations, with 108 calls of minimax
Alpha-Beta (player 2) completed search of depth 2.
UBFM (player 1) completed an analysis that reached at some point a depth of 3:
best value observed at root 1.2962499,
1107 different states were evaluated
26 iterations, with 66 calls of minimax
Alpha-Beta (player 2) completed search of depth 1.
UBFM (player 1) completed an analysis that reached at some point a depth of 3:
best value observed at root 1.0362499,
1006 different states were evaluated
32 iterations, with 65 calls of minimax
Alpha-Beta (player 2) completed search of depth 1.
UBFM (player 1) completed an analysis that reached at some point a depth of 4:
best value observed at root 1.7525,
1297 different states were evaluated
35 iterations, with 100 calls of minimax
Alpha-Beta (player 2) completed search of depth 2.
UBFM (player 1) completed an analysis that reached at some point a depth of 5:
best value observed at root 1.6012498,
1267 different states were evaluated
49 iterations, with 187 calls of minimax
Alpha-Beta (player 2) completed search of depth 3.
UBFM (player 1) completed an analysis that reached at some point a depth of 3:
best value observed at root 1.68125,
1304 different states were evaluated
41 iterations, with 99 calls of minimax
Alpha-Beta (player 2) completed search of depth 3.
UBFM (player 1) completed an analysis that reached at some point a depth of 9:
best value observed at root 1.6675,
1278 different states were evaluated
101 iterations, with 398 calls of minimax
Alpha-Beta (player 2) completed search of depth 3.
UBFM (player 1) completed an analysis that reached at some point a depth of 7:
best value observed at root 1.5674999,
1288 different states were evaluated
107 iterations, with 429 calls of minimax
Alpha-Beta (player 2) completed search of depth 3.
UBFM (player 1) completed an analysis that reached at some point a depth of 5:
best value observed at root 1000000.0,
954 different states were evaluated
323 iterations, with 1225 calls of minimax
Alpha-Beta (player 2) completed search of depth 0.
UBFM (player 1) completed an analysis that reached at some point a depth of 4:
best value observed at root 1000000.0,
1237 different states were evaluated
753 iterations, with 1541 calls of minimax

Here is the game:

  1. (Move E2-E4)
  2. (Move E7-E5)
  3. (Move D1-H5)
  4. (Move D8-H4)
  5. (Remove H4)
  6. (Move G7-G5)
  7. (Remove G5)
  8. (Move D7-D5)
  9. (Move F1-B5)
  10. (Move C7-C6)
  11. (Remove E5)
  12. (Move E8-D8)
  13. (Move E5-G5)
  14. (Move D8-C7)
  15. (Move G5-E5)
  16. (Move C7-B6)
  17. (Move B5-E2)
  18. (Move C8-G4)
  19. (Remove G4)
  20. (Move B8-D7)
  21. (Remove D7)
  22. (Move B6-A6)
  23. (Move G1-E2)
  24. (Move F8-B4)
  25. (Move B2-B3)
  26. (Move F7-F5)
  27. (Move A2-A3)
  28. (Move B4-C5)
  29. (Move A1-A2)
  30. (Move G8-F6)
  31. (Move C1-B2)
  32. (Remove F2)
  33. (Move E1-D1)
  34. (Remove D7)
  35. (Remove F5)
  36. (Move H8-G8)
  37. (Remove F2)
  38. (Move D5-D4)
  39. (Remove D4)
  40. (Move D7-C5)
  41. (Remove C5)
  42. (Move A8-D8)
  43. (Move B3-B4)
  44. (Move B7-B5)
  45. (Move D1-C1)
  46. (Move D8-D7)
  47. (Move F2-F6)
  48. (Move A6-B7)
  49. (Move H1-D1)
  50. (Move D7-D4)
  51. (Remove D4)
  52. (Remove G2)
  53. (Move F6-F7)
  54. (Move B7-C8)
  55. (Move D1-F1)
  56. (Remove E2)
  57. (Move F7-G8)
  58. (Move C8-D7)
  59. (Move F1-F7)
  60. (Move D7-D6)
  61. (Move G8-D8)
  62. (Move D6-E6)
  63. (Move F7-F6)

🕸Fergus Duniho wrote on Mon, Mar 20, 2023 01:35 AM UTC:

At 1sec per move, Ludii (as White) beat Flat MC (as Black) in 99 moves:

  1. (Move E2-E4)
  2. (Move C7-C6)
  3. (Move D1-H5)
  4. (Move D8-C7)
  5. (Move F2-F4)
  6. (Move D7-D5)
  7. (Move F1-A6)
  8. (Move C8-E6)
  9. (Move A2-A4)
  10. (Move E6-C8)
  11. (Move D2-D4)
  12. (Remove E4)
  13. (Move B2-B4)
  14. (Move E7-E6)
  15. (Move B1-C3)
  16. (Move G8-H6)
  17. (Move C1-B2)
  18. (Move F8-E7)
  19. (Remove F7)
  20. (Remove F7)
  21. (Move A6-C4)
  22. (Remove B4)
  23. (Move E1-E2)
  24. (Move F7-H6)
  25. (Move G1-H3)
  26. (Move E8-D8)
  27. (Move A4-A5)
  28. (Move C7-B6)
  29. (Remove B6)
  30. (Move D8-E8)
  31. (Remove E4)
  32. (Move A7-A6)
  33. (Move H3-G5)
  34. (Move G7-G6)
  35. (Move E4-F6)
  36. (Move E8-F8)
  37. (Move A1-A3)
  38. (Move H8-G8)
  39. (Move H1-D1)
  40. (Move A8-A7)
  41. (Move H2-H4)
  42. (Move B4-E7)
  43. (Remove H7)
  44. (Move F8-G7)
  45. (Move A3-A5)
  46. (Move H6-G4)
  47. (Remove G4)
  48. (Move E7-D8)
  49. (Move D1-F1)
  50. (Move G7-F7)
  51. (Move G4-H6)
  52. (Move F7-G7)
  53. (Remove G8)
  54. (Move G7-F7)
  55. (Move G8-H6)
  56. (Move F7-E7)
  57. (Move H6-G8)
  58. (Move E7-F7)
  59. (Move H7-F8)
  60. (Move D8-F6)
  61. (Remove F6)
  62. (Move A7-A8)
  63. (Move F8-H7)
  64. (Move C6-C5)
  65. (Move E2-F2)
  66. (Move G6-G5)
  67. (Move F1-G1)
  68. (Move C8-D7)
  69. (Move G2-G4)
  70. (Move D7-E8)
  71. (Move A5-A3)
  72. (Move E8-D7)
  73. (Move F6-E4)
  74. (Move D7-C6)
  75. (Remove G5)
  76. (Move F7-E8)
  77. (Move D4-D5)
  78. (Remove D5)
  79. (Move G1-H1)
  80. (Move B8-C6)
  81. (Move H4-H5)
  82. (Move E8-D8)
  83. (Move G5-F7)
  84. (Move D8-D7)
  85. (Remove C5)
  86. (Move D7-C8)
  87. (Move F7-D6)
  88. (Move C8-D8)
  89. (Move B2-F6)
  90. (Move C6-E7)
  91. (Remove D5)
  92. (Move A8-C8)
  93. (Remove C8)
  94. (Move A6-A5)
  95. (Move C8-D6)
  96. (Remove D5)
  97. (Move H1-E1)
  98. (Move D5-D4)
  99. (Remove E7)

🕸Fergus Duniho wrote on Mon, Mar 20, 2023 01:31 AM UTC:

Ludii as White beat Random as Black in even fewer moves:

  1. (Move E2-E4)
  2. (Move G8-H6)
  3. (Move F1-C4)
  4. (Move H6-G8)
  5. (Remove F7)
  6. (Remove F7)
  7. (Move D1-H5)
  8. (Move F7-E6)
  9. (Move H5-F5)
  10. (Move E6-D6)
  11. (Move F5-D5)

🕸Fergus Duniho wrote on Mon, Mar 20, 2023 01:29 AM UTC in reply to Daniel Zacharias from 01:00 AM:

There is also an alpha-beta ai which is stronger for some games

I just ran a game between Ludii as White and Alpha-Beta as Black at 1sec each, and Ludii quickly won. Here's what it reported the moves to be:

  1. (Move E2-E4)
  2. (Move E7-E5)
  3. (Move F1-B5)
  4. (Move D8-H4)
  5. (Move D2-D4)
  6. (Move F8-B4)
  7. (Move B1-D2)
  8. (Remove F2)
  9. (Remove F2)
  10. (Remove D2)
  11. (Remove D2)
  12. (Move B8-C6)
  13. (Move D1-H5)
  14. (Remove D4)
  15. (Remove E5)
  16. (Move G8-E7)
  17. (Remove D4)
  18. (Move E7-D5)
  19. (Remove D5)
  20. (Move C7-C5)
  21. (Move D4-E5)
  22. (Move E8-F8)
  23. (Move G1-F3)
  24. (Move D7-D6)
  25. (Move E5-E8)

🕸Fergus Duniho wrote on Mon, Mar 20, 2023 01:20 AM UTC:

Since I figured out how to make the Ludii Player show the last move, I decided to try one more game with it set to its maximum thinking time of 300 seconds, which is 5 minutes. As before, it moved out its Queen and let it get chased around a bit. Overall, it played very poorly, and it was checkmated in 32 moves, making this game even shorter than previous games with less thinking time for Ludii. In the endgame, it seemed to just give up, letting checkmate come even more quickly than it had to. Based on this, I would conclude that Ludii is not nearly as good at playing Chess variants as the Interactive Diagram is. And since that is itself a low bar, my conclusion is that Ludii is not very good for Chess variants. Here's the game:

  1. d4 e6
  2. c3 Qh4
  3. Nf3 Qe4
  4. Nbd2 Qd5
  5. e4 Qh5
  6. Bc4 b5
  7. Bd3 Qg4
  8. O-O Nc6
  9. Bxb5 Bb4
  10. cxb4 Nge7
  11. h3 Qf4
  12. g3 Qd6
  13. Nc4 Qxb4
  14. Qb3 O-O
  15. Qxb4 Nxb4
  16. Bf4 Bb7
  17. Nfd2 Kh8
  18. Bxd7 Rad8
  19. Ne5 f6
  20. Bxe6 fxe5
  21. Bxe5 Nd3
  22. Bxc7 Rxd4
  23. Ba5 Bc6
  24. Bc3 Ra4
  25. Bb3 Nd5
  26. exd5 Rf5
  27. dxc6 Rg5
  28. Bxa4 Rh5
  29. h4 Ne5
  30. Bb4 Rh6
  31. c7 Rh5
  32. c8=Q

King of the Mountain. Be the first player to get your King to the top of the hill! (19x19) [All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Mon, Mar 20, 2023 12:50 AM UTC in reply to Paul Newton from Sun Mar 19 10:38 PM:

Are there any further issues that need to be addressed with this before it can be published?

Its boards are having the same problems as in your other game. They are too large, and when they resize to fit the screen, the rank and file markers are too small. Perhaps you have a 4k monitor, but I have an HD monitor, and I expect HD monitors are still more common. On an HD monitor, the maximum screen height is 1080 pixels, and a height of 3025 pixels is overkill. Actually, it's overkill even in 4k, since its maximum height is 2160 in landscape. But if you have a 4k monitor in a portrait orientation, you could view a whole board image without resizing it.


Ludii PortalA website
. The home of Ludii, a general game system that can play the full range of traditional strategy games, including chess variants. () [All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Mon, Mar 20, 2023 12:43 AM UTC in reply to Daniel Zacharias from 12:34 AM:

Which ai are you using in ludii?

Ludii.


Arena Cheturshogqi. 2-4 Players on large board with mutating pieces and piece drops. (13x13, Cells: 169) [All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Sun, Mar 19, 2023 09:39 PM UTC in reply to Paul Newton from 09:25 PM:

Thank you for making the needed adjustments to the size of the board files!

I didn't adjust the size of the files. I just added CSS to display them at a size that will fit the screen.


Ludii PortalA website
. The home of Ludii, a general game system that can play the full range of traditional strategy games, including chess variants. () [All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Sun, Mar 19, 2023 09:37 PM UTC:

For the next game, I gave the Ludii player 30 seconds of thinking time. It still played very poorly, making lots of obviously bad moves. The Interactive Diagram made sensible moves for most of the game, but during the endgame, it failed to mobilize its overwhelmingly superior forces for checkmate. It could have easily gotten checkmate by moving out a Rook to help the Queen, but instead it moved out its King. When it was getting close to further hemming in the King and eventually getting checkmate, it moved its Queen to a rank further from the King, giving it more space to move. Eventually, the game ended in a draw through three-times repetition, which I estimated by observing the same set of four moves repeat three times. Here are the moves:

  1. d4 e6
  2. c3 Qh4
  3. Nf3 Qe4
  4. Nbd2 Qf4
  5. Nb3 Qe4
  6. Nc5 Bxc5
  7. dxc5 d6
  8. cxd6 Bd7
  9. dxc7 Ne7
  10. cxb8=Q Rxb8
  11. Be3 O-O
  12. Qxd7 Qc4
  13. Qxe7 Rbd8
  14. Qxb7 Rd6
  15. Qxa7 e5
  16. Nxe5 Qh4
  17. g3 Qe7
  18. Qxe7 Rd5
  19. Bg2 Rxe5
  20. Qxe5 Rd8
  21. O-O h6
  22. h4 h5
  23. Qxh5 f6
  24. Bd5 Rxd5
  25. Qxd5 Kh7
  26. Qh5 Kg8
  27. Kg2 Kf8
  28. Kf3 g6
  29. Qxg6 Ke7
  30. Bc5 Kd8
  31. Ke4 Kc7
  32. Qxf6 Kb8
  33. Kd5 Kc8
  34. Qf5 Kc7
  35. Qf4 Kc8
  36. Qf5 Kc7
  37. Qf4 Kc8
  38. Qf5 Kc7
  39. Qf4 Kc8
  40. Qf5

🕸Fergus Duniho wrote on Sun, Mar 19, 2023 08:58 PM UTC:

In the previous game, the Ludii player had 1 second of thinking time. I next tried it with 5 seconds, but when it was about to throw away a Queen, I started a new game with 10 seconds of thinking time for it. The Interactive Diagram played in Edge with its default settings. In the start of the game, Ludii moved out its Queen as it had done at 5 seconds, but instead of throwing it away, it fled from attacks, letting its Queen get chased around. But it eventually began to lose material, and by the endgame, it had only the King left. The Interactive Diagram eventually defeated it with checkmate. Here is the game:

  1. d4 e6
  2. c3 Qh4
  3. Nf3 Qe4
  4. Nbd2 Qf4
  5. Nb3 Qe4
  6. Nc5 Bxc5
  7. dxc5 Kf8
  8. Qd4 Qxd4
  9. Nxd4 Nf6
  10. Bf4 Ke8
  11. Bxc7 Ne4
  12. Be5 d6
  13. Bxg7 e5
  14. Bxh8 exd4
  15. cxd4 Bg4
  16. cxd6 Nd7
  17. h3 Be6
  18. e3 Rc8
  19. Bd3 f6
  20. Bxe4 Bf7
  21. Bxb7 Rc2
  22. b3 Be6
  23. O-O Kf7
  24. Be4 Rb2
  25. Bxh7 Bd5
  26. Bf5 Rd2
  27. Bxd7 Bxg2
  28. Kxg2 Re2
  29. Kf3 Rd2
  30. Bf5 Rb2
  31. Ke4 Rc2
  32. Kd3 Rc6
  33. d7 a6
  34. d8=Q Re6
  35. Bxe6 Kxe6
  36. Qxf6 Kd7
  37. Qxa6 Kc7
  38. Be5 Kd7
  39. Qb5 Ke7
  40. Ke4 Kf7
  41. Qd5 Kg6
  42. Qg8 Kh5
  43. Qg4 Kh6
  44. Kf5 Kh7
  45. Qg6

🕸Fergus Duniho wrote on Sun, Mar 19, 2023 08:29 PM UTC in reply to H. G. Muller from 10:50 AM:

I downloaded the Ludii player to my computer and ran a game against the Interactive Diagram at its default settings. This time, the Interactive Diagram quickly won with checkmate. I wonder if it makes a difference that I was using Edge instead of Firefox, given that I keep Firefox loaded with tabs, and I always start Edge fresh with no old tabs open.

  1. d4 e5
  2. dxe5 Qg5
  3. Bxg5 Bb4
  4. c3 f6
  5. exf6 Bxc3
  6. Nxc3 d5
  7. fxg7 h6
  8. gxh8=Q Nc6
  9. Qxg8 Kd7
  10. Qdxd5

Since the Ludii player allows me to adjust the thinking time, I will see if additional thinking time will allow it to defeat the Interactive Diagram.


Arena Cheturshogqi. 2-4 Players on large board with mutating pieces and piece drops. (13x13, Cells: 169) [All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Sun, Mar 19, 2023 05:02 PM UTC:

This is now published. I moved your information on the Archbishop and other names for the piece to the proper piece, and I added STYLE="max-height: 90vh" to your new board images. Your board images were still too large, but when I reduced them in size to fit the screen, the rank and file markers remained legible, not only on my desktop but also on my 7 inch Fire tablet in landscape. Since 1vh is 1% of the viewport height, 90vh is a good height for allowing the whole image to be seen. I kept it below 100vh in case some of the full height would be used by other stuff on the screen.


Ludii PortalA website
. The home of Ludii, a general game system that can play the full range of traditional strategy games, including chess variants. () [All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Sun, Mar 19, 2023 02:17 AM UTC in reply to Daniel Zacharias from 12:32 AM:

I saved the PDF on the Ludii language to my Kindle DX to review later.


Arena Cheturshogqi. 2-4 Players on large board with mutating pieces and piece drops. (13x13, Cells: 169) [All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Sat, Mar 18, 2023 07:40 PM UTC:

For the board images, I replaced style="height:1266px; width:1200px" with STYLE="max-height: 90vh;", because the images were too large for the screen, and they would not resize properly when I reduced the window size. They now fit comfortably on my screen, but the rank and file markers appear very small. So, I would recommend making new images that are small enough to fit an HD screen while having rank and file markers large enough to read.


Ludii PortalA website
. The home of Ludii, a general game system that can play the full range of traditional strategy games, including chess variants. () [All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Sat, Mar 18, 2023 06:12 PM UTC:

For another test, I raised how many plies the Interactive Diagram thinks ahead to 4. But while trying to get Ludii to play White, it started playing itself. Since I wanted to see if it could press an advantage in the endgame, I let it continue. Eventually, Black checkmated White. I then ran the planned game with the Interactive Diagram at 4 plies, letting Ludii move first. The Interactive Diagram won this game with checkmate without repeating moves. Here are the moves:

  1. e4 e5
  2. Qh5 d6
  3. Bb5 c6
  4. b4 cxb5
  5. d4 Nf6
  6. Qxf7 Kxf7
  7. Ne2 Nxe4
  8. d5 Na6
  9. Bh6 Nxb4
  10. Be3 Nxc2
  11. Kf1 Nxa1
  12. Bg5 Qxg5
  13. Nf4 Qxf4
  14. f3 Qc1
  15. Ke2 Qxh1
  16. fxe4 Qxb1
  17. Ke3 Qxa2
  18. h3 Qxg2
  19. h4 Qh3
  20. Kd2 Qxh4
  21. Kc3 Qxe4
  22. Kb2 Nc2
  23. Kc3 Bf5
  24. Kb2 Qxd5
  25. Kc1 Qd4
  26. Kb1 Qa1

🕸Fergus Duniho wrote on Sat, Mar 18, 2023 05:08 PM UTC:

Since the Java Applet had failed to defeat Ludii at Chess, I conducted another game between the Interactive Diagram for Chess and Ludii. This time, I let Ludii play White to give it the first move advantage. Like in previous games, it threw away its material. However, the Interactive Diagram had trouble pressing its advantage in the endgame, continually checking the King with its Queen instead of bringing in other pieces to support the Queen. Since the Interactive Diagram kept track of the moves, I eventually spotted a three-times repetition, which made the game a draw.

  1. e3 d5
  2. Bb5 c6
  3. Qh5 cxb5
  4. d3 Nf6
  5. Nc3 Nxh5
  6. b4 Nc6
  7. e4 Nxb4
  8. h4 Nxc2
  9. Kd2 Nxa1
  10. Rh3 Bxh3
  11. a3 dxe4
  12. Nxe4 Qa5
  13. Ke2 Bxg2
  14. Nd6 exd6
  15. Bg5 Qxa3
  16. f3 Nb3
  17. Nh3 Bxh3
  18. f4 Nc1
  19. Kf2 Nxd3
  20. Ke2 Ndxf4
  21. Kd1 Kd7
  22. Kd2 Qd3
  23. Kc1 Kc6
  24. Kb2 Qd4
  25. Kb3 Be6
  26. Kc2 Bf5
  27. Kb3 Qc4
  28. Kb2 Qb4
  29. Ka2 Qc4
  30. Kb2 Qb4
  31. Ka2 Qc4
  32. Kb2 Qb4
  33. Ka2 Qc4
  34. Kb2 Qb4
  35. Ka2 Qc4
  36. Kb2 Qb4
  37. Ka2 Qc4
  38. Kb2 Qb4
  39. Ka2 Qc4

🕸Fergus Duniho wrote on Sat, Mar 18, 2023 04:48 PM UTC:

As a further test, I conducted a game of Chess between Ludii and Ed Friedlander's Chess applet. The Chess applet did better for most of the game, scooping up lots of material, but it had trouble pressing its advantage in the endgame. It kept on checking the King with its Queen without bringing in more material. The Java Applet declared itself the winner, but it reset the board before reaching checkmate, and I suspect it was a drawn game by the 50 moves rule. Since neither kept track of the moves, I'm not sure how many moves went by in pointless checks.


🕸Fergus Duniho wrote on Sat, Mar 18, 2023 04:16 PM UTC:

Since a Shogi variant might introduce complexities into the game that could make the AI play more poorly, I tried a game of Chess against Ludii. I easily won that game too. It threw away material and rarely captured my pieces.


🕸Fergus Duniho wrote on Sat, Mar 18, 2023 03:58 PM UTC:

I played a game of George Dekle's Hexshogi on this website and easily won. For some reason, it never captured any of my pieces, which quickly gave me a huge lead.


Chess Variant Inventors. Find out which inventors have the most games listed here.[All Comments] [Add Comment or Rating]
🕸📝Fergus Duniho wrote on Sat, Mar 18, 2023 03:23 PM UTC in reply to Jean-Louis Cazaux from 01:32 PM:

Most of the games supported by Jocly don't have individual pages, which is what is being counted here.


A Farewell[Subject Thread] [Add Response]
🕸Fergus Duniho wrote on Sat, Mar 18, 2023 01:11 PM UTC:

I rewrote the Who page to better describe what powers the editorial staff have, and I moved Joe Joyce to a section for Emeritus Editors.


🕸Fergus Duniho wrote on Sat, Mar 18, 2023 11:35 AM UTC in reply to Diceroller is Fire from 07:22 AM:

Who is the youngest editor of chessvariants?

Maybe I am.

You're not an editor. You're a contributor. An editor has the power to edit and approve contributions made by other people. Editors are much fewer in number, and among active editors, I believe that Ben is the youngest.


Grand Dice Chess. Grand Dice Chess Battle on a 12x12 board with four dice.[All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Sat, Mar 18, 2023 02:12 AM UTC:

This page is mostly ready. It could use some links to the pages that the preset has a link to. I just played a game online. For my last move, I rolled a 1, a 2, and two 4s. First, I moved the Pawn to the last rank to promote it to a Rook, then I moved it to capture a Rook, and again to capture the last King. It never got any of my Kings, maybe because I was moving them to safety when I could.


🕸Fergus Duniho wrote on Fri, Mar 17, 2023 09:35 PM UTC in reply to Вадря Покштя from 04:01 PM:

Everything is clearly written in the rules

I double checked on that, and it was not true. So, I rewrote your rules to make them clear on the questions I asked you.


An Inexpensive Method to Make Print and Play Chess Variants Sets. Chess Variants Print and Play. (8x8, Cells: 64) [All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Fri, Mar 17, 2023 03:59 PM UTC in reply to Paul Newton from 02:33 PM:

May I have your permission to edit the text to include a link to your article on making the hexagonal board?

Yes, you can do that.


Grand Dice Chess. Grand Dice Chess Battle on a 12x12 board with four dice.[All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Fri, Mar 17, 2023 02:30 PM UTC:

How precisely do dice rolls determine what you can move? If you don't move every piece indicated by the dice, can you move more than one piece of another type you rolled? If so, could you even make multiple moves with the same piece? If not, could you make multiple moves with the same piece if more than one die had the same number?


MSshuka[All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Thu, Mar 16, 2023 10:05 PM UTC:

This page is now at MSshuka.


🕸Fergus Duniho wrote on Thu, Mar 16, 2023 06:35 PM UTC in reply to A. M. DeWitt from 06:09 PM:

Since there is already an MSshuka, I cannot change it to that. Would you like me to delete MSshoka instead?


King of the Mountain. Be the first player to get your King to the top of the hill! (19x19) [All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Thu, Mar 16, 2023 04:54 PM UTC:

Out of their remaining twenty pieces, each player selects and places 16 pieces as they wish in the four spaces orthogonally adjacent to their Marshal, their Cardinal and the Queen (in both directions).

Do you mean multiple pieces on the same space? Or do you mean one piece on each the four closest spaces on each of the ranks and files occupied by the Marshal, Cardinal, and Queen?


A Farewell[Subject Thread] [Add Response]
🕸Fergus Duniho wrote on Thu, Mar 16, 2023 01:17 PM UTC in reply to Joe Joyce from 06:51 AM:

Joe,

I don't know the age of every editor, but among those I do, you are the oldest. Hans and I were both born in the 60s, and David was born in the 50s, but you were born in the 40s just a bit before my youngest aunt and uncle. So, thank you for sticking with being an editor here for so long.

Many editors here have not been programmers, because editing is a different task than programming, and non-programmers can also do it. The main advantage that programming can bring to editing is that people with experience programming Chess variants will be more sensitive to gaps, inconsistencies, or ambiguities in the rules of games, as programmers need to understand a game fully in order to program it. But it also comes with the drawback that they may rather spend their time programming than editing. There is a reason why I have chosen the title of Webmaster rather than Editor-in-Chief, as Hans and David had used before me. So, it's good to have editors who are not as focused on programming as some of us are and are willing to take the time to read and edit new submissions.


King of the Mountain. Be the first player to get your King to the top of the hill! (19x19) [All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Thu, Mar 16, 2023 12:45 PM UTC in reply to H. G. Muller from 06:19 AM:

I don't know that children's game

Maybe it has another name in Dutch. It is an unstructured physical contest in which boys, usually, individually vie against the other boys for control of the top of a hill through unarmed combat. It's well-known enough in English that there was an adult cartoon named after it.


🕸Fergus Duniho wrote on Thu, Mar 16, 2023 01:06 AM UTC in reply to H. G. Muller from Wed Mar 15 08:53 AM:

King of the Hill is normally played (e.g. on chess.com or by Fairy-Max) on an 8x8 board.

I expect this is a different game that shares a name and similarities with the game you know, because both are based on the same children's game.


An Inexpensive Method to Make Print and Play Chess Variants Sets. Chess Variants Print and Play. (8x8, Cells: 64) [All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Tue, Mar 14, 2023 11:44 PM UTC:

This is similar to something I've done before. I used to print piece images to sticker paper and apply them to poker chips. It would be helpful if you would include some photographs of the finished product and the stages you went through. I've also made a hexagonal board. See Make Your Own 91-Space Hexagonal Board. You can see photos of it in some pages for games that use it.


The Emperor's Game. Variant on 10 by 10 board from 19th century Germany. (10x10, Cells: 100) [All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Tue, Mar 14, 2023 06:53 PM UTC:

Based on the information provided on this page, the inventor is misidentified in ChessV.


ChessVA computer program
. Program for playing numerous Chess variants against your PC.[All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Tue, Mar 14, 2023 06:48 PM UTC:

Since Greg hasn't responded to my earlier question, I went ahead with adding a ChessV tag to games playable on ChessV.

Here are the games on ChessV I did not find a page for here:

  • Duplex Chess by Greg Strong
  • Gilded Grand Shatranj by Joe Joyce (This is briefly mentioned on the Grand Shatranj page, but the description is too brief, and the Game Courier preset it links to has no landing page, does not describe the rules, and is not programmed to enforce the rules.)
  • New Zealand Chess by Unknown
  • Nightrider Chess by V. R. Parton (maybe it's in one of his documents, but it doesn't have its own page.)
  • Odyssey by Greg Strong
  • Opti Chess by Derek Nalls
  • Relative Royalty Chess by various
  • Unicorn Grand Chess by David Paulowich and Greg Strong
  • Warochess by Eric Warolus
  • Wild Castle by Unknown

With this complete, I have edited the header to use the ChessV tag to tell whether a game is supported in ChessV, and I have removed the Chessv column from the Item table.


Ultima. Game where each type of piece has a different capturing ability. (Recognized!)[All Comments] [Add Comment or Rating]
🕸📝Fergus Duniho wrote on Mon, Mar 13, 2023 09:48 PM UTC in reply to Daniel Zacharias from 09:30 PM:

The new preset is allowing Chameleons to capture pawns with diagonal moves.

Okay, that's now fixed.


Ai AiA computer program
. Ai Ai is a Java general game playing programme, with many chess variants.[All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Mon, Mar 13, 2023 09:33 PM UTC:

In How Ai Ai Got its Name, I learned that the significance I thought it could have was completely wrong. It would be a good name for a romance anime about robots, because Ai could mean A.I., as in Artificial Intelligence, or could be a Japanese word for love. But, no, that's not what the name means.


Obento Chess. 12x12 Chess variant with Shogi-style promotions and bent sliding pieces. (12x12, Cells: 144) [All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Mon, Mar 13, 2023 09:20 PM UTC:

I changed the links to Ai Ai to our link page for it, and I changed tens to dozens, as we don't normally speak of tens of something in English, but we will speak of dozens, and the numbers are close enough together that dozens is likely to be true.

However, dozenal is a neologism in this context. On looking up the word, it describes numbers in base 12, which is not what is meant. I would suggest replacing it.


Ultima. Game where each type of piece has a different capturing ability. (Recognized!)[All Comments] [Add Comment or Rating]
🕸📝Fergus Duniho wrote on Mon, Mar 13, 2023 09:06 PM UTC:

The new Ultima presets are ready. Since the ones Antoine Fourrière had written were broken, and he is no longer active, I wrote entirely new ones that made use of the fairychess include file. These will display legal moves, and they will display piece names and descriptions in error messages. To test the new code, I replaced his preset with a new one and ran all the old Ultima games with it. Where a game complained about an illegal move, I checked which preset was at fault, and I made corrections in the new one when it was at fault. It turns out that the old preset allowed some illegal moves. In particular, I recall it allowing the King to move into check from a Coordinator. I also noticed that it handled suicide moves as deletions of spaces, which would be appropriate for Chesire Cat Chess or Wormhole Chess. For backwards compatibility, I enabled the substitute Galactic preset to handle deletions as suicide moves. But for the main fairychess preset, which the links on this page now go to, I did not. It will handle suicide moves as incomplete moves that do not include the destination. This is one of the standard ways that Game Courier handles suicide moves, and it works better with the mouse than the other ways do. One last thing is that I changed the notation to use co/CO for the Coordinator and ch/CH for the Chameleon. This should be less confusing than using c/C for the Coordinator and x/X for the Chameleon, especially if you are using the Abstract set, which displays the Chameleon in the form of the letter C. But this is only in the new fairychess preset. To be compatible with old games, the Galactic preset still uses the old notation.


How to Enforce Rules in Game Courier. A tutorial on programming a rule-enforcing preset in the GAME Code language.[All Comments] [Add Comment or Rating]
🕸📝Fergus Duniho wrote on Mon, Mar 13, 2023 07:38 PM UTC in reply to Daniel Zacharias from 05:53 PM:

The difficulty I have with that is making the notation work with it, since if I record the extra move, it isn't considered legal in some situations.

To avoid the need to write code for screening out extended moves, Game Courier uses the maxmove system variable and the ban and allow commands. The maxmove variable indicates how many moves may be made on a single turn. You can use the ban command to ban many things globally then use the allow command to make exceptions for certain types of moves at certain places in the extended move.


Ultima. Game where each type of piece has a different capturing ability. (Recognized!)[All Comments] [Add Comment or Rating]
🕸📝Fergus Duniho wrote on Mon, Mar 13, 2023 12:52 PM UTC in reply to Fergus Duniho from 02:33 AM:

Okay, I fixed the problem with suicide moves. I was thinking there were only two ways of writing them, but there were three, and by conflating two of these together, I had failed to update one of them to save values for $old and $moved when a suicide move is made. Given the multiple ways for writing these moves, I had decided to test for a suicide move by checking whether the moving piece and the last captured piece were the same, but for the full notation way of writing a suicide move, I hadn't done that.


How to Enforce Rules in Game Courier. A tutorial on programming a rule-enforcing preset in the GAME Code language.[All Comments] [Add Comment or Rating]
🕸📝Fergus Duniho wrote on Mon, Mar 13, 2023 12:29 PM UTC in reply to H. G. Muller from 09:31 AM:

(But in shuffle games you would also have to remember the start position, or at least the random seed used for generating it.)

It normally stores the seed, but when several games of Fischer Random Chess broke because PHP's algorithm for selecting random numbers had changed, I added constants to the language. Since Game Courier is designed for correspondence games, it runs a game from the beginning for each new move. Unlike variables, whose values are determined only by the running of the program and the input fed to it, constant values were stored in logs or $_POST data so that they would be available without re-running the code that originally generated them. The main thing distinguishing a constant is that it's value survives from one run of the program to the next. With that in mind, its value may be changed if necessary, but this is done with a special command, since going along with the way constants work in other languages, a constant is supposed to keep the same value.


Ultima. Game where each type of piece has a different capturing ability. (Recognized!)[All Comments] [Add Comment or Rating]
🕸📝Fergus Duniho wrote on Mon, Mar 13, 2023 02:33 AM UTC:

I am working on a new Ultima preset, and it's mostly working, but I've hit one snag. While suicide moves of the form "@-e2" are working, suicide moves of the form "P e2-" are making things go haywire, and I would rather use the latter, since they are easier to choose with the mouse. Here are the moves I'll replay tomorrow to continue trying to fix this:

1. P g2-g5 
1... p d7-d4 
2. P e2-e5 
2... x c8-g4 
3. L g1-g2 
3... x g4-g1 
4. X f1-b5 
4... p g7-g6 
5. P f2-f4 
5... p d4-e4 
6. P b2-b4 
6... x g1-g2 
7. W e1-g1 
7... x g2-g4 
8. C h1-f3 
8... p h7-h3 
9. C f3-e3 
9... x g4-f3 
10. K d1-e1 
10... i h8-h4
11. X b5-d7 // - Check! -
11... k e8-d7 
12. K e1-f1 
12... i h4-e1 // - Check! -
13. P e5-g5 
13... x f3-e2 // - Check! -
14. P h2-f2 
14... p h3-h1 // - Check! -
15. P g5-g1 
15... x f8-h6 
16. @-d2 
16... x h6-h2 
17. P c2-e2 
17... i e1-d1

How to Enforce Rules in Game Courier. A tutorial on programming a rule-enforcing preset in the GAME Code language.[All Comments] [Add Comment or Rating]
🕸📝Fergus Duniho wrote on Sun, Mar 12, 2023 08:22 PM UTC:

As things work right now, it is possible to take back moves, because when you do, it will replay all the canonical moves and skip over the moves that were taken back, recalculating game data as each move is made. But suppose you're evaluating each move only once, using constants to keep track of game information like whether certain pieces have already moved, and someone takes back a move that changed some of the information stored in the constants. You would either have to restore the game data to what it used to be, which could become rather tricky, or give up the ability to take back moves that do change game data.


🕸📝Fergus Duniho wrote on Sun, Mar 12, 2023 03:47 PM UTC in reply to Thomas from 11:57 AM:

Here's another issue. My code for evaluating actual moves, which is normally run in the Post-Move sections, includes error messages for various illegal moves, and beyond just saying that the move was illegal, some of them explain what was illegal about it. But the code I use for evaluating potential moves cannot include error messages, because the task is just to check whether there are any legal moves and to make a list of them all.


🕸📝Fergus Duniho wrote on Sun, Mar 12, 2023 03:40 PM UTC in reply to H. G. Muller from 01:35 PM:

The (pseudo-)legality might depend on aspects of the game state that were not reversibly updated. Like e.p. or castling rights, side-effect captures of an Ultima Withdrawer or Long Leaper.

That's a good point. Board position is not the only thing affecting the legality of a move. For castling, it has to keep track of whether the King and Rook have moved before, and this is done with flags that change value after a King or Rook moves. If you evaluated each move only once, you would need to use constants to keep track of whether the King or Rook had moved. Since constants normally keep their value, this would have to be done with resetconst. Back before I added constants to the language, though, this wasn't an option.


🕸📝Fergus Duniho wrote on Sun, Mar 12, 2023 03:31 PM UTC in reply to Thomas from 11:57 AM:

I wonder if it would suffice to check the legality of the newest move only.

That's going to depend upon how explicit you make your notation. In Chess, for example, I have long treated castling as a King's move, though I have recently written code for handling it as a two-piece move, and I still treat en passant as just a single Pawn move without explicitly adding the capture to the notation. In Shogi, I handle moving captured pieces off the board and changing their sides automatically without including notation for it.


Ultima. Game where each type of piece has a different capturing ability. Also called Baroque. (8x8, Cells: 64) (Recognized!)[All Comments] [Add Comment or Rating]
🕸📝Fergus Duniho wrote on Sat, Mar 11, 2023 10:46 PM UTC:

Another question. Can a Chameleon capture Pawns with a diagonal move? Or, since Pawns move like Rooks, can it capture a Pawn only if it makes an orthogonal move?

In Zillions-of-Games, the Java applet, and the Interactive Diagram, it had to make an orthogonal move. So, I'll assume that's the rule unless it's overruled.


🕸📝Fergus Duniho wrote on Sat, Mar 11, 2023 10:16 PM UTC in reply to Fergus Duniho from 09:32 PM:

I recreated the same position in Zillions-of-Games, the Interactive Diagram, and Ed Friedlander's Java applet, and in every one of them, the Chameleon could not capture the Long Leaper. I'll assume this is the de facto rule unless Abbott chimes in otherwise.


Courier Chess VIII. A re-imagining of Courier Chess, on a smaller board. (8x8, Cells: 64) [All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Sat, Mar 11, 2023 09:38 PM UTC:

If you've replaced the Courier with a Dragon Horse and have named it a General, in what sense does the name Courier Chess VIII make any sense?


Ultima. Game where each type of piece has a different capturing ability. Also called Baroque. (8x8, Cells: 64) (Recognized!)[All Comments] [Add Comment or Rating]
🕸📝Fergus Duniho wrote on Sat, Mar 11, 2023 09:32 PM UTC:

I have a question about this position. If the piece on f5 were a Long Leaper, it could capture the Long Leaper on c2, and it would capture the Withdrawer on e4 along the way. But since the piece is a Chameleon, can it still move to b1 to capture the Long Leaper on c2? If nothing were on e4, it would be free to. Since it can't capture the Withdrawer by leaping over it, does that block it from being able to capture the Long Leaper? Or could it leap over the Withdrawer without capturing it and capture the Long Leaper on c2?

diagram


Courier Chess VIII. A re-imagining of Courier Chess, on a smaller board. (8x8, Cells: 64) [All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Sat, Mar 11, 2023 07:26 PM UTC in reply to H. G. Muller from 07:16 PM:

Computer code certainly shouldn't be at the beginning of the Rules section. If it clarifies the rules in a way that is important, it might be okay to include it in the Notes section with some text describing what it illustrates or in the Rules section with a <DETAILS> tag. However, you should be able to describe the rules without referring to code, and for readers who are not programmers, it is best that you do so. You shouldn't really include code unless there is some overriding reason to do so.


Ultima. Game where each type of piece has a different capturing ability. Also called Baroque. (8x8, Cells: 64) (Recognized!)[All Comments] [Add Comment or Rating]
🕸📝Fergus Duniho wrote on Sat, Mar 11, 2023 06:17 PM UTC in reply to Fergus Duniho from 06:05 PM:

To answer my question, I looked up the chapter on Ultima in Pritchard's Popular Chess Variants, and he wrote, "An immobilized king can be mated by its rival moving next to it." So, unless Abbott has said differently somewhere, I'll take this as the rule.


🕸📝Fergus Duniho wrote on Sat, Mar 11, 2023 06:05 PM UTC:

Can an immobilized piece still check a King? If not, could a King move up to an immobilized King and checkmate it? I'm asking, because I'm programming it for Game Courier, and I'm getting ready to add code for the Immobilizer.


Glinski's Hexagonal Chess. Chess on a board made out of hexagons. (Recognized!)[All Comments] [Add Comment or Rating]
🕸📝Fergus Duniho wrote on Sat, Mar 11, 2023 03:03 AM UTC in reply to Fergus Duniho from 02:42 AM:

Note that I recently changed the behavior of where to return false when a coordinate does not exist. This seemed to make more sense than returning a lone rank or file label, as it sometimes would for a non-existent space. But I guess these lone rank or file labels were less problematic for some code.


🕸📝Fergus Duniho wrote on Sat, Mar 11, 2023 02:42 AM UTC in reply to Daniel Zacharias from Fri Mar 10 11:21 PM:

There was a similar problem with the King, and I fixed both. The problem was with the functions for ascertaining the range of the piece, which were used only for potential moves. When I tried to make moves, they worked, and what I needed to fix were the NL, nL, KL, and kL functions. Here is an example of what was no longer working:

def NL array where #0 1 2 where #0 2 1 where #0 -1 -2 where #0 -2 -1 where #0 1 -3 where #0 -1 3 where #0 -3 1 where #0 3 -1 where #0 2 -3 where #0 -2 3 where #0 -3 2 where #0 3 -2;

I believe the problem arose if any of these where clauses returned false instead of a coordinate. To get around that, I replaced the code with this:

def NL aggregate lambda (where #frm #0 #1) ((1 2) (2 1) (-1 -2) (-2 -1) (1 -3) (-1 3) (-3 1) (3 -1) (2 -3) (-2 3) (-3 2) (3 -2)) =frm;

This uses the aggregate function to build an array of non-empty values of the lambda function, and it passes it the same set of values as the previous code did. So, whenever the where function returns false, it doesn't get added to the array.


Grand Triple Chess. Chess on an 16 x 24 board (i.e. six boards) with 3 sets of pieces. (24x16, Cells: 384) [All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Thu, Mar 9, 2023 11:30 PM UTC in reply to Вадря Покштя from 08:56 PM:

No, it's not. You should add a graphic diagram. You can do this with the Diagram Designer.


How to Enforce Rules in Game Courier. A tutorial on programming a rule-enforcing preset in the GAME Code language.[All Comments] [Add Comment or Rating]
🕸📝Fergus Duniho wrote on Thu, Mar 9, 2023 11:21 PM UTC in reply to Daniel Zacharias from 08:20 PM:

As an example of how you can handle non-displacement captures, I have been working on a new preset for Ultima today. I'm writing *_MOVE and *_CHECK functions as separate functions, and I'm using the main function for a piece to call the appropriate function depending on the value of #movetype.

If you use your functions for actual moves, as I have been doing so far, you should set movetype to MOVE in your Pre-Game code. This will give it a default value when you're not in checked or stalemated.

I have already written code for the Withdrawer, and you might be able to figure out how to make its capture optional.


🕸📝Fergus Duniho wrote on Thu, Mar 9, 2023 02:46 PM UTC in reply to Daniel Zacharias from 03:51 AM:

There are two main contexts for evaluating the legality of potential moves. One is the normal context of evaluating whether a move from one space to another is legal. In this context, the destination should be the space the piece moves to. The other context is evaluating whether a piece is checking the King. For displacement captures, this simply involves evaluating whether a piece can move to the King's position. So, for non-displacement captures, you will have to simulate a move to the King's position.

The fairychess include file has a mechanism for dealing with these two types of moves. It's not well-documented, but it does come up in the breakdown of the White_Pawn function. If you go to the include file itself and compare the checked subroutine with the stalemated subroutine, you will see that each gives a different value to the variable movetype. The White_Pawn function uses this value to stop the function early when all it has to evaluate is whether it can check the King, since as a divergent piece, some of its powers of movement will not be relevant to this question. Although the Pawn can capture another Pawn by en passant, it cannot capture a King by en passant. So, its ability to capture by non-displacement has no effect on its ability to check a King.

But for a piece that normally captures by non-displacement, you will need to write its move function to account for two types of moves. For moves with the MOVE type, your function should evaluate whether the piece can move to the destination, and it should handle non-displacement captures with the remove built-in function, just as the Pawn functions do for en passant. For moves with the CHECK type, your function should evaluate whether it can capture a piece on the destination. Since this will be used only for telling whether it is checking a King, you may treat this as a move to the King's space without worrying about moving the piece to another space.

If you use the fairychess include file, you should be able to use its checked and stalemated subroutines without writing your own. The main thing you will need to do is write your piece functions to handle two different types of moves.


🕸📝Fergus Duniho wrote on Thu, Mar 9, 2023 03:01 AM UTC in reply to Daniel Zacharias from 12:35 AM:

One thing I fixed was where, which you're using in your doubleleap function. I modified it to return false when it calculates a coordinate that doesn't exist, such as an unpaired file or rank marker. However, it didn't fix things for your King.

As I understand how the Catapult and the Skirmisher work from your rules page, they capture by en passant. But in your stalemated subroutine, you're executing the command move #to #after after you have executed move #from #to, and this will move the piece you just moved to #to to #after, changing its position on the board from what it should actually be. If these pieces just capture by en passant, then you should just remove the piece on #after instead of moving the capturing piece there.


🕸📝Fergus Duniho wrote on Thu, Mar 9, 2023 02:26 AM UTC in reply to Daniel Zacharias from 12:35 AM:

I didn't see error messages. How would I find those?

It looks like the code was set up to report them only to me. I just changed it to report them to anyone.


🕸📝Fergus Duniho wrote on Wed, Mar 8, 2023 10:40 PM UTC in reply to Daniel Zacharias from 08:10 PM:

You're getting lots of error messages about moves not being well-formed. Let's fix that first, then see if your other problem remains. The error is because these moves do not include the piece label. To make sure that the move is well-formed, you have three options.

  1. Construct the move in your stalemated subroutine as a string, and pass that string to setlegal instead of a pair of coordinates.
  2. Restore the position before using setlegal.
  3. Make sure you don't have moves where both coordinates end up empty. From looking at your use of #after in the stalemated subroutine, it looks like you might have moves of this sort. So, make sure to do one of the other two.

I would also recommend writing your code to the latest standard, which is the fairychess include file.


Shatranj. The widely played Arabian predecessor of modern chess. (8x8, Cells: 64) (Recognized!)[All Comments] [Add Comment or Rating]
🕸📝Fergus Duniho wrote on Wed, Mar 8, 2023 02:54 AM UTC in reply to Fergus Duniho from 01:13 AM:

Through trial and error I placed a polygon and a circle ahead of the drawing of the Pawn. While it's not a perfect outline of the Pawn, it covers all the interior parts, which is good enough. So, now the Pawn is finally free of bleed-through.


🕸📝Fergus Duniho wrote on Wed, Mar 8, 2023 01:13 AM UTC in reply to Daniel Zacharias from 12:26 AM:

For the Pawn, I took your new Pawn and changed the fill color from #ffffff to #f9f9f9 to make it recolorable, and it is now working without bleed-through. Thanks.

Sorry, no, it's not. I need to get the outline shape of the Pawn and put it ahead of the main drawing of the Pawn in the SVG.


🕸📝Fergus Duniho wrote on Wed, Mar 8, 2023 12:06 AM UTC in reply to Daniel Zacharias from Tue Mar 7 10:43 PM:

They appeared to have no bleed-through, but they wouldn't recolor. So, I went ahead with what was working. Taking a variation on your suggestion, I was isolating the part of the path that drew the outline and placing it before the path that drew the image with a color of #f9f9f9. This worked for most pieces. For the Ferz, I couldn't isolate the path due to it relying on m rather than M too much, as it is easier to isolate segments of a path when it is using absolute values. I tried the same thing with the Pawn, but it didn't work. Instead of drawing an outline and carving out sections, it was drawing the right side as a single path then drawing the left side as a single path. So, I couldn't isolate any part of the path for drawing the outline. At this point, every piece is recoloring without bleed-through except for the Pawn.


🕸📝Fergus Duniho wrote on Tue, Mar 7, 2023 09:08 PM UTC in reply to Daniel Zacharias from 08:22 PM:

You could try copying the black pieces behind the white ones to provide the fill color.

No, that's a kludge I would rather avoid.


The Chess Variant Pages: Alphabetical listing of variants. Search links to the Chess Variant Pages broken down alphabetically.[All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Tue, Mar 7, 2023 09:04 PM UTC in reply to H. G. Muller from 06:05 PM:

Plutonian Test Chess, the Play-Test Applet, the Chekmating Applet.

These now work. By redirecting /page/ URLs to the canonical URLs, I had created a Catch-22 for /page/ URLs that are canonical. I have now built in an exception for them.


Shatranj. The widely played Arabian predecessor of modern chess. (8x8, Cells: 64) (Recognized!)[All Comments] [Add Comment or Rating]
🕸📝Fergus Duniho wrote on Tue, Mar 7, 2023 06:51 PM UTC:

It looks like I didn't edit them perfectly. The background color is bleeding through in parts of each piece image.


🕸📝Fergus Duniho wrote on Tue, Mar 7, 2023 06:17 PM UTC in reply to H. G. Muller from 10:12 AM:

Since there are two sets of svg images of the Alfonso-X pieces, I downloaded both and compared them. The PyChess files were much larger, and they wouldn't display in Edge or load in Inkscape. The other images came in both black and white, but I needed only the white pieces. But these didn't have a fill color, which would have made recoloring them impossible. I fixed that by loading each one into Inkscape and adding a fill color in the appropriate places. Finally, I had to manually edit some to correct an error that had crept up in using Inkscape. Now that that's all done, I have a set of SVG images for the Alfonso-X set that work with Game Courier or the Diagram Designer and can be recolored. Thanks for the help.


The Chess Variant Pages: Alphabetical listing of variants. Search links to the Chess Variant Pages broken down alphabetically.[All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Tue, Mar 7, 2023 04:45 PM UTC in reply to H. G. Muller from 02:15 PM:

I haven't found any problematic links. Would you name specific pages whose links are not working right?


Shatranj. The widely played Arabian predecessor of modern chess. (8x8, Cells: 64) (Recognized!)[All Comments] [Add Comment or Rating]
🕸📝Fergus Duniho wrote on Mon, Mar 6, 2023 09:14 PM UTC in reply to Jean-Louis Cazaux from 07:41 PM:

Thanks for the correction. I suppose I was thinking 13th century and then misapplied the number 13.


🕸📝Fergus Duniho wrote on Mon, Mar 6, 2023 12:05 PM UTC in reply to Daniel Zacharias from 03:48 AM:

While signed in, go to your personal information page and select Upload or Manage Files from the Edit menu. If it hasn't yet been programmed to accept svg files, put them into a zip file and upload that. I'll then move them to an appropriate location.


🕸📝Fergus Duniho wrote on Sun, Mar 5, 2023 11:51 PM UTC in reply to Fergus Duniho from 11:13 PM:

In making the diagram below, I discovered a quick and easy method for making bitmap piece images. By printing the black pieces in outline, I can get pieces like the white ones in the diagram, which are anti-aliased to the piece color inside and to a neutral background color (#808080) outside. So, I've already made and uploaded a set of GIFs to use.


🕸📝Fergus Duniho wrote on Sun, Mar 5, 2023 11:13 PM UTC:

Is anyone interested in making an SVG piece set out of the Chess Alfonso-X font? I would like to use them in a redesign of this page with a diagram looking something like this, which I just did in Ultimate Paint, as well as with pieces images.

Shatranj diagram with Alfonso-X pieces

Alternately, is there anything that would be more authentic for Shatranj?


Who is Behind the Chess Variant Pages?. The editors, past editors, contributors, and inventors behind this site.[All Comments] [Add Comment or Rating]
🕸📝Fergus Duniho wrote on Sun, Mar 5, 2023 07:39 PM UTC in reply to Rewan Demontay from 07:19 PM:

Let me pass this on to H.G., since he is from the Netherlands and knows Dutch.


Home page of The Chess Variant Pages. Homepage of The Chess Variant Pages.[All Comments] [Add Comment or Rating]
🕸📝Fergus Duniho wrote on Sun, Mar 5, 2023 05:57 PM UTC:

The randgame.php script will now send you to a page's canonical URL instead of to a semantic URL with /page/ as the directory. When you do enter an URL with the /page/ directory, it will also send you to the canonical URL for the page, and when there is none, it will run the 404.php script. Note that these are two separate changes, as the randgame.php script will send you straight to the canonical URL without sending you to the /page/ URL first.

I also changed the ItemID for the home page from HomepageofTheChe to Homepage, and I made the appropriate corrections in the database and files where the old ItemID appeared.


🕸📝Fergus Duniho wrote on Sun, Mar 5, 2023 02:33 AM UTC:

Does anyone recognize the Chess set used for the Chess photo on this page? Since my mother picked it up at a yard sale for me, I don't have any information on it. It is a medieval fantasy themed set with Wizards for Bishops and Dragons for Knights. I borrowed the board from another set.


🕸📝Fergus Duniho wrote on Fri, Mar 3, 2023 07:00 PM UTC in reply to Jean-Louis Cazaux from 06:07 PM:

I have picture of my Shatranj board and pieces that may interest you.

I got them from you by email. I uploaded smaller versions and tried them out on a test page, but I don't think I'll use them.


🕸📝Fergus Duniho wrote on Fri, Mar 3, 2023 06:37 PM UTC in reply to Fergus Duniho from Thu Mar 2 10:29 PM:

I have now managed to use @container queries to get the logos for game software and web servers to increase in size to fill available space when there is some. This should put the space they take up on par with the preceding images. However, @container queries are a new web technology, and it may not be available on older mobile devices whose OS can no longer be updated. For desktops, though, you should be able to run a browser capable of handling them. For example, @container queries do not work on my iPad 2, and in landscape mode, the logos show up in a 3/3/2 pattern instead of 2/2/2/2.


🕸📝Fergus Duniho wrote on Fri, Mar 3, 2023 06:32 PM UTC in reply to Jean-Louis Cazaux from 06:07 PM:

We don't have a PM system in place. To upload it, you can go to your personal information page, then select "Upload or Manage Files" from the Edit menu. I believe you're familiar with how that works from uploading images for your pages.


🕸📝Fergus Duniho wrote on Thu, Mar 2, 2023 10:29 PM UTC in reply to H. G. Muller from 08:13 AM:

It is not clear that the photographs or program logos can be clicket to navigate somewhere; the fact that the page is full of recognizable links creates the impression that navigation should occur through those.

I created new buttonized images of each logo.

The photograph for Shatranj / Chaturanga is awful.

I replaced it with a Chess photo.

and the board looks like it has disintegrated into individual squares for no obvious reason.

Since I don't have a Chaturanga board, I made it by laying out individual board tiles. Since these were hand-made, they did not all align up evenly.

The alignment of the images is messy: the images are not of equal size, so that upper-left alignment of the smaller xiangqi images is all wrong.

I took the width and height values off the Xiangqi image, then replaced it with a Janggi image, because its more square shape is less portrait, and that fits better with the other images being more landscape than portrait.

Although there now is a photograph for the 'featured variant', it is not obvious at all what its significance is. The word 'featured' (or better: 'variant of the month') does not appear with it. There is also no link in the accompanying text (like there is for Shatranj/Chaturanga and Xiangqi/Janggi/Shogi), nor a suggestion that the image can be clicked.

I added a line about that with a link in it below the image.

The program logos are all of different size;

I made new ones that are all the same size today, but the uniformity made none of them stand out as much. By being different sizes, they all stood out better. So, I reverted to the ones with different sizes.

  • Later on, I used a mix of resized logos and old ones to make each line the same length when there are four lines, but without making each logo the same width. This gave them a staggered but justified look.
  • After increasing the width of your idiagram logo, I recolored the white part to better show the beveled edges.

Depending on the display/window width, the four topics with an image either display as 4x1, 2x2 or 3+1. In the first two cases the program logos are tiled to approximately the sam size as one of the other images (which is OK), but in the latter case they are displayed side by side, and because that doesn't fit, displayed as rows of 6 + 2 (messy).

I tried using flexboxes to get the one alternative I would consider better, but I couldn't get it to work. I wanted to evenly split them on two lines with the logos spread out across the width of the page, but all I could do is split them into 4+4 all on the left side. So, I reverted it back. For now, the logos are grouped into pairs that must be on the same line. That's why you'll get 6+2 instead of 7+1.

  • However, I did adjust the flex-basis of the DIVs and got some screen sizes where all eight logos appear on a single line.
  • I later added some synchronized media queries to keep the logos on a single line for the 3+1 pattern by allowing them to resize. On both Firefox and Edge, this seems to work correctly without the logos stacking into a block when three images are above them.

Cylindrical Chess. Sides of the board are supposed to be connected.[All Comments] [Add Comment or Rating]
🕸📝Fergus Duniho wrote on Thu, Mar 2, 2023 12:31 AM UTC in reply to Play Tester from Wed Mar 1 11:52 PM:

This is now fixed. I made sure it included the settings and theme values in the form.


ChessVA computer program
. Program for playing numerous Chess variants against your PC.[All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Wed, Mar 1, 2023 10:27 PM UTC:

As a demo for how a ChessV tag could be used, I created and populated a Zillions OTB tag for games that come with Zillions-of-Games, and I added code to add an item to the Play menu for games that come with Zillions-of-Games.


Featured Chess Variants. Chess Variants Featured in our Page Headers.[All Comments] [Add Comment or Rating]
🕸📝Fergus Duniho wrote on Wed, Mar 1, 2023 09:41 PM UTC in reply to Jean-Louis Cazaux from 07:15 PM:

OK but who is "us", what is the process to judge the quality? I fear the boundaries are more than vague here.

I already covered this here.

It is maybe a semantic question. What do you mean by "featured" exactly?

I already answered this here.

Is that "having distinctive aspects", "having something special" which is rather neutral, or is that bearing some positive appreciation, meaning that this game is better than others?

None of those. See my earlier answer to your question. However, there are criteria that a game must pass before being featured. These are described on this page.


Game Courier Developer's Guide. Learn how to design and program Chess variants for Game Courier.[All Comments] [Add Comment or Rating]
🕸📝Fergus Duniho wrote on Wed, Mar 1, 2023 09:32 PM UTC in reply to Daniel Zacharias from 07:33 PM:

Since where can take two or three arguments, it will take three if it finds three. So, where #0 n where #0 e; is treating the value of where #0 e as an argument for the leftmost where. Try this instead:

print aggregate lambda (where #frm #0) (n e) =frm;


ChessVA computer program
. Program for playing numerous Chess variants against your PC.[All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Wed, Mar 1, 2023 07:00 PM UTC:

Greg,

It appears your site doesn't support https. An easy way to fix this is to use CloudFlare for your DNS, as this site does. I have a free CloudFlare account that lets me use flexible SSL/TLS for free without hosting any files on this site.

Also, do you think it would be better to use a ChessV tag for games supported by ChessV? I created a column in the Item table for you to mark games supported by ChessV, but you haven't been doing that. I just marked Cylindrical Chess as supported by ChessV, and now the Play menu lists it as playable on ChessV.


100 comments displayed

LatestLater Reverse Order EarlierEarliest

Permalink to the exact comments currently displayed.