Ploy in Ada for Microsoft Windows (Version 0.8)
Here is an open source Ploy implementation for Windows written in Ada.
PLOY is a piece capturing board game similar to chess for two or four players. Here pieces have a limited range i.e. they cannot move arbitrarily far and the direction a piece may move is limited, but can be changed during the course of the game. Similarly to chess the aim of the game is to catch a special figure, which is called commander here.
The game has been designed by Frank Thibault and was published in 1970 as one of the famous 3M bookshelf games.
For about 35 years I did several implementations in different programming languages, but finally I have completed it in Ada for the Windows platform in 2012. I hope you find it has been worthwhile...
This implementation supports all three game modes of Ploy: two player game, partnership game and four player game. For best move calculation it uses several strategies: a MTD(f) search strategy, a transposition table with 223 slots (in the standard configuration) and also records of several refutation moves per search level. Nevertheless on a current computer system a thinking time of less than 40s per move leads to a very bad play by the engine. PLOY has no endgame or opening library, but at least it plays reasonable with a thinking time of 60-120s.
A detailed description of the game and the program is available as the help file of the game.
You can download the following files here
the complete sources in a ZIP archive plus installation scripts.
The source is a so-called literate program. This means that documentation and Ada code is combined into a booklike document. For building the Ploy executable and the PDF literate program document you need a LaTeX, a GNU-Ada and a GtkAda installation.