Comments/Ratings for a Single Item
When using aliases, you also have to make sure that your code does the proper translations between the aliases used for notation and the piece labels used for displaying the pieces. Since the code in betza.txt does not contain the keywords alias or realname, I expect it is working with the assumption that there are no aliases. The tutorial for the fairychess include file explains how aliases may be used, which may be of help to H. G. if he chooses to add support for them. In the meantime, you would probably break your generated preset if you tried to use aliases with it.
Based on a prior post by Fergus, without looking at GC documentation, I think maybe all it takes to substitute a Dragon for a C (Applet's Caliph) in a preset is (using Auto Alfaerie PGN set):
Alias ...C D c d...
Where D stands for Dragon and d stands for dragon, in the Auto Alfaerie PGN set.
Leaving out some stuff (with ...), but I hope Fergus (and H.G.) get my drift.
I've added an edit to my last post.
One minor(?) point. In my written rules as displayed by the preset I still call a Caliph a Flying Dragon (another standard name for it), as on my rules page for Butterfly Chess. So I still showed a picture of a dragon in the displayed rules - but the Applet may insist on using a standard Caliph figurine (bishop+camel compound generated by Alfaerie piece sets) in any [preset] diagram [during play], I suppose it's possible (speaking as a layman), as the Applet abbreviates Caliph with a C in the coding as well as its offered FEN.
edit: I think I vaguely know what to do to get a dragon figurine from the applet, since it is (fortunately in this case) in the Applet's piece figurine table. It would involve substituting a dragon from the table for a caliph, somehow. Note that on my laptop, I couldn't see the table's sidebar to scroll by, unless I reduced my screen view by going [ctrl -] to get it to 90% factor (from normal 100%). It may also be the Applet can still use a standard Caliph symbol, and then I could have somehow substituted a dragon for it in my preset's diagram for during play - if I can wrap my head around how Fergus (or maybe H.G.) have already maybe explained well enough elsewhere.
I went with now using the Auto-Alfaerie PGN set for my enforcing preset, and otherwise left things the way Fergus recommended against (still, thanks Fergus). The preset seems to work now, at the least in Move mode. However, the game log I have with Joe was unaffected, and I guess would be best deleted, and we might play another test game.
Daniel/Play Tester used some sort of Alfaerie Sets (not 'Many'), without having the buggy issue I did.
Yes, it's not the use of Alfaerie images that lies at the root of your problems with alfaerie-many.
At the moment I cannot find an Alfaerie Set that's not png,
alfaerie-many is not png, and that is part of the problem you are having with it, because you have set $dir to /graphics.dir/alfaeriePNG in your code.
nevermind having all the piece figurine pictures I want for Butterfly Chess, if it becomes necessary/possible (for the sake of simplicity, in my case) to replace my chosen Piece Set in this preset of mine.
If all the pieces you want for it can be found in /graphics.dir/alfaeriePNG, then the misnamed alfaerie-allsvg might do. If not, auto-alfaeriePNG should have everything you need.
Daniel/Play Tester used some sort of Alfaerie Sets (not 'Many'), without having the buggy issue I did. At the moment I cannot find an Alfaerie Set that's not png, nevermind having all the piece figurine pictures I want for Butterfly Chess, if it becomes necessary/possible (for the sake of simplicity, in my case) to replace my chosen Piece Set in this preset of mine.
$flip is normally set within a set file. Since you are trying to override the value given to $pieces in your set file, you would need to set it explicitly in your code like you are doing with $pieces. But if you change your piece set to something using .png images and use aliases instead of trying to define your own set internally, you wouldn't need to change the value of $flip.
@ Fergus:
I don't see the expression $flip anywhere in my Butterfly Chess preset's coding boxes, that I pasted stuff into from the Play-Test Applet. Do you mean I should set something by another name (or something saying 1) to false (or 0)? I'm pretty clueless about Game Courier coding/programming still.
Your preset is using alfaerie-many, which has $flip set to true and an entirely populated $flipped array. When it is black's turn, $rightsideup is set to false, and this triggers it to use the piece name from $flipped instead of $pieces when $flip is true and $flipped has an element with the provided array key. Although you have rewritten $pieces to use .png images, you have not rewritten $flipped. So, it is using the piece names already supplied in alfaerie-many, which are all .gif file names. If you set $flip to false, this may fix things, though I still don't see any point in you using alfaerie-many if you are internally defining a set using .png pieces.
Hi Fergus.
Daniel's Tigrey preset (and Play Tester's Frog Chess preset) may have this inconsistency also, if I understand a little of what you are writing, and yet both their presets work. Is there some key difference you can see with my preset, when you look at either of their presets, when in edit mode?
Do you think it's worth changing the preset's 'Sides' to 'White Blue' from 'White Black'?
No, the $sides variable merely contains the names of the sides in the game.
It may break the game log between Joe and myself, but hopefully the change will fix the problem with the circled question marks appearing after Black/Blue makes his turns - and also show that it's Joe's turns to move (instead of always mine as White) if we try another game where I take White again.
Yes, it may break your game, but it definitely will not fix your problem. Using different color names in Sides will not change the actual color of pieces.
I tried a game with Joe Joyce, but after my first move as White the pieces all turned to question marks:
There is an inconsistency in your preset. On the one hand, you are using the alfaerie-many set, whose images are all .gif files, but on the other hand, you have this code in your preset:
set mypieces assoc
P "wpawn.png" p "bpawn.png"
B "wbishop.png" b "bbishop.png"
R "wrook.png" r "brook.png"
A "wram.png" a "bram.png"
F "wbutterfly.png" f "bbutterfly.png"
C "wcamelbishop.png" c "bcamelbishop.png"
K "wking.png" k "bking.png";
setsystem dir "/graphics.dir/alfaeriePNG/";
setsystem pieces #mypieces;
The result of this inconsistency is that it is looking for .gif images in the /graphics.dir/alfaeriePNG/ directory, which has only .png images in it. So, the file names it is contructing do not match any actual image files, and it is replacing them with the question mark, which means the requested image file could not be found.
Although I came up with the idea, defining custom piece sets in your code is a very bad idea, and I do not recommend anyone do it. Just rely on your specified piece set and use aliases if the piece labels used by the set do not already match the notation you want to use.
The GAME code generated by the Applet does not in any way refer to the color names; it distinguishes the players through a variable with the values true or false, and the color of the pieces by their labels being upper or lower case. So whatever problem you have there must be a result of some general GC behavior.
I've never payed attention to the Sides field. It has nothing to do with piece images. Pieces not showing up in edit mode is due to the starting array including piece labels that aren't in the selected piece set.
A coincidence? Carlos Cetina's Cetran Chess 3 Applet generated preset (linked to from his Cetran Chess 2 Rules Page) also uses 'White Blue' instead of 'White Black' for the 'Sides', as can be seen when viewed in edit mode for that. Oddly(?) Carlos' non-rules enforcing preset1 for Hexajedrez uses 'White Black' (the default colours for 'Sides' in edit mode, left unchanged - the second player's army in that preset is Blue with the Piece Set selected).
[edit:Note that editor Ben made a rules enforcing preset for Raumschach, that used a Blue army for the second player, and he left the 'Sides' as 'White Black' in the preset's edit mode - however, he did not use the Applet to generate the preset.]
edit2: Looks like my theory may be dashed - Vitya Makov made a Rules enforcing preset generated by the Applet: Cool Camels vs. Fabulous FIDEs. The Piece Set has the second player with a Blue army, and Vitya left the 'Sides' as 'White Black' in edit mode. Works okay in Move mode, at the least. The only caveat might be that in edit mode, the blue army shows up correctly, in spite of a complex Game Courier FEN including {} bracketing for 2+ letter long abbreviations for many of the Black piece types (White being FIDE army using just one letter per standard piece type).
[edit3: My theory looks dashed now - arx (Daniel Zacharias) made an Applet generated rules enforcing preset for Tigrey, with second player having Blue army - arx left 'Sides' as 'White Black' in edit mode - also in that mode, some of the pieces don't show up properly (black circles), in spite of (apparently Applet generated) one letter symbols representing all pieces in the FEN. That preset seems to work, in Move mode at the least.]
Do you think it's worth changing the preset's 'Sides' to 'White Blue' from 'White Black'?
It may break the game log between Joe and myself, but hopefully the change will fix the problem with the circled question marks appearing after Black/Blue makes his turns - and also show that it's Joe's turns to move (instead of always mine as White) if we try another game where I take White again.
In the diagram in Edit mode, the wrong pieces are showing for both sides (e.g. Cannons instead of Caliphs for C; edit2: however, in Playtester's Frog Chess enforced, falcons show instead of frogs when in edit mode);
This is a general problem with defining the piece images through GAME code, as you are doing here in the last part of the Pre-Game section: Game Courier then only knows which images you requested when it executes the GAME code. Which it only does when you are playing. Not while you are editing.
The alternative is not to copy these image definitions that the Applet suggests to the Pre-Game section, but rely on the piece set you selected in Game Courier when making the preset, and make sure you use the same piece IDs in the Interactive Diagram you convert as used in the selected piece set.
I've looked at the enforced Settings File for Butterfly Chess and I've noticed two things that might matter:
-
In the diagram in Edit mode, the wrong pieces are showing for both sides (e.g. Cannons instead of Caliphs for C; edit2: however, in Playtester's Frog Chess enforced, falcons show instead of frogs when in edit mode - he used a different piece set than my non-enforced Frog Chess/Butterfly Chess);
-
In the 'sides' in Edit mode, I still have 'White Black' instead of 'White Blue' (as Playtester did for his rules enforcing preset for Frog Chess, as made with Applet assistance). Don't know if that matters, but in my non-rules enforcing preset for Frog Chess, I had the sides as 'White Black' (it is similar story for the Falcon Chess preset when that is in edit mode).
[edit: in the game log I posted, my name always shows to move at each turn, even though Joe is given as one of the players - hopefully my earlier deleted game against myself did not foul things up.]
Joe moved again, with Black at move two (apparently forced to!) so I'm going to stop moving now, in the buggy preset's log in question.
[edit: when I inserted code from the Applet into my aspiring enforcing preset, there was no instruction on where to insert 'Additional Pre-Game Code' that had been generated by the Applet. So, I just pasted it (after a blank line I made) onto the tail-end of the lengthy preliminary Pre-Game code that I had first pasted into the preset from the Applet. Don't know if that could cause a bug(s).]
@ H.G.:
Could the copying mystery have anything to do with the bug in the preset that I made yesterday (see my game log with Joe Joyce, in my previous post in this thread)?
[edit: My opponent moved at turn one anyway with Black, and I saw all the pieces normally. After my second turn with White the question marks re-appeared. I told Joe not to move in a comment if he saw that again (apparently it did transpire).]
Mysterious. Copying from texts on a web page is always tricky. It could be a difference between the browser or operating system. I was using FireFox on Windows.
That it gives the error message means it does not recognize the first word as 'files'. Apparently there is some invisible layout instruction prefixed to it by the copying process. If I knew what it was I could make the Diagram resistant to it. It is likely a HTML tag (perhaps <pre> to indicate it was unformatted text). So perhaps I should strip everything up to and including the first > from any line that starts with < before trying to recognize the keyword.
I've now made a rules enforcing preset for my Butterfly Chess CV, using the Applet (pasting Haru's altered lines, as described in my previous post).
I noticed the pieces become circled question marks after I make a legal first move for White with the mouse in Move mode for the preset - with Play mode I don't have that trouble, and several legal moves I tried in a row passed, as indicated beforehand by mouse clicks. I suppose every Applet generated preset would have that quirk, at least currently.
I'll try playing a game log of enforced Butterfly Chess against myself to test it, then delete the log if no issues with legal moves being allowed for either side. [edit: after I played a first move as White all the pieces turned to question marks again (as if in Move mode?) - then the preset asked me to make a move again right then, for Black it seems. So I resigned, then deleted the log. Again may be quirks of all Applet generated presets. I'll now issue someone a personal invitation, to test further.]
https://www.chessvariants.com/play/pbm/play.php?game=Butterfly+Chess&settings=enforced
edit2: I tried a game with Joe Joyce, but after my first move as White the pieces all turned to question marks:
edit3: On 13-1-2024 this game log has been deleted by me, after the preset in the first link was edited by me well beforehand.
25 comments displayed
Permalink to the exact comments currently displayed.
The author, Kevin Pacey, has updated this page.