Check out Modern Chess, our featured variant for January, 2025.


[ 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

EarliestEarlier Reverse Order LaterLatest
The birth of two variants: Apothecary chess 1 & Apothecary chess 2[Subject Thread] [Add Response]
Aurelian Florea wrote on Thu, May 11, 2017 04:24 PM UTC:

Greg, you may takeback until move 12. This rule is made too balance the advantage of white.


Aurelian Florea wrote on Thu, May 11, 2017 04:25 PM UTC:

I hear your criticism though!


Aurelian Florea wrote on Fri, Aug 18, 2017 08:08 AM UTC:

A personal note.

The crux of this post is that I was busy with my real world life the past three months and I got lazy about writing the game courier reinforcement rules for my two apothecary chess games, as I promised in early May. More details below.

Most of the month of May and early June I worked at an Romanian stock market trading company with Kazakh capital. I was unhappy that they did not provided the challenges I was promissed and the were unhappy because I am seemingly a slow programmer, so we've soon parted ways.

After that I had to interrupt the treatment for my mental illness that meant two difficult weeks.

After this I got employed at an medium american electronics company in Bucharest as an neural networks programmer. After two weeks I've decided to tell them that I used to be mentally ill, just in case the worse comes to pass. They have told me that I should have informed them on that since the interview and fired me oficially with no reason (as you can do that for the first 90 days according to Romanian law.).

So I don't have happy thougths to share but I'm back to the chess variants world, that's definetly a plus. First things first I will start enforcing rules for the apothecary games!


Aurelian Florea wrote on Fri, Aug 18, 2017 08:12 AM UTC:

@Carlos Cetina

Is it ok if I use your apothecary presets in order to write the enforcement rules for the apothecary games, as I don't seem to be able to find mine?

Thanks!


Carlos Cetina wrote on Fri, Aug 18, 2017 11:15 AM UTC:

Yes, of course, use them just changing their Settings Name.

Welcome back and good luck in your aim!


Aurelian Florea wrote on Tue, Jul 24, 2018 07:52 PM UTC:

Almost a year ago it seems I had promised the automatization of my two apothecary games presets. So far laziness got the worst of me it seems :)! But before that after good feedback from the community, my own thoughts on the matter and according to the initial plan I had decided to change the rules to both the games a bit.

I'll start with apothecary 2 as it has more changes:

1. With the exception of the knight there will be no more divergent pieces as many have told me they are are confusing (the ones here I mean).

2. The zebra seems to have too long jumps so I had decided to change the zebra to a second camel.

3. Now , according to 1, the camel is a full WL (in Betza notation). Because the name "camel" has a classic meaning I thereby rename this piece "the mameluke". As mamluks were many times camel riders and some of them were rising to the governmental ranks (wazir).

4.Also according to 1, the elephant now becomes a full HAF. I rename this piece a "siege elephant" inspired by the Khmer unique unit in the Ages of Empires 2 rise of rajas expansion, and it features the elephant origin along with the siege (0,3) flavor. I'm not sure if thorough history elephants were actually used in sieges. It would not make much sens to me as the eat a lot and are unpredictable :)!

5. The knight in this game is the omega chess advanced knight and thus has besides regular knight powers zebra just move powers. In Betza NmZ (although according to Wikipedia zebra is J so it could be NmJ).

In apothecary 1:

1. I did not want to have the same knight in both games so here the knight has (3,0) and (2,2) jump just move powers instead of the zebra ones. In Betza: NmHmA. There is no H in this game and the alfil jump is a nice addition as that square is difficult to reach by regular knight jumps. And the diagonal jump seems better to me than a dababah addition as there is already an orthogonal jump :)!

In both games

1. The joker insert rule does not seem to make much difference so I've decided to reduce the max dropping turn for white to 8 and for black to 14.

2. A player may promote a pawn to joker at the 9th or 10th rank if he does not already own one. Meaning a maximum of 1 joker/side on the board :)!


Aurelian Florea wrote on Tue, Jul 24, 2018 07:58 PM UTC:

Moreover, I want to try to implement these games which now seem better to me into ChessV2 (where 10x10 games look nicer and games are generality easier to implement).

There I want mostly to attempt to evaluate the piece values, using the HG Muller method.

This will be especially tricky with the joker does not have a fixed value as I discussed a while ago here mostly with Greg but depends heavily on the opponents material :)!

Then I'll try to automate the presets and change the 2 articles accordingly :)!

I hope this time laziness won't get the best of me :)!


Aurelian Florea wrote on Fri, Jul 27, 2018 07:38 AM UTC:

Hei, Nobody here?


Aurelian Florea wrote on Tue, Oct 16, 2018 08:33 AM UTC:

Hello everybody!

Once again I need some help with the game courier programming.

I am attempting once again to write rule enforcing presets for my 2 apothecary games.

In my first presets, which I use as basis for development, I had written a short code meant to choose out of the 24 legal initial positions.

Next there is an explanation about what the code is supposed to do.

As I have written in my article apothecary 1&2 have 24 initial possible position which can be chosen by 2 throws of coins and a throw of dice. The first coin throw would decide the placement of the major pieces. If it is centralized (on the d,e&g files) this should be 1 otherwise (on the b,e&i files) it should be 0. The dice throw then decides which of the 6 permutations of pieces occupy the 3 designated fields on the files decided by the first coin (they occupy the 2nd rank for white and the 9th rank for black). The second coin should decide if the bishops occupy the remaining files closer to the king (bishops in) when the coin is 1 or  closer to the edge (bishops out). Take note that the fields on the a and j files (ahead of the rooks) are empty.

In order to achieve  that I had used the following code for apothecary 1 (for 2 there is just a piece naming difference so far):

empty b2 c2 d2 e2 g2 h2 i2 b9 c9 d9 e9 g9 h9 i9
set coin1 rand 0 1;
set coin2 rand 0 1;
if == coin2 0:
drop Q any b2 e2 i2;
drop A any b2 e2 i2;
drop G any b2 e2 i2;
copy b2 b9;
copy e2 e9;
copy i2 i9;
flip b9 e9 i9;
else:
drop Q any d2 e2 g2;
drop A any d2 e2 g2;
drop G any d2 e2 g2;
copy d2 d9;
copy e2 e9;
copy g2 g9;
flip d9 e9 g9;
endif;

if == coin1 0:
drop N last b2 c2 d2;
drop N first g2 h2 i2;
drop n last b9 c9 d9;
drop n first g9 h9 i9;
drop B last b2 c2 d2;
drop B first g2 h2 i2;
drop b last b9 c9 d9;
drop b first g9 h9 i9;
else:
drop B last b2 c2 d2;
drop B first g2 h2 i2;
drop b last b9 c9 d9;
drop b first g9 h9 i9;
drop N last b2 c2 d2;
drop N first g2 h2 i2;
drop n last b9 c9 d9;
drop n first g9 h9 i9;
endif;

My questions are:

1. How do I know that the preset sets a new random seed, if it does, as I do not seem to find any mention on that in the developer guide besides the constants chapter (by the way the link to fisher random chess from the developer's guide seems to be wrong although I could find the game through game courier->games to play-> the letter F->...)?

2. How would I test that the distribution among the 24 position is constant? The play button (playing with myself) yields the same results always?

Thanks!


🕸Fergus Duniho wrote on Tue, Oct 16, 2018 01:49 PM UTC:

Game Courier selects a new seed for each game, and it keeps the same seed throughout a game. To test this, you need to make sure you are playing separate games each time. You could issue invitations to yourself, try it out on different browsers, or start each game in a new private or incognito window. If you go back to your preset's menu between games and refresh your cache, that should also work.


Aurelian Florea wrote on Tue, Oct 16, 2018 05:38 PM UTC:

Unfortunately I seem to still get the behavior I got two years ago, meaning the second part (the else part) of the code always executes in the two if statements conditioned by the coin1 and coin2 variables. I had tried to use rand 1 2 instead of rand 0 1  and set (rand 0 1) meaning adding parentheses. None of these work. They were desperate attempts anyway .


🕸Fergus Duniho wrote on Tue, Oct 16, 2018 06:37 PM UTC:

Give me a link to what you're working on, and I'll take a look.


Aurelian Florea wrote on Wed, Oct 17, 2018 03:15 AM UTC:

Ok, here are the 2 apothecaries:

https://www.chessvariants.com/play/pbm/play.php?game=Apothecary+Chess+1&settings=Apothecary1working

https://www.chessvariants.com/play/pbm/play.php?game=Apothecary+Chess+2&settings=Apothecary2working

They are mostly the same, so there is one or the other.

Please ignore the move forcing attemps. For now just the initial position matters. A long time ago I wanted to move forward. I still do. But the initial position still has errors and that should be taken care of first.


🕸Fergus Duniho wrote on Wed, Oct 17, 2018 04:04 PM UTC:

Contrary to the code you posted, this is in your code:

set coin1 (rand 0 1);
set coin2 (rand 0 1);

This code sets coin1 and coin2 to 

Array
                        (
                            [0] => rand
                            [1] => 0
                            [2] => 1
                        )

, not to a random number. You need to remove the parentheses for it to work right.


Aurelian Florea wrote on Wed, Oct 17, 2018 04:19 PM UTC:

Yes, this was one of my later atempts, it does not work without the paratheses :)!


Aurelian Florea wrote on Wed, Oct 17, 2018 04:21 PM UTC:

I did save it the way you suggested. The way it was was obviously wrong. The problem is still in the set instruction as far as I can see :(!


🕸Fergus Duniho wrote on Wed, Oct 17, 2018 07:46 PM UTC:

When you need the value of a variable in an expression, you have to prepend a # to its name or precede it with the var operator. In "if coun1", "coun1" just returns the string value "coin1". Likewise, in "if coin2", "coin2" just returns the value "coin2".


Aurelian Florea wrote on Thu, Oct 18, 2018 01:19 AM UTC:

@Fergus

Ok, Got it!...

Sorry for the trouble :)!


Aurelian Florea wrote on Thu, Oct 18, 2018 01:19 AM UTC:

@Fergus

Ok, Got it!...

Sorry for the trouble :)!


Aurelian Florea wrote on Thu, Oct 18, 2018 01:55 AM UTC:

Actually there was an extra error. The first line did not end in semicolon. Now it does :)!

Tricky thing, is that after I have written the semicolon in the proper place, my tests yielded a zero for the first six times. "Lucky" I was confident enough and the 7,8 and 10th test were ones. And that's fine. I just wanted to point out the statistical peculiarity :)!


Aurelian Florea wrote on Fri, Oct 26, 2018 07:37 AM UTC:

Hello again folks,

While reading Fergus's "How to enforce rules in game courier"  I rethought the idea of castling (which did not exist until now) in the 2 apothecary games. Even if the game starts with connected rook,s tucking the king to more safety while plunging the rooks into action seems a good extra choice. And I figured as the board is wider I could allow more options, and giving the fact that moving the king closer to the edge is usually more desirable I decided for two sub options in the closer to the middle castles. A specific choice of castling will be available only if the king path to it's destination will be unobstructed, the rook's path to it's destination is unobstructed by anything else than the king and both the rook to be moved and the king have not been yet moved; also the king needs not to cross a checked square in it's path :)!

The king's path is given by a diagonal step back towards the rook and the horizontal steps until destination.

The six castling options are:

1. King side long castle: The king moves (for white) through g1&h1 and lands on i1. The king side rook then jumps on h1.

2. Opposite side long castle: The king moves (for white) through e1&d1 and lands on c1. The king side rook then jumps on d1.

3. King side short castle: The king moves (for white) through g1 and lands on h1. The king side rook then jumps on g1.

4. Opposite side short castle: The king moves (for white) through e1 and lands on d1. The king side rook then jumps on e1.

5. King side short spread castle: The king moves (for white) through g1 and lands on h1. The king side rook then jumps on f1.

6. Opposite side short spread castle: The king moves (for white) through e1 and lands on d1. The king side rook then jumps on f1.


Aurelian Florea wrote on Fri, Oct 26, 2018 07:42 AM UTC:

I had also decided to scrape the extra initial moves of the pieces starting on the bruhaha squares.

In his initial game of Bruhaha Greg Strong has done this in order to have extra opening possibilities.

But in these games it is not that needed. Only the champions has to suffer as he cannot jump to the 3rd rank during his first move. So maybe he will be moved twice in the opening :)!


Aurelian Florea wrote on Fri, Oct 26, 2018 08:12 AM UTC:

It has been pointed to me that the promotion rules make for the possibility of not having the needed physical material for when playing on physical boards :)!

My stance on that was always that today chess is most of the time played over the internet where physical material it is not a concern as with software you can always "cast" 10 queens :)!

Official competitions are held this way mostly for tradition and cheating protection reasons.

In 50 years physical boards will probably become fringe and understood only to the very curios as is for a modern audience medieval western European poetry, for example :)!

I never liked Christian Freeing's Grand Chess promotion rules. It just makes a good game worse. Fergus Duniho has done better in Gross Chess (the game in the I have in the meantime remember I got the idea of such complex rules) gives the extra possibility, with respect to Cristian Freeling's game, of promotion to more queens, rooks, bishops and knights probably under the pretext that such material is more easily obtainable casually and more cheaply in the market. That is a big help. I will make such rules myself but not because it makes the game better (it does not make it worse and after you read the rules you would see why this practically cannot happen) and I'm not worried about the material as my way still requires plenty of physical pieces, which will make individual boards cheaper, nor will help or hinder eventual clubs who should anyway need to have extra boards with extra pieces. But as a respect for the reach history of the art of chess boards and pieces I will insert the following restrictions:

A player can have at a time a maximum of:

4 rooks

3 queens, knights, champions, siege elephants,mamelukes, wizards and bishops

2 griffins,marshals,archbishops and aancas

and as stated in a previous comment 1 joker


Aurelian Florea wrote on Sun, Jan 20, 2019 08:50 AM UTC:

@Fergus

Hello

This preset: https://www.chessvariants.com/play/pbm/play.php?game=Apothecary+Chess+1&settings=Apothecary1working

still has errors as we had discussed before (an infinite cycle).

This one is virtually the same but lack the erros of the first one.

https://www.chessvariants.com/play/pbm/play.php?game=Apothecary+Chess+2&settings=Apothecary2working

They seem to similar to me and still apothecary 1 has errors. Could you please check? Maybe it is a problem with the system. Could you help? Thanks!...


Aurelian Florea wrote on Sun, Jan 20, 2019 08:51 AM UTC:

@Greg

Would you agree the inclusion of the upgraded apothecary 1&2 into this years tournament provided that I can do (with Fergus's help) the rules enforcement and move displays in time?


25 comments displayed

EarliestEarlier Reverse Order LaterLatest

Permalink to the exact comments currently displayed.