All Projects → tailuge → bot-o-tron

tailuge / bot-o-tron

Licence: GPL-3.0 License
Try out lichess' bot interface

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to bot-o-tron

liPGN
This program uses the lichess REST API to retrieve all the games of a user and transform them into a big PGN file that you can then import into your favourite game analysis tool (ie. scid)
Stars: ✭ 14 (-61.11%)
Mutual labels:  chess, lichess-api, lichess
liground
A free, open-source and modern Chess Variant Analysis GUI for the 21st century
Stars: ✭ 41 (+13.89%)
Mutual labels:  chess-engine, chess, lichess
elephantfish
elephantfish: 一个只有124行的中国象棋引擎
Stars: ✭ 129 (+258.33%)
Mutual labels:  chess-engine, chess
rustic
Rustic is a chess engine. It is written from scratch, in the Rust programming language.
Stars: ✭ 68 (+88.89%)
Mutual labels:  chess-engine, chess
chessground
Chessground React Wrapper
Stars: ✭ 15 (-58.33%)
Mutual labels:  chess, lichess
lc0-docker
lc0docker: run lc0 chess client and lichess bot under Docker and Kubernetes
Stars: ✭ 26 (-27.78%)
Mutual labels:  chess-engine, lichess
ConvChess
Convolutional Neural Networks learns to play chess moves
Stars: ✭ 14 (-61.11%)
Mutual labels:  chess-engine, chess
littlewing
Chess engine written in Rust ♛
Stars: ✭ 27 (-25%)
Mutual labels:  chess-engine, chess
Demolito
UCI Chess Engine
Stars: ✭ 41 (+13.89%)
Mutual labels:  chess-engine, chess
stockfish-chess-web-gui
Responsive chess web GUI to play against the Stockfish 10 chess engine. Multiple web GUI implementations have also been included.
Stars: ✭ 21 (-41.67%)
Mutual labels:  chess-engine, chess
renpy-chess
A chess GUI built with Ren'Py, python-chess, and Stockfish. Version 2.0 of https://github.com/RuolinZheng08/renpy-chess-engine
Stars: ✭ 36 (+0%)
Mutual labels:  chess-engine, chess
Realtime-OpenCV-Chess
♔ Chess-playing with Open-CV [Human vs AI (Stockfish engine)]
Stars: ✭ 18 (-50%)
Mutual labels:  chess-engine, chess
lila-tablebase
Tablebase server
Stars: ✭ 51 (+41.67%)
Mutual labels:  chess, lichess
uci
A thin wrapper on a uci chess engine
Stars: ✭ 33 (-8.33%)
Mutual labels:  chess-engine, chess
stockfish.js
The strong open source chess engine Stockfish compiled to JavaScript and WebAssembly using Emscripten
Stars: ✭ 140 (+288.89%)
Mutual labels:  chess, lichess
OpenChess
A cross-platform chess game.
Stars: ✭ 18 (-50%)
Mutual labels:  chess-engine, chess
should-i-play-f6
Chess project to analyze the statistical effect of playing f3 (as white) or f6 (as black) on the outcome of the game.
Stars: ✭ 15 (-58.33%)
Mutual labels:  chess, lichess
lila-openingexplorer
Opening explorer for lichess.org that can handle all the variants and billions of unique positions
Stars: ✭ 89 (+147.22%)
Mutual labels:  chess, lichess
chess-openings
An aggregated data set of chess opening names
Stars: ✭ 223 (+519.44%)
Mutual labels:  chess, lichess
chessops
Chess and chess variant rules and operations in TypeScript
Stars: ✭ 66 (+83.33%)
Mutual labels:  chess, lichess

bot-o-tron

Build Status Coverage Status Dependency Status devDependency Status CodeFactor Open in Gitpod

Try out lichess' bot interface https://lichess.org/api#tag/Bot

Setup

$ nvm use v10.15.3
$ yarn install

# Linux
$ export API_TOKEN=xxxxxxxxxx

# Windows
$ setx API_TOKEN xxxxxxxxxx

Test

$ yarn test

Run

$ yarn start

To implement your chess bot you only need to create one class that implements the method:

  getNextMove(moves) {
      return uciMove;
  }

Where moves is a list of moves so far in uci format e.g. ["e2e4", "b8c6", "f2f4"]

See RandomPlayer for minimal implementation using chess.js

Hosting

If you register a free heroku account you can host a BOT like this one as is - just add your API_TOKEN to the environment property configuration. This code auto deploys and is live at https://test-o-a.herokuapp.com/

Hostless

You do not need to own a server to host a BOT, this code also runs in a browser. Watch how a BOT communicates with the server https://tailuge.github.io/bot-o-tron/dist/testBot.html

Tounaments

Compare bots locally - and the winner of the 8 x round-robin tournament is...

$ yarn tournament

Results
[ { player: 'AntiPatzerPlayer    ', score: 32.5 },
  { player: 'PatzerPlayer        ', score: 23 },
  { player: 'RandomPlayer        ', score: 22.5 },
  { player: 'SwarmKingPlayer     ', score: 18 } ]
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].