mgf for Modern Courier Chess
Explanation
<game>
the start and end tags
<title> the game title
<sides> details of the players
<num> the number of players
<name> the name of a
player. This tag will be repeated for each player
<board> details of the playing area
<rank> the number of rows
<rindex> the index or reference
for each row
<file> the number of columns
<findex> the index or reference
for each column
<direction> details of the
connections betweeen board cells; used in the description of piece moves
<for> the
name of a player to whom the directions apply
<idx> a direction in
the form
label=row change:column
change
<edge> board orientation -
1 if the players sit opposite an
edge of the board,
0 if
the players face a corner
<cell> details of the indivdual
cells
<shape> the
number of sides to a cell
<size> length
of a side in pixels
<start> details of the
starting position
<setup> for
each player
<owner> the name of a player
<put> Piece placement in the form
piece-name:cell-reference;cell-reference;...
<piece> details of a piece
<lbl> the full name of the piece
and a short reference e.g.
Knight,N
<status> any initial condition relevant
to the piece in the form
name:value
<moves> legal moves for the piece
<steps>
movement description using
magpie-notation
back
Code
<?xml version="1.0" ?>
<game>
<title>Modern Courier Chess</title>
<sides>
<num>2</num>
<name>White</name>
<name>Blue</name>
</sides>
<board>
<rank>8</rank>
<rindex>1,2,3,4,5,6,7,8</rindex>
<file>12</file>
<findex>a,b,c,d,e,f,g,h,i,j,k,l</findex>
<direction>
<for>White</for>
<idx>n=1:0</idx>
<idx>e=0:1</idx>
<idx>w=0:-1</idx>
<idx>s=-1:0</idx>
</direction>
<direction>
<for>Blue</for>
<idx>s=1:0</idx>
<idx>w=0:1</idx>
<idx>e=0:-1</idx>
<idx>n=-1:0</idx>
</direction>
<edge>1</edge>
<cell>
<shape>4</shape>
<size>42</size>
</cell>
<start>
<setup>
<owner>White</owner>
<put>Ferz:e1,h1</put>
<put>Bishop:d1,i1</put>
<put>Courier:c1,j1</put>
<put>Knight:b1,k1</put>
<put>Rook:a1,l1</put>
<put>King:g1</put>
<put>Queen:f1</put>
<put>Pawn:a2,b2,c2,d2,e2,f2,g2,h2,i2,j2,k2,l2</put>
</setup>
<setup>
<owner>Blue</owner>
<put>Ferz:e8,h8</put>
<put>Bishop:d8,i8</put>
<put>Courier:c8,j8</put>
<put>Knight:b8,k8</put>
<put>Rook:a8,l8</put>
<put>King:g8</put>
<put>Queen:f8</put>
<put>Pawn:a7,b7,c7,d7,e7,f7,g7,h7,i7,j7,k7,l7</put>
</setup>
</start>
</board>
<piece>
<lbl>Pawn,P</lbl>
<status>unmoved:true</status>
<moves>
<steps>(unmoved:true)=n=0+:n=0-={unmoved:false}</steps>
<steps>n=0-={unmoved:false}</steps>
<steps>n.e;n.w=1#={unmoved:false}</steps>
</moves>
</piece>
<piece>
<lbl>Knight,N</lbl>
<moves>
<steps>n.n.e;n.n.w;e.e.n;e.e.s;s.s.e;s.s.w;w.w.n;w.w.s=0-;1#</steps>
</moves>
</piece>
<piece>
<lbl>Bishop,B</lbl>
<moves>
<steps>n.e;n.w;s.e;s.w=1#;0+:*0</steps>
</moves>
</piece>
<piece>
<lbl>Rook,R</lbl>
<moves>
<steps>n;w;s;e=1#;=0+:*0</steps>
</moves>
</piece>
<piece>
<lbl>Queen,Q</lbl>
<moves>
<steps>n;w;s;e=1#;=0+:*0</steps>
<steps>n.e;n.w;s.e;s.w=1#;0+:*0</steps>
</moves>
</piece>
<piece>
<lbl>Ferz,F</lbl>
<status>unmoved:true</status>
<moves>
<steps>(unmoved:true)=n.e.n.e;n.w.n.w;s.e.s.e;s.w.s.w=0-;1#={unmoved:false}</steps>
<steps>n.e;n.w;s.e;s.w=1#;0-={unmoved:false}</steps>
</moves>
</piece>
<piece>
<lbl>Courier,C</lbl>
<moves>
<steps>n.e.n.e;n.w.n.w;s.e.s.e;s.w.s.w=0-;1#</steps>
</moves>
</piece>
<piece>
<lbl>King,K</lbl>
<status>unmoved:true</status>
<moves>
<steps>(unmoved:true)=n.e.n.e;n.w.n.w;s.e.s.e;s.w.s.w=0!-;1!#={unmoved:false}</steps>
<steps>n.n;w.w;s.s;e.e=0!-;1!#={unmoved:false}</steps>
<steps>n.e;n.w;s.e;s.w=1!#;0!-={unmoved:false}</steps>
</moves>
</piece>
</game>
back