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/Ratings for a Single Item

Later Reverse Order EarlierEarliest
Interactive diagrams. Diagrams that interactively show piece moves.[All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Tue, May 21 09:53 PM EDT in reply to Daniel Zacharias from 06:49 PM:

How can I make an interactive diagram that can switch between greenwade and alfaerie graphics? Is there a way to change the image names associated with pieces dynamically?

You can use /play/pbm/showpiece.php with matching Game Courier sets, or you can alter piece names by hand. Look at the source for Chess to see how the former works or at the source for Ultima to see how the latter is done.


Daniel Zacharias wrote on Tue, May 21 06:49 PM EDT:

How can I make an interactive diagram that can switch between greenwade and alfaerie graphics? Is there a way to change the image names associated with pieces dynamically?


💡📝H. G. Muller wrote on Sat, May 18 11:31 AM EDT in reply to Aurelian Florea from 10:39 AM:

There was indeed a fatal bug that would cause an immediate crash. I don't know how this crept into the betza.txt include file; I had seen that bug before, and fixed it, and when I tested Megalomachy it worked.Which would not have been possible with this bug. It must have reverted somehow, by the version I have on my PC and the version here on CVP being out of sync.

Anyway, I applied the fix again, and that seems to make it work. (I am not sure it would work if the King only makes a single step, though, as this is ambiguous.)


💡📝H. G. Muller wrote on Sat, May 18 07:55 AM EDT in reply to Aurelian Florea from 06:34 AM:

Link?


Aurelian Florea wrote on Sat, May 18 06:34 AM EDT in reply to H. G. Muller from Fri May 17 05:09 AM:

I have noticed that both my megalomachy and frog chess with gryphon and falcon give an error related to fast castle. Probably it is not a coincidence!


Aurelian Florea wrote on Fri, May 17 05:55 AM EDT in reply to H. G. Muller from 05:09 AM:

I have made the modifications you have suggested, and now it works as expected.


💡📝H. G. Muller wrote on Fri, May 17 05:09 AM EDT in reply to Aurelian Florea from 04:19 AM:

I think you misinterpreted what is happening. The Heavy Cannon cannot jump an enemy Light Cannon. But it can jump friendly Cannons of both kinds. Which is how you configured it: the captureMatrix allows setting of enemy and friendly interactions separately, and you wrote the $ only in the position for the enemy interactions. The friendly interactions would come behind those on the same row. (But can usually be ignored, as friendly capture is rarely allowed. But friendly hopping is common, and if you want to ban that you will need to specify it.)

By writing an = at the end of a row spec in the captureMatrix it will use the same values for the friendly interactions as you have given for the enemy interactions in that row.

An unrelated thought:

I suppose the captureMatrix is a cleaner method for specifying friendly (or enemy) hopping than the dau (or cau) kludge in the XBetza notation. Just define the move with pa instead, and then forbid the enemy hopping in the captureMatrix. An Advancer could then be written as mQyafmcopabQ. (It doesn't work in generated GAME code, though, as this does not support the captureMatrix yet.)


Aurelian Florea wrote on Fri, May 17 04:19 AM EDT in reply to H. G. Muller from 02:55 AM:

files=14 ranks=14 promoZone=4 maxPromote=2 graphicsDir=https://www.chessvariants.com/cgi-bin/fen2.php?s=33&l=FFFF44&d=0000AA&w=FFFF44&b=0000AA&p= whitePrefix=w blackPrefix=b graphicsType=gif squareSize=38 lightShade=#FFFFFF darkShade=#660000 oddShade=#008800 whitePrefix=w blackPrefix=b graphicsType= symmetry=mirror useMarkers=1 borders=0 captureMatrix=///////////12$$./12$$./ hussar:H:fafsWraflWlafrWsbW:wideknight:c5,e5,g5,h5,j5,l5,f3,i3,,c10,e10,g10,h10,j10,l10,f12,i12 lancer:L:fafsWraflWlafrWbF:narrowknight:b5,d5,f5,i5,k5,m5,d3,k3,,b10,d10,f10,i10,k10,m10,d12,k12 equesrex:K:KN:king--knight:h1,,h14 queen:Q:ZQ:zebra--queen:g1,,g14 manticore:M:WyasfWC:lion:i1,,i14 gryphon:G:NB2afyasfF:gryphon:f1,,f14 paladin:A:BN2:cardinal:e1,j1,,e14,j14 nightrider:N:NNC:camel--nightrider:d1,k1,,d14,,k14 marshall:C:RN2:chancellor:c1,l1,,c14,l14 assasin:S:ZFX:diplomat:g3,h3,,g12,h12 ninja:J:HWXNY:cardinal1:e3,j3,,e12,j12 lightcannon:X:mRcpR:cannon--warmachine:a4,n4,,a11,n11 heavycannon:Y:pRpafcpR:cannon--greatwarmachineferz:a2,n2,,a13,n13 mammoth:T:KADmHmG:mammoth:c3,l3,,c12,l12


Aurelian Florea wrote on Fri, May 17 04:17 AM EDT in reply to H. G. Muller from 02:55 AM:

Oh, yes!

I'm sorry!

In a moment!


💡📝H. G. Muller wrote on Fri, May 17 02:55 AM EDT in reply to Aurelian Florea from Wed May 15 12:00 PM:

Actually I think we still have a problem. The heavy cannon can jump (but it cannot capture) the light cannon. This can't be an capture matrix thing because $ should do them both!

Well, without a link to the offending Diagram there is little I can do to assist...


Aurelian Florea wrote on Wed, May 15 12:00 PM EDT in reply to H. G. Muller from Mon May 13 11:10 AM:

Actually I think we still have a problem. The heavy cannon can jump (but it cannot capture) the light cannon. This can't be an capture matrix thing because $ should do them both!


Aurelian Florea wrote on Mon, May 13 01:56 PM EDT in reply to H. G. Muller from 11:10 AM:

Oh, a silly trivial mistake on my part. Thanks!


💡📝H. G. Muller wrote on Mon, May 13 11:10 AM EDT in reply to Aurelian Florea from 04:24 AM:

The first position in each row is for the non-capture. So if the Cannons are number  12 and 13 in the table, the Cannon x Cannon indications would need to be in the 13th and 14th element of the row. So 12 'nothing special' positions in front of them.

There is no row for empty squares, as empty squares cannot be moved. So you would have to specify this in the 12th and 13th row of the matrix. But it seems you are doing it in the 13th and 14th.

 


Aurelian Florea wrote on Mon, May 13 04:24 AM EDT in reply to H. G. Muller from 02:40 AM:

Maybe it is better if I explain what I want to do.

So there are these two pieces (in position 12 and 13):

  lightcannon:X:mRcpR:cannon:a4,n4,,a11,n11
  heavycannon:Y:pRpafcpR:warmachine:a2,n2,,a13,n13

The rule I want to implement is that heavy cannons cannot jump, be jumped, captured or be captured by other cannons. My captureMatrix looks like this:

  captureMatrix=////////////11$$./11$$./

but probably I got it wrong.

Note the heavy cannon is a bit more than a korean cannon is as it can jump two platforms in order capture, but not move.


💡📝H. G. Muller wrote on Mon, May 13 02:40 AM EDT in reply to catugo from Sun May 12 07:23 AM:

I think you have Missed my previous comment here, HG!

I was out of town for the computer-chess tournament in Zundert.

I don't know how to say that the source piece cannot hop to move, to capture, or capture said type. Meaning both ? and $.

I am not sure what you are asking. If you cannot hop to move or capture, you cannot hop at all, right?

$ indicates you can neither hop over, nor capture said type. If you can capture, but not hop, it would be indicated by ^. It is not possible in general to specify multiple effects for the same piece-combination in the captureMatrix, and in most cases this would not be meaningful anyway. (E.g. it makes no sense to specify what you promote to is the capture is forbidden.) The hop ban is special in this respect, as it does not refer to the occupant of the destination square, so that the move can involve 3 piece types. To cover the case of the Korean Cannon I introduced the $ symbol.


catugo wrote on Sun, May 12 07:23 AM EDT in reply to H. G. Muller from Fri May 10 04:57 AM:

I think you have Missed my previous comment here, HG!


Aurelian Florea wrote on Sat, May 11 01:33 AM EDT in reply to H. G. Muller from Fri May 10 04:57 AM:

I don't know how to say that the source piece cannot hop to move, to capture, or capture said type. Meaning both ? and $.


💡📝H. G. Muller wrote on Fri, May 10 04:57 AM EDT in reply to Aurelian Florea from 03:53 AM:

Can someone suggest an example where the capture matrix is used?

Minjiku Shogi, Makromachy. For Golem Chess I described how it could be done in the Comments. (At that time I had already made an I.D. in the old way, uses a WeirdPromotion custom script.)


Aurelian Florea wrote on Fri, May 10 03:53 AM EDT:

Can someone suggest an example where the capture matrix is used?


💡📝H. G. Muller wrote on Fri, Mar 15 06:33 AM EDT in reply to Daniel Zacharias from 05:14 AM:

I tried something similar, and it does work as expected using betzaNew.js. But not with betza.js. Which does surprise me, as I had not expected it to be different in this respect, so I will look into that.

And make sure to set maxPromote=0 to disable the normal promotion by zone rather than by morph.

[Edit] It appears that multiple promotion sets were never implemented in betza.js.


Daniel Zacharias wrote on Fri, Mar 15 05:14 AM EDT:

I don't understand how to use morph for optional promotions. I have promoChoice=W/PH/PF/PQ/PS/VH/VF/VQ/VS and two pieces, P and V, with morph=*/5/6/7/8 and morph=*/1/2/3/4 but it won't work right. What I expect is that each piece would have one optional promotion on each of the 4 ranks before the last. Instead, they either get all the promotion options at the same time or none.


💡📝H. G. Muller wrote on Thu, Mar 14 05:49 PM EDT in reply to A. M. DeWitt from 05:18 PM:

I have now done that too. But betzaNewer.js is experimental, and sooner or later will replace betzaNew.js and disappear itself (because it is fully compatible).


A. M. DeWitt wrote on Thu, Mar 14 05:18 PM EDT in reply to H. G. Muller from 04:15 PM:

Let's not forget about betzaNewer.js (the one with the experimental Shogi promotion system).


💡📝H. G. Muller wrote on Thu, Mar 14 04:15 PM EDT in reply to A. M. DeWitt from 03:25 PM:

It would be really nice if you could deselect a piece that you have just selected in the holdings.

OK, I now implemented this both in betza.js and betzaNew.js. (Every click in the holdings was treated as a first click, to prevent you could move pieces into the holdings, or between holdings squares. But a click on the already selected piece there indeed deserves to be an exception.)

@Fergus: I can no longer upload these .js scripts through the File Manager page of the Interactive Diagrams article. I get this error message:

Upload of /home/chessvariants/public_html/membergraphics/MSinteractive-diagrams/betza.js was allowed but failed! The cause of failure is unknown.

Upload through WinSCP still works.


25 comments displayed

Later Reverse Order EarlierEarliest

Permalink to the exact comments currently displayed.