#go #Baduk #goban #Igo

goban

Library for go move generation and go ruling

29 releases

✓ Uses Rust 2018 edition

0.4.5 Apr 9, 2019
0.4.4 Mar 31, 2019
0.3.9 Mar 6, 2019
0.3.5 Feb 28, 2019
0.1.9 Dec 24, 2018

#10 in Games

Download history 28/week @ 2019-01-23 4/week @ 2019-01-30 20/week @ 2019-02-06 23/week @ 2019-02-13 46/week @ 2019-02-20 81/week @ 2019-02-27 74/week @ 2019-03-06 54/week @ 2019-03-13 159/week @ 2019-03-20 52/week @ 2019-03-27 38/week @ 2019-04-03 19/week @ 2019-04-10 1/week @ 2019-04-17 36/week @ 2019-04-24 60/week @ 2019-05-01

217 downloads per month

MIT license

33KB
705 lines

Goban

Library to play with a rusty goban

Channel : stable

Only contains move generation, and rules there is no IA, neither front-end.

Exemple :

let mut g = Game::new(GobanSizes::Nine, Rule::Chinese);
        let mut i = 35;
        while !g.legals().count() != 0 && i != 0 {
            g.play(
                &g.legals().map(|coord| Move::Play(coord.0, coord.1))
                    .choose(&mut rand::thread_rng())
                    .unwrap());
            i -= 1;
            println!("{}", g.goban().pretty_string());
        }
.........
.........
.........
.........
.........
.........
.................
.........


etc...

What works (or seem to works)

  • Capturing stones
  • Playing
  • Passing
  • Resigning
  • Implementation to count points
  • Printing an ugly ascii goban
  • Generate legals moves
  • Japanese Rules
  • Chinese Rules

In actual development

  • Documentation

What is not in point:

  • Handling dead stones at the end of the game.

Dependencies

~769KB
~17K SLoC