Makruk engine authors beware!

Discussion of chess software programming and technical issues.

Moderator: Ras

User avatar
hgm
Posts: 28452
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Makruk engine authors beware!

Post by hgm »

Upto now WinBoard/XBoard always considered Makruk as being played from a setup position, and would thus load the engine with the initial position. This was actually a hack to work-around a shortcoming of Fairy-Max, which always set up the initial position with Pawns on 2nd rank.

This has now been repaired in Fairy-Max, so I am considering removing this hack in future versions of WinBoard/XBoard. So please make sure your engines know the correct opening position for Makruk.

Some other things that might be of interest:

There apparently is a new synthesis of traditional South-East Asian Chess variants, called ASEAN Chess. A rule proposal for this can even be found on the FIDE web site. It is virtually identical to Makruk. The only differences I noticed is that Pawns promote on 8th rank only, and that white starts with Ke1, Qd1 (where Makruk has those reversed). And that the pieces are identified by the usual PNBRQK. (And the counting rule has mostly disappeared, and has been replaced by the normal 50-move rule.)

Future versions of WinBoard/XBoard will implement this as variant asean. It might be very easy to let your engine also support this.

There also seems to be a quite popular Makruk variant where the 'Queen' cannot just move as Ferz, but in addition as Rook and Knight. This super-piece is known as Ai-Wok (and Pawns promote to it). I am not planning to support this in WinBoard/XBoard as separate variant, as it can be easily played as Makruk with legality testing off. I equiped Fairy-Max with a combo option to tweek the Makruk rules, with setting makruk, cambodian and ai-wok.

If you would manage to have your engine play that variant too, I am sure the Thai people will be very grateful!
User avatar
Evert
Posts: 2929
Joined: Sat Jan 22, 2011 12:42 am
Location: NL

Re: Makruk engine authors beware!

Post by Evert »

hgm wrote:Upto now WinBoard/XBoard always considered Makruk as being played from a setup position, and would thus load the engine with the initial position. This was actually a hack to work-around a shortcoming of Fairy-Max, which always set up the initial position with Pawns on 2nd rank.

This has now been repaired in Fairy-Max, so I am considering removing this hack in future versions of WinBoard/XBoard. So please make sure your engines know the correct opening position for Makruk.
Not an issue!
There apparently is a new synthesis of traditional South-East Asian Chess variants, called ASEAN Chess. A rule proposal for this can even be found on the FIDE web site. It is virtually identical to Makruk. The only differences I noticed is that Pawns promote on 8th rank only, and that white starts with Ke1, Qd1 (where Makruk has those reversed).
Ok. These are all pretty trivial.
And that the pieces are identified by the usual PNBRQK.
Urgh. :(
(Actually the rules say E for Elephant, but they still have Q for Ferz).
(And the counting rule has mostly disappeared, and has been replaced by the normal 50-move rule.)
Almost there, but still three exceptions, unfortunately. Most of them are pretty silly/pointless. I still think 16 moves for KRK is awfully close to the theoretical maximum, but then again, perhaps it's not unreasonable to force people to know how to mate KRK perfectly?
Future versions of WinBoard/XBoard will implement this as variant asean. It might be very easy to let your engine also support this.
Cool, will add.
There also seems to be a quite popular Makruk variant where the 'Queen' cannot just move as Ferz, but in addition as Rook and Knight. This super-piece is known as Ai-Wok (and Pawns promote to it). I am not planning to support this in WinBoard/XBoard as separate variant, as it can be easily played as Makruk with legality testing off. I equiped Fairy-Max with a combo option to tweek the Makruk rules, with setting makruk, cambodian and ai-wok.

If you would manage to have your engine play that variant too, I am sure the Thai people will be very grateful!
Easily done, but I'll probably add it as a generic "fairy" sub-varaint to Sjaak.
User avatar
Evert
Posts: 2929
Joined: Sat Jan 22, 2011 12:42 am
Location: NL

Re: Makruk engine authors beware!

Post by Evert »

Evert wrote: Cool, will add.
In fact, the following description in Sjaak's configuration file should work to play it as variant Fairy (untested):

Code: Select all

################################
# ASEAN Chess (Makruk variant) #
################################
Variant: ASEAN Chess 
Board: 8x8
FEN: "rnsfksnr/8/pppppppp/8/8/PPPPPPPP/8/RNSFKSNR w - -"

Zone: white_promotion = a8,b8,c8,d8,e8,f8,g8,h8
Zone: black_promotion = a1,b1,c1,d1,e1,f1,g1,h1

Piece: Knight
Move: leap (2,1)
Symbol: "N", "N,n"
Value: 320

Piece: Silver General
Move: aleap (1,1)|(1,-1)|(-1,-1)|(-1,1)|(0,1)
Symbol: "S", "S,s"
Value 250

Piece: Rook
Move: slide (H,V)
Symbol: "R", "R,r"
Value: 500

Piece: Ferz
Move: leap (1,1)
Symbol: "F", "F,f"
Value: 150

Piece: King
Move: leap(0,1)|(1,1)
Symbol: "K", "K,k"
Flags: royal

Piece: White Pawn
Move: step N
Capture: step NE,NW
Symbol: " ", "P"
Promotion: white_promotion, "F"
Value: 100

Piece: Black Pawn
Move: step S
Capture: step SE,SW
Symbol: " ", ",p"
Promotion: black_promotion, "F"
Value: 100
Ferdy
Posts: 4851
Joined: Sun Aug 10, 2008 3:15 pm
Location: Philippines

Re: Makruk engine authors beware!

Post by Ferdy »

For asean chess are you going to use KNBRQ symbols? From the ref. rule there is still counting rule but only if one side has bare king.