hgm wrote:The current PGN standard does not support null moves. While the latter can be very useful in variations, to indicate a threat. E.g.
1. e2 e4 2. Nf3 Nc6 (2... pass 3. Nxe5 Qe7!) 3. Bc4
So there is a lot of software that supports null moves, but for lack of a standard, there is a Babylonic confusion in the notations they use for it. Not writing them at all is not really an option, as the next move would be mistaken for a move of the wrong side, and SAN in general does not make that obvious (e.g. Ng5 could be possible for Knights of both sides). So I think it is pretty important to adopt an official standard for it, and add it to the authoritive document describing the PGN standard.
So my question is: who decides about the PGN standard, and how can we approach them?
As as small (and probably incomplete) overview of what is currently in use, I made the following:
SCID uses "--", but has the option to save it as a comment ("{--}"?). It also understands "Z0" on input.
According to SCID docs there is other software that uses "Z0".
WinBoard uses "pass", but also understands "null" and "@@@@" on input.
WB protocol uses "@@@@".
UCI uses "0000".
I don't like the "--" much, because of low visibility, and possible confusion with other (non-compliant) notations +=, -= etc. I don't like the "Z0" much because a leading capital suggests a piece name (some variants use a piece called Zebra), which makes parsing more difficult / less efficient, and because it is notvery intuitive, but I think it is better than "--".
Any comments / suggestions are welcome.
PGN was designed for recording legal games, so it doesn't make sense to make provision for moves that are illegal in the chess sense. Putting a null move in a PGN file implies one of the players played a "pass" move and the game continued from there - not a very sensible thing.
There is a kind of standard way seen in chess literature that is similar to pass, you will see it in problems and it's the token, "any" - but that is not a non-move, it's represents a wild card, or ANY legal move.
There is another notation that can be used and it's the ~ or tllda character which means "followed by" which implies the same side to move is going to play a certain way no matter regardless of what the opponent plays, but not necessarily on the next move - so that is pretty imprecise.
What are you looking to do with this? Do you have a specific application? Is it a way to document threats in comments?
The person to contact to make a provision for this would be Steven Edwards, who standardized PGN and may have even invented it.
If we were to gain such a token I would suggest the token "pass" as it's used in GO also and has intuitive meaning. But if you simply want to include it in comments you could just say, "the threat is" and then display the PV starting with the next move for the side who played the threat. Like this:
7. e5 (the threat is 8. exf6 gxf6 ...)
Of course the null move has a very precise meaning so I can understand why it might be appealing.