![]() Testing stockfish chess install#The first step was to install Stockfish as a command-line utility. ![]() Working with an UCI-enabled engine from the command line Installing Stockfish (and Leela Zero) This article explains how you can write your own UCI Client in Java, but I suppose you can apply the same knowledge in any other programming language. Technically there is documentation (protocol specification can be found here or here or here), but it’s not the type of documentation that holds you by the hand, and can be used without a little “reverse engineering” and “do it by yourself” testing. No! UCI uses OLD-SCHOOL process communication through stdin and stdout. You are not even connecting through a Network Socket. There’s no REST API waiting to be consumed. UCI is quite arcane, judging by today’s standards. It’s good that we have a standard, right? UCI stands for Universal Chess Interface. Little did I know: no maintained Java library does that.Īfter doing my research, I’ve found out that most modern chess engines implement a protocol called UCI. So my first reaction (as a programmer) was to find a Java library that “connects” to Stockfish (or to a similar open-source chess engine) and do the works for me. ![]() How often do I blunder pieces in blitz.How good I am compared to my opponent after (let’s say), move 10.Which opening I am the most successful with. ![]() My plan was to build something straightforward, you know, the type of statistics that would answer simple questions like: Recently my interest in chess surged (I blame Corona), so I’ve decided to write a set of tools for creating statistics about my games - I am a programmer, after all. I love chess it’s just that chess doesn’t love me back. Writing a Universal Chess Interface (UCI) Client in Java ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |