gaintpd / cutechess

Cute Chess is a graphical user interface, command-line interface and a library for playing chess. This Repo cantains the xiangqi, minixiangqi and manchu variant support
GNU General Public License v3.0
4 stars 3 forks source link

New authentic piece sets for Makruk and Sittuyin #3

Open notruck opened 4 years ago

notruck commented 4 years ago

Hi gaintpd! I learned from cjssh1002 about the new pieces to be displayed for Janggi and Xiangqi.

Similarly, will you please consider adding traditional boards/pieces for Makruk (Thai chess) and Sittuyin (Burmese chess) as well? Both variants are already supported in cutechess, and will only require cosmetic changes. They use non-checkered boards. The Sittuyin board also marks its long diagonals.

rnsmksnr_8_pppppppp_8_8_PPPPPPPP_8_RNSKMSNR(2)

The above is the Makruk piece set developed by @fulmene, and released under CC-BY-SA-4.0. Coming from a Thai player/designer's original effort to lend a more authentic look to the pychess-variants website, the boards and pieces should be pretty authentic in shapes/size/color.

The Sittuyin set below is by @CouchTomato87, also made initially for the same website, and released under CC-BY-4.0. He based the design on diagrams from the official Burmese Sittuyin rules booklet, and they also look quite authentic.

2r2r2_1k1ns3_1snfpppp_pppp4_4PPPP_PPPPFS2_2SNNK2_1R1R4

Thank you!

Makruk2.svg by fulmene: https://github.com/gbtami/pychess-variants/blob/master/static/images/board/makruk2.svg

Sittuyin board by gbtami: https://github.com/gbtami/pychess-variants/blob/master/static/images/board/sittuyin.svg

CouchTomato's Sittuyin pieces in svg: https://github.com/gbtami/pychess-variants/tree/master/static/images/pieces/sittuyin/original

Fulmene's Makruk pieces in svg: https://github.com/gbtami/pychess-variants/tree/master/static/images/pieces/makruk/ada (This dir contains red pieces as well as the "flipped" wF/rF/bF graphics to represent promoted makruk pawns on the pychess website. The wP/bP are the regular pawns)

gaintpd commented 4 years ago

Hello notruck, the regional favor board for Makruk and Sittuyin is not a unimplementable feature. I am very curious about how you get the Xiangqi and Janggi board I painted in the process of implementation of them from cjssh1002. I think cjssh1002 do the right thing to tell you about it as the cutechess is open source project, which encourages everybody who love chess and/or the chess variant to get access to it.

I add an parameter to the Graphicsboard class that makes painting various board possible. As to the regional favor pieces, in fact there need some additional modification to the piece which is not central symmetric, the modification to these kind piece should be performed which make its displayed center be coincident to the square center.

Another problem is that if the different size of the piece which should be displayed the margin should be added to the original designed piece, if not the displayed pieces will be identical sized when displayed on the board as the auto-scaling feature to fit the square size of the current design. Just like the pieces displayed on the Janggi board, though it is designed in different size, but the auto scaling feature the cutechess owned makes it identical sized on the board, the modification should be performed to take into the autoscale feature.

From the above discussion, we can say that the pieces of Sittuyin will have very good display effect, it is almost identical to the board in the above picture. But the Makruk is not the case without the modification to the non center symmetric pieces.

As far as now, I am not skilled at graphics design, I did not have the ability to do the desired modification to the pieces that achieve the best display effect of Makruk.

I will paint the Makruk and Sittuyin regional favor board when I have time and open a pull request to the official repo to avoid the fragile development of cutechess.

notruck commented 4 years ago

Thanks for the detailed explanations! I didn't realize about the (auto)-scaling aspect at all. I'll ask Fulmene if the necessary modifications can be made for the Makruk pieces.

I learned about the Janggi developments in progress for cutechess , as cjssh1002 was testing and discussing some uci settings with the Fairy-Stockfish engine's author Fabian, on the pychess players discord server. I've already known about cutechess, having used it before for a number of the existing variants. As I expressed interest and excitement about the upcoming new features, they both kindly told me more about it, and readily provided the relevant links. Thanks to them, I have discovered this fork of cutechess. :grin:

gaintpd commented 4 years ago

I have finish the regional favor board painting in the cutechess. But all the pieces are deformed due to the auto-scaling, the modification to the pieces is needed.

Screenshot from 2020-06-20 21-48-41

gaintpd commented 4 years ago

Screenshot from 2020-06-20 22-11-59

notruck commented 4 years ago

Wow, thanks! The Makruk pieces fared better than I thought.

Those Sittuyin pieces are from @ka-hu btw. I think some were modifications of Couch Tomato's existing pieces, while others were made from scratch. They're also under CC-BY-4.0

But yeah, it seems all three sets could use some (re)scaling love. :grin:

gaintpd commented 4 years ago

Screenshot from 2020-06-20 22-42-48

This is the final effect after my adjust to the height and width ratio of every piece. It is far from perfect, but close to the picture you posted. If you have any suggestion, please feel free to point out, thank you, or I will open a pull request to the official repo

notruck commented 4 years ago

They look much better now. Thanks!

Could the grid lines be made a little bit thinner?

May I take a look at the current svg you have? Not that I know how to adjust them properly, but I'd like to see if there's anything I can try, as well as something the original artists might be able to help with.

But if the edits aren't trivial, maybe it's best to go ahead and open the official PR.

gaintpd commented 4 years ago

default.svg.zip Hello notruck, the svg file is here, the grid line I think is just good, if it is thinner than the present width, the effect are not very good, but you can modify the line width in the code directly based on your favorite.

notruck commented 4 years ago

Alright, let's go with the current grid line widths then. Just one more thing, the Sittuyin knights seemed to look better in the earlier screenshots. Should we revert them?

gaintpd commented 4 years ago

The answer is definitely yes, I have uploaded the svg file in the previous post, you can modify it in your favorite way. But I guess that you also prefer to adjust the height and width ratio of the Elephant(Bishop).

gaintpd commented 4 years ago

Screenshot at 2020-06-23 21-01-56

Hello notruck, this is the eventual effect of Sittuyin chess.

notruck commented 4 years ago

Oh yeah, I forgot about the Elephants. The Rooks, Knights, and Elephants are all looking good now! The General is probably the right size already. The King could be bigger, and the pawns smaller. But if that's too much trouble to adjust them any further, I'd say they're ready for the PR.

Thank you so much for this!

gaintpd commented 4 years ago

Hello notruck, the different sized piece is a feasible feature just like janggi, but it is not realizable as the auto-scaling feature in cutechess. when I get the skill to tackle this issue someday, I will bring it to reality, but is is not now.

notruck commented 4 years ago

I see, I'd like to compile and try it out please. Where may I find the latest changes you've made to enable the new Makruk and Sittuyin boards and pieces?

gaintpd commented 4 years ago

Hello notruck, I will open a pull request to the official repo and you can fetch the code after I do it.

gaintpd commented 4 years ago

I have open a PR to the official repo. please be patient as the repo maintainer of cutechess ilaripih has an excellent solution to improve the code quality.

gaintpd commented 4 years ago

Hello notruck, there is a side effect that the visual effect of Ai-work is a little weird compared to the former format. Screenshot from 2020-06-30 21-46-53

Do you have any suggestion?

gaintpd commented 4 years ago

I have found a workaround to settle this.