H. G. Muller wrote on Mon, Oct 6, 2014 10:44 AM UTC:
The final choice for the extensions of Betza notation to be used in XBoard/WinBoard is this:
Simple Betza notation for Multi-leg moves
The modifier 'a' ('again') describes that the piece can do an extra move after the first move
(described by the modifiers left of the 'a') has been completed.
This continuation is then described by the modifiers right of the 'a',
with the understanding that directions there are relative to the immediately preceding step,
'f' specifying continuation in the same direction.
E.g. fcafmF is the Checker capture, first leg fcF, followed by an obligatory fmF, i.e. in the same direction.
Default modality on a non-final leg is 'm', rather than 'mc' on final legs.
Continuation direction - Continuation legs always use the 8-fold K/Q system for specifying directions.
We adopt the convention that specifying an intermediate continuation direction (like fr)
converts orthogonal to diagonal atoms, and vice versa:
F interconverts with W, D with A, G with H.
This allows description of paths that bend 45 degree or 135 degree.
E.g. afsW is a Mao, afsF a Moa and afsK the (multi-path) Moo.
Oblique atoms or K already have these directions by themselves, and require no identity change.
(But in the case of K still involves interconversion between its W and F constituents).
Awkward detail: to prevent that afrN means something different on the rfN move than on the lfN move
(a (3,3) move vs. a (0,4) move),
the 'l' and 'r' must also be interpreted relative to the first 'sideway choice',
'r' meaning the same direction as that choice.
Perhaps a better alternative is to have shorthand notations for direction sets that include only the right-handed four or lefthanded four moves of an oblique leaper, ('hr' and 'hl'?), so that it becomes bearable to specify them separately, using 'r' and 'l' in their ordinary meaning as they are needed (e.g. hrarfNhlalfN). For now we declare the result of explicit use of 'l' and 'r' in continuations of an oblique atom simply undefined.
The default direction set for continuation legs is all directions except exactly backwards,
where 'all' is the 4 principal directions for 4-way atoms, and 8 directions otherwise.
Modality -The 'p' and 'g' modifiers in a non-final 'leg' indicate that leg should end on the first occupied square it encounters.
and the following leg will then move away from there without affecting the occupant ('hop').
'g' has the additional property that it modifies the range from slider to leaper, or vice versa, compared to the previous step.
Thus pafR is a more elaborate way of writing pR,
while gafQ is equivalent to gQ, the conversion to leaper forcing the move to end immediately behind the platform.
The new notation can also describe pieces that change direction at the platform,
e.g. pasR for a hopper that continues in a perpendicular direction there.
masR = asR is a Hook Mover that can make such a turn at any empty square,
and modalities can be combined as usual; mcasR can turn a corner at an empty square, or after capturing.
The combined modality 'mp' on non-final legs effectively ignores the intermediate square,
and can be used to 'glue' leaper moves into longer strides, e.g. mpafN for a (2,4) leaper.
To make it a lame leaper, blockable at the N square, we would drop the 'p', and write mafN = afN.
New modalities - On non-final legs the modality 'y' indicates slider - leaper interconversion similar to 'g',
but on an empty square rather than a hop.
The exact way this is done (for both y and g) is swapping BRQ for FWK and dropping an existing range specification,
or, for other atoms, changing an explicit or implied range from 1 to infinite or from not-1 to 1.
This allows description of pieces that change direction (or fork) after a fixed number of steps,
e.g. yafsF is a Gryphon (starts as F, 'y' changes it into slider, and 'fs' turns it orthogonal for the second leg).
A new modifier 't' can be used in combination with 'p' or 'g' on non-final legs to indicate hopping is only allowed over a friendly piece.
e.p. capture or range- 'e' on a continuation leg restricts the range of that leg to be exactly the same as that of the previous slider leg.
This can be used to describe rifle capture: mRcabeR is a rifle Rook.
Otherwise it indicates the move can capture en-passant,
i.e. moving to an empty square where an enemy lame leaper that was just moved could have been blocked, capturing the latter.
Summary
The 'again' modifier (supported by the new modifiers 'y' and 'e') can be used for: expressing longer leaper moves, laying out the exact path of lame leapers, describing general bent hoppers or sliders, describe several types of bifurcators, and describe locust or rifle captures.
Simple Betza notation for Multi-leg moves
The modifier 'a' ('again') describes that the piece can do an extra move after the first move (described by the modifiers left of the 'a') has been completed. This continuation is then described by the modifiers right of the 'a', with the understanding that directions there are relative to the immediately preceding step, 'f' specifying continuation in the same direction. E.g. fcafmF is the Checker capture, first leg fcF, followed by an obligatory fmF, i.e. in the same direction. Default modality on a non-final leg is 'm', rather than 'mc' on final legs.
Continuation direction - Continuation legs always use the 8-fold K/Q system for specifying directions. We adopt the convention that specifying an intermediate continuation direction (like fr) converts orthogonal to diagonal atoms, and vice versa: F interconverts with W, D with A, G with H. This allows description of paths that bend 45 degree or 135 degree. E.g. afsW is a Mao, afsF a Moa and afsK the (multi-path) Moo. Oblique atoms or K already have these directions by themselves, and require no identity change. (But in the case of K still involves interconversion between its W and F constituents).
Awkward detail: to prevent that afrN means something different on the rfN move than on the lfN move (a (3,3) move vs. a (0,4) move), the 'l' and 'r' must also be interpreted relative to the first 'sideway choice', 'r' meaning the same direction as that choice. Perhaps a better alternative is to have shorthand notations for direction sets that include only the right-handed four or lefthanded four moves of an oblique leaper, ('hr' and 'hl'?), so that it becomes bearable to specify them separately, using 'r' and 'l' in their ordinary meaning as they are needed (e.g. hrarfNhlalfN). For now we declare the result of explicit use of 'l' and 'r' in continuations of an oblique atom simply undefined.
The default direction set for continuation legs is all directions except exactly backwards, where 'all' is the 4 principal directions for 4-way atoms, and 8 directions otherwise.
Modality -The 'p' and 'g' modifiers in a non-final 'leg' indicate that leg should end on the first occupied square it encounters. and the following leg will then move away from there without affecting the occupant ('hop'). 'g' has the additional property that it modifies the range from slider to leaper, or vice versa, compared to the previous step. Thus pafR is a more elaborate way of writing pR, while gafQ is equivalent to gQ, the conversion to leaper forcing the move to end immediately behind the platform. The new notation can also describe pieces that change direction at the platform, e.g. pasR for a hopper that continues in a perpendicular direction there. masR = asR is a Hook Mover that can make such a turn at any empty square, and modalities can be combined as usual; mcasR can turn a corner at an empty square, or after capturing. The combined modality 'mp' on non-final legs effectively ignores the intermediate square, and can be used to 'glue' leaper moves into longer strides, e.g. mpafN for a (2,4) leaper. To make it a lame leaper, blockable at the N square, we would drop the 'p', and write mafN = afN.
New modalities - On non-final legs the modality 'y' indicates slider - leaper interconversion similar to 'g', but on an empty square rather than a hop. The exact way this is done (for both y and g) is swapping BRQ for FWK and dropping an existing range specification, or, for other atoms, changing an explicit or implied range from 1 to infinite or from not-1 to 1. This allows description of pieces that change direction (or fork) after a fixed number of steps, e.g. yafsF is a Gryphon (starts as F, 'y' changes it into slider, and 'fs' turns it orthogonal for the second leg). A new modifier 't' can be used in combination with 'p' or 'g' on non-final legs to indicate hopping is only allowed over a friendly piece.
e.p. capture or range- 'e' on a continuation leg restricts the range of that leg to be exactly the same as that of the previous slider leg. This can be used to describe rifle capture: mRcabeR is a rifle Rook. Otherwise it indicates the move can capture en-passant, i.e. moving to an empty square where an enemy lame leaper that was just moved could have been blocked, capturing the latter.
Summary
The 'again' modifier (supported by the new modifiers 'y' and 'e') can be used for: expressing longer leaper moves, laying out the exact path of lame leapers, describing general bent hoppers or sliders, describe several types of bifurcators, and describe locust or rifle captures.