智能遊戲格式
智能遊戲格式(Smart Game Format,簡稱SGF)是一種用於存儲棋盤遊戲記錄的計算機文件格式。圍棋是最常見的用這種格式記錄的遊戲,並且是默認的。SGF最初是由Anders Kierulf為他的SmartGO程序創建的,當時具有不同的名稱。該格式的當前版本是4。
副檔名 |
.sgf |
---|---|
開發者 | Anders Kierulf (1987, FF1), Martin Mueller (1993, FF3), Arno Hollosi (1997, FF4) |
首次發布 | 1987 |
最新版本 | 4 1997 |
格式類型 | mark up text |
作為容器 | Go (game) record |
自由格式? | yes |
網站 | www |
SGF的主要目的是存儲已玩遊戲的記錄,並提供存儲注釋和分析遊戲(例如棋盤標記,變化)的功能。它是純文本,基於樹形結構的格式。樹型結構使添加變化變得簡單。為了便於移植,它也是基於文本的,而不是二進制的。
以 SGF 格式存儲的遊戲可以輕鬆地通過電子郵件發送、發布或使用基於文本的工具進行處理。 1990 年以來的大多數互聯網圍棋服務器和圍棋軟件都支持這種格式。
關于格式
編輯一個 SGF 文件由屬性和屬性值的成對組成,每個屬性和屬性值描述遊戲的一個特徵。以下是一部分屬性的列表。 [1]
AB | 添加黑子:在第一步之前要放置在棋盤上的黑子位置 |
AW | 添加白子:第一步之前要放置在棋盤上的白子的位置。 |
AN | 注釋:評論遊戲的人的名字。 |
AP | 應用程序:用於創建 SGF 文件的應用程序(例如CGOban2,. . . ). |
B | 黑方在屬性值指定的位置下棋。 |
BR | Black Rank:黑色玩家的等級。 |
BR | 黑隊:黑隊的名稱。 |
C | 評論:評論。 |
CP | 版權所有:版權信息。 |
DT | 日期:比賽日期。 |
EV | 事件:事件的名稱(例如第 58 屆Honinbō冠軍賽)。 |
FF | 文件格式:管理此 SGF 文件的 SGF 規範版本。 |
GM | 遊戲:此 SGF 文件代表的遊戲類型。屬性值為 1 表示 Go。 |
GN | 遊戲名稱:遊戲記錄的名稱。 |
HA | 讓子:給黑棋的讓子數。使用 AB 屬性設置障礙石的位置。 |
KM | Komi:貼目。 |
ON | Opening:關於開局( 布局 )的信息,很少在任何文件中使用。 |
OT | 加時:加時制度。 |
B | Black Name:執黑棋手名字。 |
PC | 地點:比賽進行的地點(例如:東京)。 |
PL | 棋手所執棋子顏色。 |
PW | 白子棋手名字。 |
RE | Result:結果,通常格式為「B+R」(黑方勝退)或「B+3.5」(黑方勝3.5)。 |
RO | Round回合:(如:第5場比賽)。 |
RU | Rule規則:規則集(例如:日本規則)。 |
SO | Source來源:SGF 文件的來源。 |
SZ | Size尺寸:棋盤尺寸,支持非正方形板子。 |
TM | Time limit時間限制:以秒為單位的時間限制。 |
US | User用戶:創建 SGF 文件的人的姓名。 |
W | 白棋在屬性值指定的位置下棋。 |
WR | 白色等級:白色玩家的等級。 |
WT | 白隊:白隊的名稱。 |
沒有嚴格檢查這些標籤的內容,因此可以將任何文本放入例如結果標籤中。
變體嵌套在括號中,通常也分配字母。第一個分支(變體 A)是主分支。 [2]這種表示法源於Newick 格式。
點和移動的坐標系
編輯第一個字母代表列(從左到右),第二個字母代表行(從上到下)。棋盤的左上角用於小棋盤,例如用於13*13棋盤的字母"a"-"m"。
作者故意打破了用字母「A」到「T」(不包括「I」)和數字1-19標記棋步(和點數)的傳統。為了簡便和緊湊起見,改用了範圍在「a」到「s」的兩個小寫字母。
棋盤的左上角作為起點,對應於大多數現代計算機繪製屏幕坐標的方式,以簡化文本和圖形的集成。
支持的遊戲
編輯遊戲種類以編號表示,寫在屬性GM中,如圍棋為GM[1]。下表為SGF支持的遊戲與對應編號。
遊戲 | 編號[3] | 遊戲 | 編號 | 遊戲 | 編號 | 遊戲 | 編號 |
---|---|---|---|---|---|---|---|
圍棋 | 1 | 六貫棋 | 11 | 通橋棋 | 21 | Tripples | 31 |
黑白棋 | 2 | 鬥獸棋 | 12 | 冰山棋 | 22 | Chase | 32 |
國際象棋 | 3 | 中子棋 | 13 | Plateau | 23 | 塔王棋 | 33 |
五子棋或連珠 | 4 | 哲球棋 | 14 | 圈套棋 | 24 | Sahara | 34 |
直棋 | 5 | Quadrature | 15 | 雪地棋 | 25 | Byte | 35 |
雙陸棋 | 6 | 紐西蘭圈棋 | 16 | 套筒棋 | 26 | 聚焦棋 | 36 |
中國象棋 | 7 | Tantrix | 17 | 昆蟲棋 | 27 | 火山棋 | 37 |
日本將棋 | 8 | 亞馬遜棋 | 18 | 造島棋 | 28 | 沙漏棋 | 38 |
集結棋 | 9 | 八爪跳棋 | 19 | 板棋 | 29 | 星盤棋 | 39 |
同化棋 | 10 | 群相棋 | 20 | Kuba | 30 | 圍點棋 | 40 |
格式版本
編輯SGF的第一個版本FF [1]由Anders Kierulf在1987年構思。它是他的博士論文附錄A[3]。FF[3]由Martin Müller於1993年編寫。當前版本的SGF是Arno Hollosi的FF [4],並且受到大多數當前SGF閱讀器的支持。FF [2]從未公開發布。該格式已根據開放內容許可證公開發布。當前開發狀態(2016)為「非活動狀態」。
限制
編輯- 語言:圍棋在中國、日本和韓國被廣泛使用,但 SGF 格式無法為文本指定不同的翻譯。
- 元數據:只能存在一組有限的、固定的元數據,例如,SGF 有排名字段,但無法表示正在使用的排名系統。
- 便攜式遊戲符號- 記錄國際象棋遊戲的格式
- 便攜式草稿符號
參考
編輯- ^ Official Guide. Red-bean.com. 6 August 2006 [12 February 2016]. (原始內容存檔於2020-11-16).
- ^ Variation Guide. Red-bean.com. 7 January 1999 [12 February 2016]. (原始內容存檔於2020-10-20).
- ^ SGF Properties (FF[4]). 2006-06-25 [2023-06-07]. (原始內容存檔於2023-04-08).
外部連結
編輯- 官方網站
- Go Problems (頁面存檔備份,存於網際網路檔案館)