Check out Atomic Chess, our featured variant for November, 2024.


[ Help | Earliest Comments | Latest Comments ]
[ List All Subjects of Discussion | Create New Subject of Discussion ]
[ List Earliest Comments Only For Pages | Games | Rated Pages | Rated Games | Subjects of Discussion ]

Comments/Ratings for a Single Item

Earlier Reverse Order LaterLatest
Play Chess Variants with Jocly. Missing description[All Comments] [Add Comment or Rating]
🕸Fergus Duniho wrote on Sat, Mar 25, 2023 08:38 PM UTC:

I renamed the malett-chess* files to mallett-chess*, including in the control.php script, but I think it's still expecting the old name, because /play/jocly/mallett-chess does not load the game. Is there anything else I can change to get this to work?


H. G. Muller wrote on Mon, Mar 27, 2023 02:48 PM UTC in reply to Fergus Duniho from Sat Mar 25 08:38 PM:

I renamed the malett-chess* files to mallett-chess*, including in the control.php script, but I think it's still expecting the old name, because /play/jocly/mallett-chess does not load the game. Is there anything else I can change to get this to work?

In the Jocly tree there is a file dist/browser/jocly-allgames.js . I think Jocly learns from there what games it supports and where to find their model and view files. As far as I could determine only the model and view files in the /dist/browser/games/ sub-tree are needed for playing a game on-line; the files in the /src sub-tree are only used when you compile Jocly. (Which then creates the /dist sub-tree, where the model and view files are (uglified) concatenations of the source files that are specified in the model and view parts of the index.js file of the game 'module'.) For chess variants the model always includes the base-model.js.


🕸Fergus Duniho wrote on Mon, Mar 27, 2023 04:12 PM UTC in reply to H. G. Muller from 02:48 PM:

That has worked, though it is still calling the game Malett Chess when it loads. I tried to fix this by changing the name in mallett-chess-config.js, but the misspelling remained even after I purged this file from the cache.


H. G. Muller wrote on Mon, Mar 27, 2023 08:21 PM UTC in reply to Fergus Duniho from 04:12 PM:

I am not sure where Jocly gets the name from that it displays. One would indeed assume that it is from the *-config.js files, as these files must serve some purpose. (They are created on compilation of the source files, from data that is in the index.js file of the 'module' they belong in.)

Which cache did you clear? Your browser's, or CloudFlare? For Jocly the normal method of clearing the browser cache (Shift + load) does not work. I guess this is because the browser then only refetches the files linked to directly from the main HTML document. Jocly seems to fetch the variant-specific .js files only on command of the JavaScript in the 'core' files, once that starts running afterwards. Surfing to the changed .js file, and reloading that explicitly, should bring the latest version at CloudFlare into the browser cache, so Jocly would then use that if you restart it. (And it would allow you to directly check if the intended changes are indeed present.) Adding a ?nocache=true suffix when loading the changed .js file does not help, as the browser would consider that a different file than the one without the suffix (which is the one Jocly would use), and keep both cached.

BTW, there are still many occurrences of Malett with a single 'l' in the *-config.js file. I am not sure whether that will hurt. Some of the info in this file seems unused.


🕸Fergus Duniho wrote on Mon, Mar 27, 2023 09:16 PM UTC in reply to H. G. Muller from 08:21 PM:

Which cache did you clear? Your browser's, or CloudFlare?

CloudFlare's. I just loaded it in Vivaldi, which is not the browser I was using before, and it used the correct spelling. So, it is working correctly now, and it was still showing the wrong spelling due to using the browser cache.


🕸Fergus Duniho wrote on Thu, Mar 30, 2023 09:14 PM UTC:

So far, I have not been able to get Shako to work on Jocly. Here's the URL:

https://www.chessvariants.com/play/jocly/shako

In control.php, I have the string shako replaced by shako-chess, which the files for running it use. Also, https://www.chessvariants.com/play/jocly/shako-chess is not working any better.

I've noticed some different things about Shako. First, there is a folder called originalShako, and Shako is the only game with such a folder. Second, there is a Shako file called shako-chess-mxdel.js, and it is the only file matching the *mxdel* wildcard.

This is not a general problem with Jocly. Other games are working. I have tried multiple browsers, these being Firefox, Edge, and Waterfox.

H.G., would you know what's going on and how to fix this?


H. G. Muller wrote on Fri, Mar 31, 2023 07:35 AM UTC in reply to Fergus Duniho from Thu Mar 30 09:14 PM:

I've noticed some different things about Shako. First, there is a folder called originalShako, and Shako is the only game with such a folder. Second, there is a Shako file called shako-chess-mxdel.js, and it is the only file matching the *mxdel* wildcard.

Definitely something wrong there, and considering the 'modified' date probably of my doing. It seems the file was moved 'out of the way' by changing an o into an x. I don't recall doing this, but I was probably experimenting for how to hack new games directly into the Jocly library, to discover which files it actualy used for running by removing those and try what would break.

The curious thing is that in the Jocly install on my website the name is shako-chess-model.js. The date is exactly the same, though. (And just a few days before I implemented my first game, Team-Mate Chess.) I must have renamed it after the jocly/dist/ sub-tree was copied to CVP.

The problem is that the content of that file is also not what it is supposed to be. It is not uglified, and looks like the source file jocly/src/games/chessbase/shako-model.js. Normally the files jocly/dist/browser/games/chessbase/*-chess-model.js are a concatenation of the base-model.js, the variant-specific model file and perhaps some others, and then uglified. The uglification is probably not essential (the hack I used for implementing my games was to replace the uglified variant-specific part from such a file for a similar game by source code of my own game, but it needs to contain the base-model.js code to work.

Problem is that I cannot find the original uglified shako-chess-model.js file anywhere amongst my files. I tried to put back this file (on my own website) from a recently compiled Jocly from the back-porting project, but apparently the base-model.js file there is no longer sufficiently compatible with the old one for this to work. Unfortunately I forgot from where I clopied the Jocly version on my website, otherwise I could fetch a shako-chess-model.js file from there. Perhaps Zied still has a version on the Musketeer Chess website.

[Edit] I now managed to find a shako-chess-model.js file in the Downloads folder of one of my Windows systems. When I put that in the Jocly install on my website (and go through the cumbersome procedure of flushing the cached version), Shako works again there. The file is probably the same as that in the originalShako directory (where all files do have the same date). This directory does not exist in the Jocly install on my website, though. So I have no idea how it got created on CVP, which (at least for the jocly/dist/ part) was supposed to be a copy of that. It looks like someone copied all shako-* files on CVP to this directory, and then renamed the shako-chess-model.js. Anyway, I copied the shako-chess-model.js file now back to the chessbase folder on CVP as well. This should fix the problem if nothing else was changed.


🕸Fergus Duniho wrote on Tue, Apr 4, 2023 03:25 PM UTC in reply to H. G. Muller from Fri Mar 31 07:35 AM:

I got Shako working by redirecting it to the originalShako directory. I'm currently having trouble getting Rollerball Chess to work. The link is

https://www.chessvariants.com/play/jocly/rollerball-chess


H. G. Muller wrote on Tue, Apr 4, 2023 03:41 PM UTC in reply to Fergus Duniho from 03:25 PM:

Well, Shako was already working after I put the original shako-chess-model.js file back.

Rollerball also seems to have model and view source files where there should have been uglified library files, in my directory. I will have a look to see if I can find the originals.

[Edit] OK, done. I uploaded the originals, but to make those available the CloudFlare cache will have to be flushed, and the model and view files have to be loaded directly with cache flushing in the browser.


A. M. DeWitt wrote on Fri, Jan 26 03:18 PM UTC:

François Houdebert has some Shogi piece maps for his Jocly implementations that actually work better than the ones currently in use on this site (except for Tori Shogi apparently). Perhaps we can use those for their respective games?


François Houdebert wrote on Fri, Jan 26 06:03 PM UTC in reply to A. M. DeWitt from 03:18 PM:

These skins are a proposal to that purpose.

The first step would be to fix the visuals for chu shogi (lateral mover as in minjiku?, tiger ...).

Then we could add skins according to usage: western, mnemonic...
It is made of png (100x100px).

For tori I made tries but it wasn't good enough.


François Houdebert wrote on Thu, Feb 1 08:23 AM UTC:

Joclymatch :

Jerôme has updated his joclymatch page with the latest jocly release. It's a handy page that lets you see the rules in the language of your choice and play human against human.

I'm going to send him Seireigi shogi, Kyoto shogi and Tumurid chessvariant and some missing translations. I didn't dare send the others variants for which I proposed a translation without knowing if you'd be interested - I'm thinking in particular of minjiku, werewolf, spartan, shogi and mini shogi. Let me know if you'd like me to send them too.


H. G. Muller wrote on Thu, Feb 1 09:05 AM UTC in reply to François Houdebert from 08:23 AM:

Yes, I am interested. But would these work on his version of Jocly? They rely on the drop-model and fairy-model extensions.


François Houdebert wrote on Thu, Feb 1 09:15 AM UTC in reply to H. G. Muller from 09:05 AM:

Yes, I'm going to send him my complete compiled shogivar branch, which I'm trying to keep close to our pull request, just commenting in index.js on the games we've yet to complete, such as Team-Mate Chess: Scirocoo, chu shogi, ...

He'll have the choice of using the new dist directory, adding to his own or linking to the old and new ones.

I share the dist in case you want to add a 2nd jocly in chessvariant to link to minjiku or werewolf ... fom the play jocly page more easily.

 


François Houdebert wrote on Fri, Feb 2 08:35 AM UTC in reply to H. G. Muller from Thu Feb 1 09:05 AM:

Jerome started trying to integrate new variants (OK gigachessII, KO pemba : with message "JocGame.LetsTwist is not a function" in ZobristInit)

Due to lack of time, he finally preferred to open the joclymatch (Sources - Doc).

Therefore He lets us set it up on our own.

I started trying to use it. It's handy for browsing and consulting rules. There's still a hard problem to fix on the create match. I'll have to look into it.


H. G. Muller wrote on Fri, Feb 2 09:18 AM UTC in reply to François Houdebert from 08:35 AM:

The second commit in the pullreq branch created this function LetsTwist in the Jocly core, to make the Mersenne twister random function that was already there available for calling from base-model. The latter uses it for creating a table of Zobrist base keys for the corrected repetition detection.


François Houdebert wrote on Fri, Feb 2 09:41 AM UTC in reply to H. G. Muller from 09:18 AM:

Does this mean that we have to add modifications from src/core/jocly.game.js to src/browser/*.js?

His code use dist/browser/jocly.js. This part is not clear for me yet.


H. G. Muller wrote on Fri, Feb 2 09:58 AM UTC in reply to François Houdebert from 09:41 AM:

It seems the modification ends up in jocly/dist/browser/jocly.game.js, so replacing that by ours should fix the problem. I think this is the only change I had to make in the Jocly core; all the rest could be handled in chessbase.


François Houdebert wrote on Fri, Feb 2 10:02 AM UTC in reply to H. G. Muller from 09:58 AM:

it seems to work : https://biscandine.fr/variantes/joclymatch/


A. M. DeWitt wrote on Mon, Feb 5 04:18 PM UTC:

François Houdebert managed to fix the Shogi Two Pawns bug (where a Tokin capture on a file allowed more than one Pawn to be dropped on that file) in his Jocly implementation of Seireigi.

@François Houdebert,

What did you do to fix that bug in the Seireigi implementation? Please let H. G. Muller know so we can get it fixed for Shogi and Mini Shogi, as both have the same bug. If you guys have already fixed it, we can ask Fergus to flush the server cache.

Also, if you guys decide to copy the Seireigi Shogi implementaton over to the Chess Variant Pages, I would prefer it to simply be named Seireigi for consistency reasons, but the current name works as well.


François Houdebert wrote on Mon, Feb 5 04:52 PM UTC in reply to A. M. DeWitt from 04:18 PM:

I just followed HG's recommendation to swap 2 lines: so it's not really fixed yet on the Jocly branch, only on a test branch.

We'll have to get back to work on improving our pull request when HGM is available for that. I've made a todo list of the remaining topics. I can make myself available for that at this time. I've noted the name change to seireigi. What summary (one line description) would you like instead of "Spirit shogi variant"  : shogi with different promotions ?

If you'd like me to compile a set of new variants for the CVP site, I can do that, it could be a handy way to deploy new variants, change links to a 2nd jocly (remove variant on the first should be easier).

 


H. G. Muller wrote on Mon, Feb 5 05:40 PM UTC in reply to François Houdebert from 04:52 PM:

Well, I just came back from Gran Canaria last night, so I can now do everything that required my PC again, including accessing my Linux VM with the Jocly code.


François Houdebert wrote on Mon, Feb 5 05:54 PM UTC in reply to H. G. Muller from 05:40 PM:

It must be a nice trip this time of year.

Don't hesitate to take what you think is useful on the shogivars branch, if you use the western skins for shogi, don't hesitate to turn the black generals, I turned them but it's not necessarily better!


A. M. DeWitt wrote on Mon, Feb 5 06:41 PM UTC in reply to François Houdebert from 04:52 PM:

I just followed HG's recommendation to swap 2 lines: so it's not really fixed yet on the Jocly branch, only on a test branch.

Sure, but it is a start.

We'll have to get back to work on improving our pull request when HGM is available for that. I've made a todo list of the remaining topics. I can make myself available for that at this time. I've noted the name change to seireigi. What summary (one line description) would you like instead of "Spirit shogi variant"  : shogi with different promotions ?

The current description is nice and minimalistic, but I think "Shogi with more varied promotions" would work better for the average player.

If you'd like me to compile a set of new variants for the CVP site, I can do that, it could be a handy way to deploy new variants, change links to a 2nd jocly (remove variant on the first should be easier).

We can at least import your Seireigi implementation to the site. That way I can have a link to that implementaton at the top of Seireigi's Rules page (For now it is in Other Options for Computer Play under Notes).

Oh, and while you are at it, you might as well import your graphics for the other Shogi variants as well (Shogi, Chu Shogi, Tenjiku Shogi), so that the graphics on this site are more user-friendly.


François Houdebert wrote on Mon, Feb 5 07:17 PM UTC in reply to A. M. DeWitt from 06:41 PM:

Here's an install link to Shogi, seireigi, kyoto, mini, but note that this may change soon.

For the record, I tested the feasibility with chu seireigi but couldn't make the lion/eagle and falcon moves correctly. But it's still interesting to see what it could become.

I haven't heard of Hectochess yet, but I'll look into it.


25 comments displayed

Earlier Reverse Order LaterLatest

Permalink to the exact comments currently displayed.