Кіріспе
Үстел ойындарын жазуға арналған файл пішімі, Go (ойын) үшін бағдарламалық жасақтама
software for Go (game)
Smart Game Format (SGF) – үстел ойындарының партияларын сақтауға қолданылатын файл пішімі. Go ойыны осы форматта ең көп кездесетін және деңгелік формат болып табылады. SGF бастапқыда Андерс Киерульф өзінің SmartGO бағдарламасы үшін басқа атаумен жасаған. SGF-тің басты мақсаты – ойналған партиялардың жазбаларын сақтау, сондай-ақ түсіндірмелермен және талданған партияларды сақтау мүмкіндігін ұсыну (мысалы, тақтаға белгілер қою, нұсқалар). Бұл тек мәтіндік, ағаш құрылымына негізделген формат. 1990 жылдан бері көптеген Internet Go серверлері мен Go бағдарламалық қамтамасы осы форматты қолдайды.
Формат туралы
SGF файлы ойынның бір ерекшелігін сипаттайтын қасиеттер мен қасиеттердің мәндерінен тұрады. Төменде қасиеттердің ішінара тізімі келтірілген. ABAdd Black: бірінші жүріс алдында тақтаға қойылатын қара тастардың орналасуы. AWAdd White: бірінші жүріс алдында тақтаға қойылатын ақ тастардың орналасуы. ANAnnotations: ойынды түсіндіретін адамның аты. APApplication: SGF файлын жасау үшін қолданылған бағдарлама (мысалы, CGOban2). Ba – қараның қасиеттерімен көрсетілген орынға жасалған жүріс. BRBlack Rank: қара ойыншының разряды. BTBlack Team: қара команданың атауы. CComment: түсініктеме. CPCopyright: авторлық құқық туралы ақпарат. DTDate: ойынның күні. EVEvent: оқиғаның атауы (мысалы, 58-ші Хонинбо титулы үшін матч). FFFile format: осы SGF файлын басқаратын SGF спецификациясының нұсқасы. GMGame: осы SGF файлында бейнеленген ойын түрі. 1 мәні Go ойынына сілтеме жасайды. GNGame Name: ойын жазбасының атауы. HAHandicap: қараға берілген кемшілік тастардың саны. Кемшілік тастардың орналасуы AB қасиетін пайдаланып белгіленеді. KMKomi: коми. ONOpening: ашылу туралы ақпарат (Фусеки), көбінесе файлдарда қолданылмайды. OTOvertime: қосымша уақыт жүйесі. PBBlack Name: қара ойыншының аты. PCPlace: ойын өткен орын (мысалы: Токио). PLPlayer: бастау үшін ойыншының түсі. PWWhite Name: ақ ойыншының аты. REResult: нәтиже, әдетте "B+R" (қаралар отставкамен жеңеді) немесе "B+3.5" (қаралар 3.5 ұпаймен жеңеді) форматында. RORound: тур (мысалы: 5-ші ойын). RURules: ережелер жинағы (мысалы: жапон). SOSource: SGF файлының көзі. SZSize: тақтаның мөлшері, шаршы емес тақталар да қолданылады. TMTime limit: уақыт лимиті, секундтарда. USUser: SGF файлын жасаған адамның аты. Wa – ақ түстің қасиеттерімен көрсетілген орынға жасалған жүріс. WRWhite Rank: ақ ойыншының разряды. WTWhite Team: ақ команданың атауы. Бұл таңбалардың мазмұны қатаң тексерілмейді, сондықтан нәтиже таңбасына кез келген мәтінді енгізуге болады. Вариациялар жақшалардың ішінде көрсетіледі және әдетте әріптермен белгіленеді. Бірінші тармақ (вариация A) – негізгі тармақ. Бұл жазу Newick форматынан шыққан.
Нүктелер мен қозғалыстардың координаттық жүйесі
Бірінші әріп бағанды (солдан оңға қарай), екіншісі қатарды (жоғарыдан төменге қарай) көрсетеді. Тақтаның жоғарғы сол жағы кіші тақталар үшін пайдаланылады, мысалы, 13*13 үшін "a" және "m" әріптері. Автор қасақана қимылдарды (және ұяшықтарды) "A" "T" ( "i" әрпін қоспағанда) әрі 1-ден 19-ға дейінгі сандармен белгілеу дәстүрін бұзды. Оның орнына қарапайымдық және ықшамдық үшін "a" мен "s" аралығындағы екі кіші әріп қолданылды. Тақтаның жоғарғы сол бұрышы координаталардың бастапқы нүктесі ретінде, мәтін мен графиканы біріктіруді жеңілдету үшін көптеген заманауи компьютерлер экран координаттарын көрсету тәсілімен сәйкес келеді.
Қолдауы бар ойындар
Қазіргі қолдау көрсетілетін ойындар: Amazons, Ataxx, Backgammon, Blokus, Byte, Chase, Chess, DVONN, Exxit, Focus, Gess, GIPF, Go, Gobblet, Gomoku+Renju, Hex, Hive, Hnefatafl, Jungle, Kropki, Kuba, Lines of Action, Neutron, Nine men's morris, Octi, Philosopher's Football, Plateau, PÜNCT, Quadrature, Reversi (Othello), Sahara, Shogi, TAMSK, Tantrix, Trax, Tripples, Tumbling Down, TwixT, Xiangqi, YINSH және ZÈRTZ. Ресми түрде қолдау көрсетілмесе де, sgf форматы Meridians үшін де қолданылады. Стандарт Go, Backgammon, Lines of Action, Hex, Amazons, Octi, Gess және TwixT ойындары үшін қосымша ойынға тән қасиеттерді белгілейді.
Форматтың нұсқалары
SGF-нің алғашқы нұсқасы FF[1] 1987 жылы Андерс Кирульфпен ұсынылды. Ол оның Ph.D. диссертациясының А қосымшасы болып табылады. FF[3] 1993 жылы Мартин Мюллер жазған. SGF-нің қазіргі нұсқасы Арно Холлозидің FF[4] нұсқасы, және көптеген қазіргі SGF оқырмандары оны қолдайды. FF[2] ешқашан жарияланбаған. Формат Ашық мазмұн лицензиясымен жарияланды. 2016 жылғы қазіргі даму күйі – "белсенді емес". FF[4] ескірген, бірақ одан кейінгі жаңа нұсқасы әлі шығарılмаған. Қазіргі қолданылуы туралы сипаттама мен кейбір ұсыныстар үшін қараңыз.
Шектеулер
FF[4] стандартының кейбір мәселелері бар, олар оны үлкен ойын жинақтары үшін қабылдауды мүмкін емес немесе кем дегенде ақылға қонымсыз етеді. Талқылау үшін мынаны қараңыз. Көптеген қасиеттерді көрсету үшін стандартты белгінің болмауы шынымен шектеу емес. Жүйе кеңейтілгіш, жаңа белгілер ойлап табуға болады, және әрине, мұндай жағдайлар бұрын да болған. Біраз уақыт өткен соң, жаңа белгілердің арасында кең таралғандары стандартқа айналады.
and of course that has happened already. After a while, the popular ones among the new labels become standard.