SebLague / Chess-Challenge

Create your own tiny chess bot!
https://www.youtube.com/watch?v=Ne40a5LkK6A
MIT License
1.78k stars 1.07k forks source link

Add a UCI implementation #409

Open b4ux1t3 opened 11 months ago

b4ux1t3 commented 11 months ago

I started drawing up a UCI implementation that wraps the API.

Currently, it supports most commands, ignoring quit commands and just responding that it's ready to isready commands.

I vetted the functionality by running my bot as a UCI engine with lichess-bot. I appear to have covered all of my bases, though I do not correctly handle the different kinds of go commands at the moment.

I ran into a few problems when working with the engine, and have hacked around them as best I can.

Any help from the maintainer in addressing some of the issues (through application of actual understanding of the library, as opposed to blindly bashing things together until they work) would be greatly appreciated.

I believe this satisfies https://github.com/SebLague/Chess-Challenge/issues/145, as well as any other open issues about a UCI implementation.