/gomoku-rust

Primary LanguageRustMIT LicenseMIT

Gomoku engine

Description

Simple Gomoku engine written in Rust with CLI and optional GUI.

Features

  • minimax search
  • heavily parallelized using rayon
  • iterative deepening with time limit
  • 100% safe Rust
  • CLI and GUI

Installation

Requires Rust toolchain installed and set-up.

cargo install --path .

Alternatively, the GUI has precompiled binaries for download in latest release.

Usage

Interactive

gomoku <player> <time>

  • player - who should go first (x or o) - engine always plays as x, human as o
  • time - time limit for computing in milliseconds

Reads input from stdin in format d6 (letter is horizontal, number is vertical)

Single position evaluation

gomoku <player> <time> -d <file>

  • player - which symbol should engine evaluate as (x or o)
  • time - time limit for searching in milliseconds
  • file - path to file with position to evaluate

Evaluates the position and prints the best move + the board and some stats.

Input file example:

---------
---------
---x-----
---xoo---
----xo---
---xxxo--
------oo-
--------x
---------

GUI

More info here: Gomoku GUI.