aboutsummaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md51
1 files changed, 51 insertions, 0 deletions
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..a01db3f
--- /dev/null
+++ b/README.md
@@ -0,0 +1,51 @@
+# A TUI for local play of the game of Tak
+
+## Building
+
+Clone the repo, issue `cargo build` and enjoy (?)
+
+## Usage
+
+Takwrap supports local play, undo, and starting variant and game
+exporting to PTN. See `takwrap -h` for options and details.
+
+Note in particular that `takwrap` supports the following alternate
+starting configurations, which are embedded in the exported PTN file
+as `[Variant XXX]`.
+
+- CPSn, counter-play start with n=1 is the default.
+
+ White places a black flat, then black places a white flat. This
+ repeats n times, after which normal play resumes.
+
+- FCS, forbidden corner start.
+
+ CPS1 but white may not place the black flat in a corner
+
+- FES, forbidden edge start.
+
+ CPS1 but white may not place the black flat on an edge
+
+- TPS, two ply start.
+
+ White places two black flats, then black places a white flat and
+ normal play resumes.
+
+- CZS, Czech start.
+
+ White places a black flat, then normal play resumes
+
+## Interfacing with engines
+
+Takwrap does not have computer opponents built in, but instead allows
+interfacing with external engine programmes with the `-e` parameter.
+It expects the name of an executable in the path which accepts the
+name of a file with a game-state in PTN, and which returns a single,
+valid move.
+
+See the file `wrap_taktician` for an example of utilising [Taktician](https://github.com/nelhage/taktician)
+for this purpose.
+
+Note that the engine is expected to respect the `[Variant XXX]` line
+in the PTN game-state, so expect breakage with anything but the
+default.