Smart Game Format

From Wikipedia, the free encyclopedia

Smart Game FormatSGF)はボードゲーム棋譜保存に使われるコンピュータファイルフォーマットであり、オープン・コンテント・ライセンス英語版で提供されている[1]。1987年に第1版(FF[1])が提案され、1999年の第4版(FF[4])が最新版である。SGFフォーマットが最も一般に普及しているゲームは囲碁であるが、複数のボードゲームに対応している。

沿革

SGFは、Smart Go Boardの作者としても知られるAnders Kierulfにより1987年に提案された[2]。このときはコンピュータ囲碁における標準としての提案だったが、広く受け入れられなかったため、1990年に発表された自身の博士論文Smart Go Board用のファイルフォーマットとして仕様書を付録に入れた[2][3]。この1987年/1990年版が第1版(FF[1])であり、FF[1]では対応するボードゲームが囲碁リバーシチェスナイン・メンズ・モリスの4種類だった[4]

1993年にマルティン・ミュラー(Martin Müller)がSGFの仕様を整理して第3版(FF[3])を発表し[1]、対応するゲームがFF[1]で対応していた4種類に五目並べ連珠シャンチー将棋を加えた7種類(仕様では五目並べと連珠が同一として扱われている)[5]。その後、1997年にアルノ・ホロシ(Arno Hollosi)が第3版から新機能を追加した第4版(FF[4])を発表した[1]

1999年に第5版(FF[5])制定に向けた議論が開始されたが、正式発表には至っていない[6]。また、2002年にXMLを採用するXGFフォーマット(XML Game Format)が提案されたが[7]、やはり広く採用されていない。

対応ボードゲーム

SGFファイルのGMプロパティはゲーム種類を示しており、FF[4]では1から40までの40種が定義されている[8]

SGFが対応している主要なボードゲームには以下のものがある。

さらに見る GMプロパティ, ボードゲーム ...
SGFが対応している主要なボードゲーム[8]
GMプロパティボードゲーム注釈
1囲碁
2リバーシ
3チェスPortable Game Notation形式が一般的。
4五目並べ連珠五目並べと連珠は同一扱い
5ナイン・メンズ・モリス
6バックギャモン
7シャンチー
8将棋
11ヘックス
12闘獣棋
17タントリックス
21ツイクスト
閉じる

仕様

データ形式

SGFはテキストベースのデータ形式を採用し、ゲーム情報の保存に木構造表現を使用するが、この木構造では単純な変化を追加することができる[9]。この木構造ではセミコロン;)で親ノードと子ノードを区切り、半角丸括弧(())で兄弟ノードのグループを表記する[9]。また、ノードにはプロパティ名[プロパティ値]という形でプロパティが指定される[9]

プロパティ

プロパティ名は大文字アルファベットでのみ定義されており、ノードにおける指定では順不同で指定できる[9]。プロパティは根(SGFバージョン(FF)、ゲーム種類(GM)など根ノードでのみ指定できる)、ゲーム情報(黒番と白番のプレイヤー名(PB, PW)、コミ(KM)など一局ごとの情報)、セットアップ(最初から置かれている黒石と白石(AB, AW)など、最初の局面を示す情報)、着手(黒番の着手(B)、白番の着手(W)など)、その他(コメント(C)、悪手(BM)など)に大別される[8][9]

さらに見る プロパティ名, 種類 ...
主要なプロパティ[8]
プロパティ名種類プロパティ値の例説明
FF根プロパティ4SGFのバージョン
GM根プロパティ1ゲームの種類(#対応ボードゲームを参照)
CA根プロパティUTF-8文字セット
AP根プロパティCGoban:1.6.2アプリケーション名とバージョン
SZ根プロパティ19、9:10ゲームボードのサイズ
DTゲーム情報2020-09-21対局日付
EVゲーム情報ABCトーナメント大会名
HAゲーム情報2置き石の数(囲碁専用プロパティ)
KMゲーム情報5.5コミ(囲碁専用プロパティ)
PBゲーム情報田中黒番のプレイヤー名
PWゲーム情報佐藤白番のプレイヤー名
REゲーム情報W+0.5対局結果
RUゲーム情報Japanese適用ルール
TMゲーム情報3600持ち時間
ABセットアップcc最初から置かれている黒石
AWセットアップdd最初から置かれている白石
PLセットアップW手番
B着手プロパティcc黒番の着手
W着手プロパティdd白番の着手
BM着手プロパティ悪手
IT着手プロパティ妙手
TE着手プロパティ手筋
Cその他これはコメントです。コメント
閉じる

脚注

関連項目

外部リンク

Related Articles

Wikiwand AI