I've seen a few questions about standardized tafl notation in some threads in this subforum, so I thought I'd point to some work I've done on that front as part of my OpenTafl project. In particular, I've written specifications for computer-parseable formats for tafl variant rules and tafl games, as well as a specification for a protocol for communication between tafl engines and AIs.
The rules and games format can be found here: https://github.com/jslater89/OpenTafl/b ... n-spec.txt
The engine protocol can be found here: https://github.com/jslater89/OpenTafl/b ... otocol.txt
Serializers and deserializers written in Java and released to the public domain are found here: https://github.com/jslater89/OpenTafl/t ... l/notation
I haven't had much time lately to work on OpenTafl, but these elements are relatively well-tested and used throughout the OpenTafl codebase, so they're quite mature as far as these things go.
OpenTafl notation formats
-
- Posts: 21
- Joined: Thu Jan 21, 2021 9:00 pm
- Location: Gloucester, Great Britain
- Contact:
Re: OpenTafl notation formats
Hi,
Has any decision been made about choosing a format to store game records?
If not then may I throw in my own suggestion that it would be simple just to use either a modified form of the PGN notation for Chess, or else
use SGF ( Smart Game Format, https://www.red-bean.com/sgf/ ) which is already used for many games.
The same game in both formats could be stored as:
Modified PGN:
[Game "tablut"]
[Size "9"]
[Black "ypercube"]
[White "dashstofsk"]
[Date "2021-01-16"]
[Result "0-1"]
[Board "412"]
1. i6-g6 e7-g7:g6 2. i5-i7 f5-f7 3. f9-f8 e6-b6 4. a4-b4 Ke5-e7 5. e9-g9 Ke7-a7 0-1
SGF:
(
GM[Tablut]
SZ[9]
PB[ypercube]
PW[dashstofsk]
DT[2021-01-16]
RE[0-1]
BO[412]
;B[ifgf] ;W[eggg:gf] ;B[ieig] ;W[fefg] ;B[fifh] ;W[efbf] ;B[adbd] ;W[eeeg] ;B[eigi] ;W[egag]
)
And that captures be indicated by appending something like ':g6' or ':gf' to any capture move.
It really would be useful if games and tournaments from this site could be downloadable in some portable notation.
Has any decision been made about choosing a format to store game records?
If not then may I throw in my own suggestion that it would be simple just to use either a modified form of the PGN notation for Chess, or else
use SGF ( Smart Game Format, https://www.red-bean.com/sgf/ ) which is already used for many games.
The same game in both formats could be stored as:
Modified PGN:
[Game "tablut"]
[Size "9"]
[Black "ypercube"]
[White "dashstofsk"]
[Date "2021-01-16"]
[Result "0-1"]
[Board "412"]
1. i6-g6 e7-g7:g6 2. i5-i7 f5-f7 3. f9-f8 e6-b6 4. a4-b4 Ke5-e7 5. e9-g9 Ke7-a7 0-1
SGF:
(
GM[Tablut]
SZ[9]
PB[ypercube]
PW[dashstofsk]
DT[2021-01-16]
RE[0-1]
BO[412]
;B[ifgf] ;W[eggg:gf] ;B[ieig] ;W[fefg] ;B[fifh] ;W[efbf] ;B[adbd] ;W[eeeg] ;B[eigi] ;W[egag]
)
And that captures be indicated by appending something like ':g6' or ':gf' to any capture move.
It really would be useful if games and tournaments from this site could be downloadable in some portable notation.