2 stable releases
1.0.1 | Jun 19, 2022 |
---|
#715 in Game dev
24 downloads per month
Used in board-game
285KB
6K
SLoC
Step based Arimaa Engine
Overview
A game engine for the board game Arimaa. This library provides the functionalities:
- Generate a set of valid steps from any state.
- Generate a set of valid moves from any state.
- Supports Zobrist hashing for transpositions.
- Parsers for boards and actions.
Documentation
Example
Parse a game state and take an action and generate a set of valid actions from that state.
use arimaa_engine_step::{action, board};
let game_state = board!(
"2g
+-----------------+
8| h c d m e d c h |
7| r r r r r r r r |
6| x x |
5| |
4| |
3| x x |
2| R R R R R R R R |
1| H C D M E D C H |
+-----------------+
a b c d e f g h"
);
let action = action!(d2n);
let game_state = game_state.take_action(&action);
println!("{:?}", game_state.valid_actions());
Additional Examples
License
This project is licensed under the MIT license.
Dependencies
~2.7–4MB
~66K SLoC