Development

Here you can access all the sources for the Sigtyr Tablut playing engine as well as the web interface. Note that the source of the engine is unavailable until the end of LIACS AI2014.

The Chess Programming Wiki has been proven to be very useful in the development.

Known Issues

Very limited browser support. Why does everyone want to use a different standard?

The LIACS webserver is very limited in capacity. Therefore we use only a small transposition table.

The web interface is unable to check for repetition draws (normally, threefold repetition is declared a draw). Mainly because the engine cannot run continuously (this is a PHP issue).

The engine communicates via STDIN and STDOUT. The original plan was to start a PHP session which launches an instance of the engine with pipes bound to its STDIN and STDOUT. This way only moves have to be comminucated as with the terminal version. We used proc_open to launch a process with bound pipes. However, at the end of a PHP page the function proc_close is called (stackoverflow), which is not our intention.

Web Interface

This website is developed using XHTML, CSS, JavaScript, Ajax, PHP, and C++. And is compliant with Mozilla Firefox, W3C Markup Validation Service, W3C CSS Validation Service, JSLint, and GCC.

Core (game logic)

The game logic is written in C++. It makes some assumptions on the platform: little-endian, x86/x86-64.