Giter Club home page Giter Club logo

toledo-uci's Introduction

Toledo NanoChess UCI

Toledo NanoChess is originally a killer chess engine because it is the smallest one in the world ! The quality of the code within so few bytes is totally incredible.

This UCI version is a derivative work of the library Toledo NanoChess released in 2013 for JavaScript. It has some benefits :

  • Play with a desktop application through the modern UCI protocol.
  • Undo the last move without losing your game.
  • With pyChess' slider, select the strength of the AI when you start a new game (6 is a good value).
  • Toledo plays both White and Black.
  • Play Chess960 with unsupported castling.
  • Information about the analysis : processing time, nodes, nodes per second...

Despite it was coded and tested in just three days, this UCI port doesn't aim to be the smallest one in the world... ;-)

Install

First, install NodeJS.org which is the host application to run the script.

For pyChess, just add toledo-uci.js to the list of engines.

For WinBoard, add this new line in the engine list :

"Toledo NanoChess UCI" -fcp 'C:\full-path-to\node.exe "C:\full-path-to\toledo-uci.js"' -fn "Toledo NanoChess UCI" -fUCI

For the command line, execute node toledo-uci.js.

License

Refer to the header of the main JavaScript file to know more about the license.

Supported commands

  • uci
  • setoption name Skill Level value (number) where (number) is a level between 1 and 20
  • isready
  • ucinewgame
  • position startpos
  • position startpos moves (string) with as many moves written in UCI format (like e2e3) as needed
  • position fen (string) where (string) is a complete position in FEN format
  • position fen (string) moves (string)
  • debug displays Toledo NanoChess' internal variables
  • debug move (string) where (string) is a move to perform written in UCI format (like a2a1q)
  • debug board displays the internal board
  • debug quality executes the automated quality check
  • go
  • go depth (number) where (number) is the forced depth to reach (it temporarily overrides the current strength of the AI)
  • quit

Any other command is unsupported (like stop) or partially ignored (like go infinite).

toledo-uci's People

Contributors

ecrucru avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

rbs-pli alperbek

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.