Açıklama
Portable Game Notation kısaltması PGN, satranç oyunlarını saklamak ve aktarmak için tasarlanmış metin biçimidir. Normal metin olarak açılabilir; yapısı sayesinde satranç programları, siteler ve veri tabanları oyunu yeniden oluşturabilir.
PGN oyununun iki bölümü
- Etiket çiftleri bölümü Event, Site, Date, Round, White, Black ve Result gibi köşeli parantez içindeki bilgileri saklar. Bu yedi etiket temel arşiv listesini oluşturur.
- Hamle metni bölümü hamle numaralarını, hamleleri, isteğe bağlı yorumları, varyantları ve son bir sonuç işaretini içerir.
Yorumlar normalde süslü parantez içindedir. Alternatif hatlar normal parantez içinde görünür ve iç içe varyantlar içerebilir. Kısa değerlendirmeler $ ve sayıdan oluşan NAG kodları olarak saklanabilir. Tek .pgn dosyası bir veya ayrı birçok oyun içerebilir.
PGN yalnızca tahta fotoğrafını değil, oyunu veya varyant ağacını kaydeder. Oyun standart dışı konumdan başlarsa SetUp ve başlıkları bu başlangıç konumunu sağlayabilir. FEN tek başına konumu açıklar, onu oluşturan hamle geçmişini değil.
PGN ne değildir?
PGN motorun düşünmesi veya grafik arayüzle iletişim kurması için protokol değildir. gibi protokoller programlar arasında komut aktarır; PGN oyun kayıtlarını aktarır. Programlar kabul ettikleri uzantılarda da farklılaşır; bu yüzden en taşınabilir dosyalar standart yapıyı izler ve yasal hamleler içerir.
Son işaret 1-0, 0-1, 1/2-1/2 veya * olmalıdır. Result başlığıyla da eşleşmelidir. Yıldız, oyun sürerken veya kesin sonucu yokken kullanılır.
Sık karıştırılanlar
PGN ve FEN
PGN oyunu ve meta verisini, FEN tek başlangıç veya ara konumu saklar.
PGN ve UCI
PGN oyun kaydı biçimidir; UCI motor iletişim protokolüdür.
Kaynaklar
- 1.Portable Game Notation Specification and Implementation Guide, Steven J. Edwards
- 2.PGN parsing and writing, python-chess
