36个版本
0.1.36 | 2021年2月1日 |
---|---|
0.1.35 | 2021年2月1日 |
0.1.34 | 2021年1月29日 |
#878 in 游戏开发
每月120次下载
36KB
643 行
lichessbot
lichess机器人。建设中。
使用方法
use log::{info, log_enabled, Level};
extern crate env_logger;
use dotenv::dotenv;
use lichessbot::lichessbot::*;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
dotenv().ok();
env_logger::init();
let bot = Box::leak(Box::new(
LichessBot::new()
.uci_opt("Move Overhead", 500)
.uci_opt("Threads", 4)
.uci_opt("Hash", 128)
.uci_opt("Contempt", -25)
.enable_classical(false)
.enable_rapid(false)
.disable_blitz(false)
.disable_bullet(false)
.enable_ultrabullet(false)
.enable_casual(true)
.disable_rated(false),
));
if log_enabled!(Level::Info) {
info!("starting bot stream");
}
let (tx, mut rxa) = bot.stream().await;
tokio::time::sleep(tokio::time::Duration::from_millis(120000)).await;
let _ = tx.send("stopped by user".to_string()).await;
let result = rxa.recv().await;
if log_enabled!(Level::Info) {
info!("stop stream result {:?}", result);
}
Ok(())
}
日志记录
export RUST_LOG=info
# or
export RUST_LOG=debug
配置
设置环境变量如下
令牌
RUST_BOT_TOKEN={lichessAPI带有机器人权限的令牌}
机器人名称
RUST_BOT_NAME={lichess机器人用户名}
示例
RUST_BOT_NAME=chesshyperbot
引擎名称(可选)
RUST_BOT_ENGINE_NAME={引擎可执行文件名称}
示例
Linux RUST_BOT_ENGINE_NAME=./stockfish12
Windows RUST_BOT_ENGINE_NAME=stockfish12.exe
如果没有提供引擎名称,将播放随机移动。
依赖关系
~12–27MB
~411K SLoC