ejrh / othello

Othello implementation in Rust

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Othello

This is a toy project for playing with various implementations of AI players for the Othello board game.

It is inspired by the many techniques for Chess AI players, as documented in the Chess Programming Wiki.

Project structure

The three main packages are:

  • othello_game - Game and board representation (including bitboards) and rules; the core crate
  • othello_ai - The AI trait and several implementations (random, immediate, minimax, alphabeta)
  • othello the primary package, contains some binaries and nothing else

There is an optional package othello_gui which is a Bevy GUI application. It is not compiled by default as it brings in a lot of dependencies that aren't needed for the other packages.

WASM

Compiling GUI to WASM:

    cargo build --release --bin othello_gui --target wasm32-unknown-unknown
    wasm-bindgen --out-name othello_gui --out-dir target\for-web --target web target/wasm32-unknown-unknown/release/othello_gui.wasm

Copy contents of target/for-web to web server.

About

Othello implementation in Rust


Languages

Language:Rust 99.0%Language:HTML 1.0%