Comments/Ratings for a Single Item
If you really want to lean into that, you could borrow some pieces from Scheherazade and/or Desert Dust. But if you go that route, make only the Pawns explosive.
Same kind of idea in atomic chess
So, I am back from the Nobel prize festivities in Stockholm. Here is a picture of professor Agostini's lecture for the physics prize in the Aula Magna, where he presents his 'winning team':
Any idea from where he got my picture? ;-)
As a long-time theater person*, I had to read your text to understand what this was...
Congratulations again on your honor.
*On one occasion, while I was at my local library near closing, I heard an attendant announce, "The library closes in fifteen minutes." I reflexively and dutifully responded, "Thank you, fifteen" (just as a cast member would when the stage manage announces the time until curtain).
I don't understand what you guys are talking about! But I think I would if I 'd would!
I guess Bob was triggered by the word 'actors' in the slide. The picture is a screenshot from this years lecture on this year's Nobel prize for physics, last Friday, at 1:08:48 into the video.
I guess Bob was triggered by the word 'actors' in the slide.
Yes, quite so. I'm aware of how that has a very different meaning in your context, but at first glance I thought you'd been in a short film or something.
Words having different meaning in different contexts can lead to a lot of humor. I once wrote a six-minute skit around the word "check," and the chess context was about the only one I couldn't fit in. Then there's when I was learning to sew, and saw instructions to baste the edge of a piece (meaning, in that context, to sew some stitches in that piece of fabric by itself to keep its curved edge from warping while it's being sewn to another piece -- and not to brush it down with gravy).
VERY IMPRESSIVE! Congratulations H.G., you should be very proud to have participated to this adventure. I am also "connected" to physics, although much less fundamental and more applied, but still stories of electrons and photons. I am fascinated by modern physics, both the infinite small and the infinite big.
This presentation should have been a great moment for you. And it lasted many many attoseconds. I was amazed to realized that they are more attoseconds in 1 second than the number of seconds since the birth of the universe.
Well. Listening to part of Prof. Agostini, I understand that you MUST create a new fairy piece: the RABBITT. Bravo, again.
Well. Listening to part of Prof. Agostini, I understand that you MUST create a new fairy piece: the RABBITT. Bravo, again.
I already did a Rabbit. :)
It doesn't count
I just watched the first half of the lecture. This is exactly something that can be characterised as being beyond cool.
Congratulations HG!
Congratulations indeed!
Hello HG, I am trying to contact you privately, on any email. I tried finding an address on hgm.nubati.net, but I'm told that the connection is not secure. How do I send you an email?
Hello!
I require a bit of help. I have sent you an email on a private address. I'm not sure if you noticed it.
Hello, HG!
As I have said earlier I require a bit of help. I have sent you an email on a private address. I'm not sure if you noticed it.
As I have said earlier I require a bit of help. I have sent you an email on a private address. I'm not sure if you noticed it.
I think I found the problem. As you pointed out, it was imitating his own moves rather than those of the user. This used to work correctly before, but with the addition of the function newClick to get a more powerful move-entry interface, this was broken. Because the type to imitates was set in a MakeMove function that was replaced by newClick; and I had not thought of doing this in newClick. (Because that used the AI's function for making moves, which does keep track of the imitated type already. But it tracked this in another variable, 'imi' instead of 'imitatedType', and for a new move the latter is used to initialize imi.
It should work now both in betza.js and betzaNew.js. (Flush browser cache!)
This is great news. Thank you HG!
I copied the 3d files from the tiger, I thought they might be useful for the chu shogi.
How do you see the next step for jocly?
Do you think a first pull request could be made on Saturday even if some of some variants are commented in the index.js file?
That would give Michel a chance to have a look before he leaves and have a lot of your worked integrated in the master.
We could explain to them that a 2nd pull request will follow and that they need to wait for it before making a new jocly release. Tell me how you want to proceed.
How do you see the next step for jocly?
Do you think a first pull request could be made on Saturday even if some of some variants are commented in the index.js file?
I am working on reordering everything we have in a new branch 'pullreq', which I already pushed to my repository. (Don't start adding to it! I am still not finished re-organizing, and when I make more progress I will overwrite what is there now with a forced push.) Here I moved all commits that worked on the same issue next to each other, and squashed them into a single commit, basically deleting all incomplete and often buggy intermediates out of git. I also try to order it such that lowest-level changes come first, so that there is more freedom to move higher-level changes that rely on them around. So first come changes to the Jocly core, then base-model & view, then the sub-models, then fairy-set-view and piece images, then game definitions. Up to the sub-models (multi-leg-view, fairy-move-model, drop-model & view) this now seems completed, and I think that anything up to where we start moving things in sub-directories everything would be fit for pushing. (I might still want to refactor Elven Chess and Werewolf Chess to use fairy-move-model, though.) The moving itself still seems a bit chaotic, so perhaps we should leave that for later. I am still working on it, so I don't know how much I can still achieve before Saturday.
There should be no need to comment out things in index; what is there in principle grows synchronously with the addition of new game models and views, and we just make a pull request for the branch up to a certain point. I think the most important thing is to get all infra-structure that new games want to draw on pushed now.
OK I wait for your branch.
I made a branch shogivars on my side on which I squashed branch trial, Because you are right some conflicts were not properly marqued as resolved. In case it helps :
https://github.com/fhoudebert/jocly/tree/shogivars/
Note that on github you can squash everything during the pull request resulting in one commit compliant with the master.
Note that on github you can squash everything during the pull request resulting in one commit compliant with the master.
I did not know that. But I think for importing a branch with changes in so many completely different areas this would be a bad idea. For committing a single game that took many iterations it would be great.
It is a pity I did not think of this before:
I now wrote a function cbSymmetricGraph(geometry,specs,confine), which seems very generally useful. It generates moves for a totally symmetric piece (on a grid board), according to an array 'specs'. In principle everything it does can be done with the aid of the existing functions cbShort/LongRangeGraph. Which even can do asymmetric pieces. (Which outside of Shogi virtually never occur...) But the price for that is that you often have to call it with long lists of 'deltas'. This is not only annoying and makes the source code look cluttered, but also a frequent source of bugs. And then you have to use cbMergeGraphs to combine moves that could not be generated at once, because they had different range or flags.
This cbSymmetricGraph takes an array of numbers, where each number represents either a new flags setting to be applied to the moves that follow, or code for direction and range of a move. (Because all flags are > 65000 it can easily spot the difference.) Each symmetric move set is indicated by a single integer: the units indicate the y-step, the decades the x-step, and any higher digits (optionally) the range (which by default is 1, for a leaper). So specs=[21] indicates all Knight moves. A preceding minus means unlimited range, so for a Queen we pass [-10,-11]. So sliders and leapers can be mixed; Archbishop results from [21,-11]. For a 'Short Rook' (Betza R4) we pass [410], but there we already enter the realm of things that are almost never needed.
Divergent pieces are also easy; mRcB would require [FLAG_MOVE,10,FLAG_CAPTURE,11]. This is potentially easier than having dedicated functions like cbCardinalGraph, where you would have to know that it is Cardinal, and not Archbishop or Palladin. And for the rarer pieces you would have to know whether a function exists for it in the first place. So I regret now that I have added so many named graph functions in fairy-move-model, which almost all could have been replaced by this cbSymmetricGraph. (For pieces like Pawn, Griffon and Unicorn dedicated functions still make sense.)
25 comments displayed
Permalink to the exact comments currently displayed.
I got an idea for a variant, but it is rather obvious, so I cannot imagine someone hasn't thought of it before. The variant is as orthodox chess, except that pieces do not capture by replacement, but can explode where they stand (which takes a turn), to destroy all adjacent pieces (friend or foe). I would call the variant 'Terrorissimo', as rather than warriors which jump their enemies to kill them in combat, all pieces are suicide bombers. It is not allowed to blow up your own King, even if this would take out the enemy King as well.