Comments/Ratings for a Single Item
Updated !
Is it Better now?
Much better.
The only improvements I can think of are reintroducing the 3d pieces, naming the game Chu Seireigi instead of Chu Seireigi Shogi (for the same reasons as with normal Seireigi), and maybe having the hand spaces all colored solid brown. But for the latter the wood is colored similarly enough that it doesn't really matter whether you do it or not.
Also, could you update that SVG for the laser cutter? I might want to make a plywood set in the future. But for now, the cutouts I made will do.
I've updated the title and will try to update the svg a little later, I'll be a little less available.
Bringing back the kanjis would be interesting to give a Japanese aesthetic, but I feel that to play a mnemonic skin would be a better alternative from my point of view.
The 3d pieces are back. here the seireigis and hectochess updated.
I saw that the wa shogi was also a medium shogi with drops having a running rabbit (FfRbW) and a Treacherous fox(FAvWvD).
I was surprised that they didn't have the same movements. I wondered whether a different adjective might be better to distinguish them: e.g. cunning fox and vigilant rabbit, Same for the whale with chu shogi.
I saw you added the 3d Kanjis back to Chu Seireigi. I went through and tested everything, and here are the errors I found
Incorrect 3d Kanji Readings
- Unpromoted Great Leopard (should say 大豹)
- Promoted Knight (should say 天馬)
- Promoted Silver (should say 走狼)
Other
- Promoted Lance, Gold seem to crash/softlock the game
- Promoted Copper General (大豹), Promoted Running Wolf (奔猪) assets doesn't load
- Promoted Kirin (角行), Promoted Phoenix (飛車) indistinguishable from unpromoted counterparts (kanji should be colored red)
P.S.
I was surprised that they didn't have the same movements. I wondered whether a different adjective might be better to distinguish them: e.g. cunning fox and vigilant rabbit, Same for the whale with chu shogi.
That was because I found the Wa Running Rabbit to be too similar to the Lance, and knew that it would add too much defense after testing with the Old Kite. So I gave the Running Rabbit the ranging moves from its Taikyoku counterpart while omitting the stepping moves. The reason it has the same name as the Wa Running Rabbit is because it is one of only two Taikyoku pieces to be a rabbit, and I thought the running kanji fit better. As for the whale, its backward bias was a problem, so I replaced that move with the current one.
I made some corrections.
ctrl+f5 : may help to reload scripts in case of cache issues
Here are the errors I didn't find before or are new:
Incorrect 3d Kanji Readings (all should be colored red)
- Promoted Lance (should say 奔虎)
- Promoted Gold General (should say 大象)
- Promoted Kirin (should say 角行)
- Promoted Phoenix (should say 飛車)
I hope it's ok now
Looks like everything works properly.
Can you send me the updated files for Seireigi and Chu Seireigi (I have already taken care of Hectochess)?
Thanks.
Note that it is possible to control the way the captured pieces are placed next to the board by defining arrays Model.Game.handLayout[color][handIndex]. This array should contain the square numbers where you want the first captured piece of the given color (1 or -1) and hand value to be placed. (A second piece will be placed at sqr+color, and after that counters will appear between the two shown pieces.)
Currently the default assignment is used, which places the white pieces on the first 'file' on the right of the board, the hand number equal to the rank number (which starts at 0). By defining a handLayout you could also use the ranks under or above the board to place pieces, thus requiring fewer extra ranks.
E.g. with a single extra rank (instead of the 4 you have now) you could place 6 white pieces below the board, and 14 white pieces to the right of the board.
It's good to know that you can use the bottom squares for that. Does it mean that we have to specify something like Model.Game.handLayout[1][{2:18,4:17}]; // eg : square 2, hand 18 for the white for each piecetype?
No, you have to write something like
Model.Game.handLayout[1] = [0,2,4,6,8,10,12,14,30,46,62,...];
if you want the first 8 'hand squares' for white to be at the bottom, and the rest along the right edge.
I gave it a try here. I think It looks better this way.
@Adam: apart from the adjustments linked to the changes, what do you think?
I guess the drop model still needs some tweeking. The square painting on the hand ranks should be the same as that of the other hand squares. Now there seems to be no coloring at all, so that the rim texture shines through. I suppose the logical way to do this is that the square-painting array that has to be defined in the game's view file should include the extra ranks.
It is also not clear to me why the 'counter piece' in the lower-right corner is larger than the others.
[Edit] The array boardLayout defined in the view file is accessed in two places in grid-board-view.js, inside nested loops over rows and columns. The loop over rows was modified to skip the extra hand ranks. I suppose this was a bad idea; especially in the 'paintCells' function it should have run over all ranks, requiring the boardLayout to also specify how the cells in these extra hand ranks should be colored. There is a second routine 'paintInCoordinates' that also loops over all cells, which does more complex things and might need more subtle modification than just changing the loop limits. But it seems this function is not normally used.
The handLayout[-1] in the view file appears to have a 16 where there should be a 17, which causes misplacement of the 'counter piece' on 15 rather than 16.
The change in paintCells was necessary because the grid wouldn’t display. May be that a better modification is possible, but I don't think I'm in a position to make it.
After a few modifications, current result
I don't know if you'd like to have a look at sources : latest to check grid-board-view.js
Your current setup for this game looks way better, but I did notice a few errors were made while making the new version. I also noticed a bug in the Hectochess implementation.
---------------------
Chu Seireigi Setup Errors
---------------------
White Kirin and Phoenix are swapped from where they should be in the initial setup
Black King and Great Elephant are swapped from where they should be in the initial setup
---------------------
Chu Seireigi Promotion/Drop Errors
---------------------
Pawn, Lance, Running Rabbit, Knight, Gold General, and Great Elephant are currently allowed to promote immediately if they are dropped into the promotion zone (this should not be the case)
White Copper General is put in same place as Black Lion in hand spaces, resulting in the hand space setup looking asymmetrical (White Copper General should be placed between the Great Elephant and Running Wolf)
(Also, because of this bug, a "King" may sometimes appear in current hand space of extra White Copper Generals/Black Lions for some reason...though this thankfully doesn't affect anything)
---------------------
Hectochess Castling Error
---------------------
When attempting to castle, the Champion's starting squares (b2/b9 and i2/i9) and queenside Knight starting squares (c2/c9) are not checked to see whether a piece is occupying them or not.
I think that all that is needed is to make the 'row' loop run from 0 to NBROWS, and remove the -NBVHND from
this.cbView.boardLayout[NBROWS-NBVHND-row-1][col]
And then putting the extra hand ranks in the boardLayout defined in the game's view file. I don't think there are any other games yet that use extra hand ranks. I implemented that feature with Wa Shogi in mind.
The paintCells function is not involved in drawing the grid.
I had already looked at the sources, by looking at the chu-seireigi-view.js of the compiled version. Since you build Jocly without uglification all used source files are in there unmodified.
In that case : I get in 2d with pictos
Would this come from using the draw function wrongly in my view : chu-seireigi-view.js ?
Note that I have the impression that with the modified version the result is satisfactory with or without extra hand ranks.
That's why I'd like your opinion on grid-board-view.js, because I thought it would be useful to transfer this modification to the pullreq branch for jocly.
If you'd like to make an implementation of wa shogi, here are some unused jocly-compatible sprites that might come in handy.
To be seen if useful
This sounds like an out-of-bounds access on boardLayout. Are you sure you defined that array with sufficiently many ranks? To further diagnose the problem you could add console.log(NBROWS-row-1); just before the access to boardLayout in paintCells; then you could see in the console what the offending value is.
the array length is 19
NBROWS-row-1,row: 13, 0
Strange. 13 should be a valid index for an array of length 19. That means the array should have some internal elements that are undefined. What happens if you print
console.log(
)?25 comments displayed
Permalink to the exact comments currently displayed.
The forced promotion issue is fixed for White's forward-only pieces (Pawn, Lance, Ram's-Head Soldier, Running Rabbit, Knight, Flying Swallow) but not for Black's.