SGF (Smart Game Format) est un format de fichier utilisé pour sauvegarder des parties de jeu de go. Il a été conçu en 1987 mais a été étendu depuis pour supporter d’autres jeux, parmi lesquels Lines of Action, Backgammon, Hex, Amazons, Octi, Gess, etc.
Le jeu de go est le plus souvent représenté dans ce format.
Notice technique SGF est un format de fichier texte simple. La structure de données sous-jacente représente une arborescence.
La dernière spécification SGF a été réalisée en 2006.
Le jeu de go se pratique surtout en Chine, au Japon et en Corée, mais le format SGF ne permet pas de spécifier des traductions de texte.
On peut le manipuler par divers outilspar exemple avec le logiciel utilitaire SGF Utils, un programme écrit avec Guile, ;.
Exemple Exemple simple d'un début de partie (5 coups sont joués): (;GMFFCA[UTF-8]AP[CGoban:3]ST RU[Japanese]SZKM[6.50] PW[Joueur blanc]PB[Joueur noir] ;B[gc] ;W[cg] ;B[cf] ;W[dg] ;B[eg])
Syntaxe Le format SGF est formé d'une collection d'une ou plusieurs parties (plus précisément d'arbres de parties). Chaque partie est délimitée par des parenthèses: "(" et ")". Une partie est représentée par une suite de propriétés sous la forme: clé[valeur]. Les propriétés servent à définir aussi bien les coups que les informations générales sur la partie. Voici une liste non exhaustive de clés, ou identifieurs, de propriété : +IdentifieurSignificationGMType de jeu. Ex: "1" pour le Go.FFVersion du format SGF. Ex: "4".CAEncodage des caractères.APApplication utilisée pour créer/éditer le fichier.RURègles. Ex: "Japanese" pour les règles japonaises.SZTaille du plateau. Ex: "19" pour un plateau carré, "9:10" pour un plateau rectangulaire.KMKomi (spécifique au jeu de Go).PWNom du joueur blanc.PBNom du joueur noir.WRClassement du joueur blancBRClassement du joueur noir.TMTemps à la pendule, en secondes.DTDate de la partie. Ex: "2020-05-23".RERésultat de la partie. Ex: "B+14" signifie que les noirs gagnent de 14 points.HAHandicap, en nombre de pierres.ABListe des coordonnées des pierres de handicap. Cette propriété peut avoir plusieurs valeurs.CUn commentaire.Déroulement de la partieWCoup pour les blancs.BCoup pour les noirs.WLTemps restant aux blancs, en secondes.BLTemps restant aux noirs, en secondes. Notes:
Plusieurs variations peuvent être décrites dans une même partie. Chaque variation est délimitée par des parenthèses. Un point-virgule (";") commence chaque nœud de la partie, y compris le premier nœud.
Système de coordonnées Les coordonnées sur le plateau sont représentées sous forme de deux lettres minuscules, de "a" à "s" pour un plateau de Go de taille 19x19.
La première lettre désigne la colonne (de gauche à droite), la seconde lettre désigne la ligne (de haut en bas).
Par exemple, "dc" représente l'intersection de la colonne et de la ligne (en haut à gauche du plateau).
Ce choix a été fait par souci de simplicité et de compacité, comparé à la notation traditionnelle.
Voir aussi
Portable Game Notation, format utilisé pour les parties d’échecs.
Notes et références
Catégorie:Format de données numériques Catégorie:Jeu de go et informatique