L’en-tête de partie

Dans la vie, il faut savoir s’entêter !
jeudi 27 octobre 2022
par  Olivier

Formalisme

Le format des informations d’en-tête est très simple : c’est une liste d’identifiants et de valeurs indiqués de la façon suivante :
[Identifiant "valeur"]

Vous voulez indiquer votre superbe Elo, dans une partie où vous avez les blancs, et celui de votre adversaire de très haut niveau :
[WhiteElo "1014"]
[BlackElo "1199"]

Voilà, techniquement, vous savez remplir l’en-tête !
Certaines informations sont obligatoires (comme l’évènement ou la date), d’autres sont optionnelles (comme les Elos). Mais les logiciels actuels sont généralement tolérants et sont capables de lire des parties avec des éléments d’en-tête manquants. Listons donc tout ça !

Les 7 informations obligatoires

L’évènement

Il est indiqué avec l’identifiant Event. Par exemple :
[Event "Kvika Reykjavik Open"]
[Event "Variantes de la Partie Italienne"]

Le site du match

Il est indiqué avec l’identifiant Site. Par exemple :
[Site "Reykjavik, Iceland "]
[Site "Maison des Echecs Toulouse-Lardenne"]

La date du match

Il est indiqué avec l’identifiant Date. Par exemple :
[Date "2022.04.06"]

La ronde

Il est indiqué avec l’identifiant Round. Par exemple :
[Round "1"]
[Round "1.5"]
[Round "4.1.2"]

Le joueur qui a les noirs

Il est indiqué avec l’identifiant Black. Par exemple :
[Black "Bruce WAYNE"]
[Black "Stockfish"]
[Black "Povah, Nigel E"]

Le joueur qui a les blancs

Il est indiqué avec l’identifiant White. Par exemple :
[White "Marty McFLY"]
[White "Sadhwani, Raunak"]

Le résultat

Il est indiqué avec l’identifiant Result.
Victoire des blancs :
[Result "1-0"]
Victoire des noirs :
[Result "0-1"]
Partie nulle :
[Result "1/2-1/2"]
Partie en cours ou qui ne finira jamais :
[Result "*"]

Les informations optionnelles mais utiles

La date de début du tournoi

EventDate Par exemple :
[EventDate "2022.04.06"]

Le résultat détaillé

Termination
"abandoned" : abandon
"adjudication" : décision
"emergency" : urgence
"normal" : partie achevé par un mat.
"rules infraction" : infraction aux règles
"time forfeit" : perte au temps
"unterminated" : partie inachevée

Le contrôle temps

Timecontrol
Contrôle temps de la forme coups/temps1:temps2+incrément (en s).

Exemples de Timecontrol
TimecontrolDurée Période 1Nombre de coups de la Période 1Durée Période 2Incrément
"5400" 1h30 <=> 5400s KO
"5400+30" 1h30 <=> 5400s 30s
"40/5400:1800+30" 1h30 <=> 5400s 40 coups 30 minutes <=> 1800s 30s
"900+10" 15 minutes <=> 900s 10s
"180+2" 3 minutes <=> 180s 2s
"3600" 1h KO
Les classements Elo

WhiteElo, BlackElo : classement Elo des Blancs et des Noirs,

Les titres des joeurs

WhiteTitle, BlackTitle : titre des joueurs blanc et noir ("GM", "IM", -).

Les informations vraiment optionnelles

Annotator : commentateur
Board : échiquier
ECO : code ECO
EventSponsor : sponsor de l’événement,
FEN : la position initiale dans le standard de la notation Forsyth-Edwards
Mode :
"OTB" (over the board)
"PM" (paper mail)
"EM" (electronic mail)
"ICS" (Internet Chess Server)
"TC" (general telecommunication)
NIC : code NIC,
Opening : ouverture
PlyCount : nombre de demi-coups
Section : open, Reserver, etc.
SetUp : 0 pour la position initiale, 1 pour une position différente
Stage : Preliminary, Semifinal, ... (stade préliminaire, demi-finale, ...)
SubVariation : sous-variante
Time : heure sous forme HH:MM:SS
UTCTime : heure UTC
UTCDate : date UTC
Variation : variante
WhiteUSCF, BlackUSCF : classement Elo américain des Blancs et des Noirs
WhiteNA, BlackNA : adresse électronique des joueurs blanc et noir
WhiteType, BlackType : human ou program (homme ou machine)

Et le fichier PGN dans tout ça ?

On commence par l’en-tête...

On ajoute la partie en notation algébrique...
Reste à l’enregistrer dans un fichier Toto.pgn, et on obtient un PGN !

Quoi de mieux qu’un petit exemple ?
Pour information, il est en format PGN d’exportation, ce qui explique les retours à la lignes avant le 81ème caractère (voir l’ajout fait dans la partie 1 du format PGN).

[Event "BL 1213 SC Eppingen - OSG Baden Baden"]
[Site "Baden Baden"]
[Date "2013.04.06"]
[Round "14.3"]
[White "Bacrot, Etienne"]
[Black "Tiviakov, Sergei"]
[Result "1-0"]
[BlackElo "2659"]
[ECO "B01"]
[EventDate "2013.??.??"]
[PlyCount "143"]
[WhiteElo "2705"]

1. e4 d5 2. exd5 Qxd5 3. Nc3 Qd6 4. d4 Nf6 5. Nf3 g6 6. Nb5 Qd8 7. Bf4 Na6 8. c4
Bg7 9. Be2 O-O 10. O-O Bf5 11. Re1 Re8 12. h3 c6 13. Nc3 Ne4 14. Qb3 Bxd4 15.
Nxd4 Qxd4 16. Be3 Qd7 17. g4 Nxc3 18. Qxc3 Be6 19. Rad1 Qc7 20. Bh6 f6 21. Bf1
Bf7 22. g5 Nc5 23. gxf6 e5 24. Qe3 Ne6 25. Qxe5 Qxe5 26. Rxe5 Rad8 27. Rxd8
Nxd8 28. Re7 Rxe7 29. fxe7 Ne6 30. Be3 a6 31. Bb6 Be8 32. Bd8 Kf7 33. Kg2 Bd7
34. Kg3 Ke8 35. h4 Nxd8 36. exd8=Q+ Kxd8 37. Kf4 Ke7 38. Kg5 Bf5 39. c5 h5 40.
b4 Kf7 41. Bc4+ Ke7 42. a3 Bb1 43. Be2 Ke6 44. Bd1 Bd3 45. Bb3+ Ke7 46. a4 Bb1
47. Bc4 Bc2 48. Be2 Ke6 49. Bc4+ Ke7 50. Bf1 Bf5 51. Be2 Ke6 52. Bc4+ Ke7 53.
a5 Bc2 54. Kf4 Kf6 55. b5 axb5 56. Bxb5 Bf5 57. Bf1 Bd7 58. a6 bxa6 59. Bxa6
Be6 60. Bf1 Bc8 61. Bg2 Bd7 62. Bf3 Be8 63. Be4 Bd7 64. Bg2 Be8 65. Bh3 Bf7 66.
Bd7 Bd5 67. Be8 Kg7 68. Kg5 Be4 69. f4 Kh7 70. Kf6 Kh6 71. Ke5 Bg2 72. Kd6 1-0

A noter les " ?" pour indiquer des informations manquantes ! (utile parfois sur les champs obligatoires)


The neverending sto-ory ahahaha

Vous savez dorénavant comment écrire une partie dans un fichier PGN.
Mieux encore, si vous mettez 2 parties l’une à la suite de l’autre, vous avez de nouveau un fichier PGN mais qui contient 2 fois plus de vos merveilleuses parties....

Que manque-t-il ?
Il nous manque des annotations, des commentaires, et des variantes, sujet de notre prochain article.

Bref, comme le dirait Limahl : "A neverending sto-ory ! Ahahahhaha !"
(Ne seront plus tout jeunes ceux qui auront la référence, où ils auront vu des Choses Etranges).

Olivier
Merci Gabriel pour la relecture et le "détail" des 80 caractères.


Nos partenaires