6 个版本
使用旧 Rust 2015
0.1.2 | 2015年5月9日 |
---|---|
0.1.1 | 2015年5月7日 |
0.0.3 | 2015年4月14日 |
#721 in 游戏
105KB
2.5K SLoC
ggp-rs
ggp-rs
是一个基于 GGP Base 的 Rust 语言库,用于创建 GGP (通用游戏玩家) 玩家。虽然 GGP Base 允许创建基于命题网络或逻辑证明器的玩家,但这个库目前只支持基于逻辑证明器的玩家。这个逻辑证明器的性能与 GGP Base 中的类似。
请提交 问题 报告错误或请求功能。欢迎 Pull requests。
安装
您可以通过在您的 Cargo.toml
中添加以下内容来从 crates.io 安装此库:
ggp-rs = "*"
示例
以下是一个随机合法移动的玩家的示例(此示例可在 examples
文件夹中找到)
extern crate rand;
extern crate ggp_rs;
use ggp_rs::{Player, Game, Move};
use std::net::Ipv4Addr;
struct RandomPlayer;
impl Player for RandomPlayer {
fn name(&self) -> String {
"RandomPlayer".to_string()
}
fn select_move(&mut self, game: &Game) -> Move {
let state = game.current_state();
let role = game.role();
let mut moves = game.legal_moves(state, role);
let r = rand::random::<usize>() % moves.len();
moves.swap_remove(r)
}
}
fn main() {
ggp_rs::run((Ipv4Addr::new(0,0,0,0), 9147), RandomPlayer);
}
要测试玩家,您可以使用 GGP Base 中的 Server
应用程序或在与 Tiltyard 的账户中添加您的玩家。注意,您应该使用 cargo run --release
运行您的玩家,否则您的玩家可能不够快,无法参加大多数游戏。
更多示例和玩家可以在 src/player
中找到。
请注意,ggp-rs
输出可能会发现有用的日志信息。建议将日志级别至少设置为警告并更高,并且可以根据需要将其设置为 info(但建议不要使用 debug)。要设置警告级别的日志级别,请初始化 env_logger
并使用 RUST_LOG=ggp_rs=warn cargo run --release
运行 cargo。
文档
您可以在 此处 找到 API 文档。
许可证
依赖
~8–10MB
~175K SLoC