Questions tagged [uci]

Universal Chess Interface (UCI) is the interface protocol used by most of the major chess engines.

Filter by
Sorted by
Tagged with
2 votes
0 answers
48 views

Issue with connecting engine to lichess bot (uci communication)

My engine is responding correctly to the first inputs from the GUI (as above), but when it receives go movetime 10000 it just crashes and I don't know why. When I test my engine manually in CMD I get ...
user avatar
  • 103
2 votes
0 answers
96 views

Understanding Leela Chess Zero (Lc0) "verbose-move-stats output"

I'm trying to fully understand the Leela's verbose-move-stats output: Are the statements below correct? The move that will be played is e2e4, since it's the one with the greatest count of visits (N: ...
user avatar
-1 votes
1 answer
84 views

UCI - what should be the value of movestogo

Playing a bullet game(1 min) against UCI engine, I would send these command from GUI uci setoption name Hash value 256 isready ucinewgame position startpos e2e4 go wtime 60000 btime 60000 ...
user avatar
  • 181
1 vote
1 answer
86 views

Example of "lowerbound" and "upperbound" in the UCI protocol

I am having trouble understanding how "upperbound` and "lowerbound" come into play in the UCI protocol. The spec says: lowerbound: the score is just a lower bound. upperbound: the ...
user avatar
5 votes
1 answer
326 views

Obtain information about a a position from Stockfish

I want to know from Stockfish: All possible moves in a position, a.k.a. a depth 1 analysis with no score. If the king is in check, is checkmated, or if there is a draw. The current FEN string, after ...
user avatar
  • 301
1 vote
1 answer
131 views

Unable To Communicate with UCI through Java Program

I am writing a java program to connect to the Stockfish Engine and get the best move for some FENs. My Connection code is : public class connector { private Process engineProcess; private ...
user avatar
  • 31
4 votes
1 answer
216 views

What is the idea of 'ponder' in the UCI protocol?

I've created my own chess engine and now I'm trying to connect it into the Chess Arena. Everything is actually working fine when I play them together (Demo). But I tried to play with it and didn't ...
user avatar
2 votes
1 answer
355 views

Can all UCI engines output a FEN for the current position or is it just StockFish?

I know in StockFish if you type "d" you get an ascii view of the board and a FEN string for the current state. Is there any command in other UCI engines such as Rybka 4 that will output a ...
user avatar
2 votes
1 answer
157 views

Why do some UCI engines restrict input moves to 23 when using the command prompt?

I am using some UCI engines from a command prompt. Most work fine (i.e. Stockfish, Houdini, Komodo) but when I use e.g. SOS (ver.5.1) or Hermann (Ver.2.8), I cannot seem to type any more moves after ...
user avatar
  • 21
1 vote
2 answers
273 views

Is it preferable to pass a FEN notation or list of moves to a chess engine?

I am actually programming a chess UI and I'd like to communicate with a chess engine using UCI protocol. After reading the protocol specifications, I am not sure how to use the position command. For ...
user avatar
  • 13
1 vote
1 answer
329 views

Why is stockfish not accepting my move?

I am trying to play with stockfish from terminal. I entered the following commands: position startpos e2e4 d The output was: Why is stockfish not accepting my move?
user avatar
1 vote
1 answer
564 views

Using Stockfish in an automated way, for example, to analyze games in pgn format

I am looking for a way to use Stockfish for an automated analysis of games which I have in pgn format. Similar to Fritz/Chessbase's Blunder Check function I would like Stockfish (or any other UCI ...
user avatar
  • 121
2 votes
1 answer
378 views

How can I send a UCI command to a chess engine in Python?

I have a followup question to my previous thread: Python script to let stockfish selfplay 10 games from a given position There are some engines that allow you to set a command that imposes that the ...
user avatar
  • 243
4 votes
1 answer
1k views

Python script to let stockfish selfplay 10 games from a given position

I would like to have Stockfish to selfplay 10 games starting from a given position. Game should end after 10 moves. From the python-chess documentation there is an example of playing only one such ...
user avatar
  • 243
2 votes
1 answer
445 views

Debugging my chess engine through the Arena GUI

I coded (with visual studio 2019 on windows 10) an ultra naive chess engine that complies with UCI engine interface rules. Before starting to develop it in more fancy ways, I want to make sure that I ...
user avatar
  • 564
-2 votes
1 answer
256 views

How to force Stockfish to make mistake [closed]

I developed a bot. It had a 100% win rate and my account was banned. I need to get it to make mistakes but can't force Stockfish to do it. How can I modify Stockfish to make mistakes?
user avatar
2 votes
3 answers
949 views

When to use Clear Hash

I am developing a program that analyzes games sequentially, i.e. one game after another. Below are the parameters. Engine: Stockfish 10 Threads: 2 Hash Table: 4000 Depth: 30 My question is about ...
user avatar
2 votes
3 answers
567 views

How to use Arena GUI outputs in a python program

I'm currently developing a self-playing chessboard on which I'd like to implement an Artificial Intelligence (AI) (currently it's Stockfish. I would like to know how I could, if I can, export Arena ...
user avatar
  • 21
3 votes
1 answer
2k views

How to use the Ponder option in stockfish / UCI

I'm trying to understand stockfish Ponder functionality. I'm very interested to let stockfish think when the opponent is thinking. From what I understand you can do it as follows $> uci $> ...
user avatar
0 votes
1 answer
387 views

Standard for current position evaluation via UCIs

I am trying to interact with stockfish via UCI to get a current evaluation of the board. When you do a simple position startpos go depth 10 The board will helpfully return ...[previous depths] ...
user avatar
  • 103
3 votes
1 answer
277 views

How does "go mate <x>" work in UCI

In the UCI documentation, it says mate x search for a mate in x moves However, I believe this should say "search for mate in x plies", as plies are used in most of the protocol. I can ...
user avatar
  • 315
0 votes
2 answers
183 views

Regarding Chessbase softwares

I have bought Houdini 6 pro ( ChessBase version ), for the primary purpose of practising by playing games against Houdini 6 pro (and other engines I own) I cannot figure out how to play a game against ...
user avatar
  • 21
1 vote
2 answers
339 views

Testing an engine (UCI) against an older version of itself

I am making modifications to a chess engine. I want to get quick feedback on whether the modified version seems stronger than an unmodified version or not, by fighting the older version multiple ...
user avatar
  • 13
4 votes
2 answers
1k views

Python and UCI engine

I'm working with Stockfish in Python 3. And when I do something like this: I get just "bestmove e2e4". How can I retrieve full information? Like this:
user avatar
4 votes
5 answers
1k views

Reasonable engines to test against (Not StockFish)

I've built a chess engine in Python which I've been testing against StockFish through the use of the Python-Chess package. Testing against StockFish seems/is problematic, and as a result I'm ...
user avatar
6 votes
1 answer
2k views

Why does Stockfish give a negative score in a theoretical win for white?

8/3k4/8/3K4/3P4/8/8/8 b - - 0 1 (Black to move) This is a theoretical win since White has the opposition and the king is in front of the pawn. I have downloaded the Windows version for Stockfish 9 ...
user avatar
2 votes
1 answer
858 views

Connecting UCI engine with iOS? [closed]

So I'm not actually making a Chess app, but I am trying to hook up an engine that uses a protocol almost exactly the same as UCI. I can get it working quite easily on a macOS app. Now, the hard part ...
user avatar
4 votes
2 answers
4k views

Is there a list of hidden/deleted Stockfish commands?

I have downloaded the latest version of Stockfish, and I am running it on the command line. There is a hidden command 'd' which displays the current board. Also, the "debug on" command is not ...
user avatar
5 votes
2 answers
741 views

How do UCI chess engines handle the 50-move or threefold repetition rules when playing against other engines?

I'm working on an engine that implements the UCI protocol that is intended to play against other engines. Since the UCI protocol has no commands for offering or accepting draws, how does this work ...
user avatar
  • 151
-1 votes
1 answer
794 views

where are the revision logs for asmFish

Please help because I can't find the revision logs on any website. I want to download version 051117 but I literally cannot get any website to have it.
user avatar
5 votes
1 answer
493 views

how does a uci engine draw or resign?

I am writing a UCI chess AI/engine. It has the ability to draw and resign. How do I communicate this to the uci chess interface? what string shoud i send back to the GUI?
user avatar
1 vote
2 answers
141 views

Changing UCI output to include piece names

UCI output from engines is generally raw in the form of g1f3 and e2e4 representing Nf3 and Pe4. One engine I saw (lozza) sends its PV output with the piece names. Others, like Stockfish, don't ...
user avatar
1 vote
1 answer
214 views

Stockfish: Engine suddenly changed the side?

I asked this question in stockfishchess.org support but didn't get any response. So I'm trying to get some answers from you all. My question: Please find the output of communication with the engine ...
user avatar
  • 165
4 votes
1 answer
795 views

How to use ending evaluation in UCI interaction with Stockfish

Playing around with the Stockfish 8 UCI from the terminal, I've managed to make it compute moves, and set the position and load Syzygy tables. But how I can know if an endgame, one that corresponds ...
user avatar
  • 143
2 votes
1 answer
2k views

What exactly means centipawns field in stockfish/uci output?

According to this page: cp the score from the engine's point of view in centipawns. but is it a score for the current (start) position of the game that I feed to engine, or it is a ...
user avatar
3 votes
1 answer
377 views

Best way to use UCI engine to play against itself

So far I used UCI only to make analysis of particular positions, sending FEN, showing multipv, analysing fixed depth/time, clearing hash for every next position. Now I would like to make the same ...
user avatar
  • 3,256
1 vote
1 answer
218 views

Is there any UCI engine that presents DTZ information from syzygy in analyse mode?

Many UCI engines that can read syzygy database put same score for every winning move (#1000 in komodo, +123.53 in stockfish, ...) and you have no idea how to make real progress when analysing root ...
user avatar
  • 3,256
10 votes
1 answer
4k views

Returning scores for all possible moves from a chess engine

I am looking for a way to return scores for all possible moves from a chess engine (preferably, Stockfish). The UCI protocol does not seem to require it, but is seems like a useful feature to include....
user avatar
0 votes
1 answer
290 views

How I tell the UCI engine to show less info during search?

Is there a UCI command to output only selected info? For example if my input is setoption name MultiPV value 3 go depth 8 I get info for every depth itineration in the search: info depth 1 seldepth ...
user avatar
4 votes
1 answer
575 views

Why am I getting different behaviour between using stockfish as a child node process and a CLI called process?

Copied this question from stackoverflow. Not 100% sure it belongs here but we'll see... I am building a web interface for the stockfish chess engine using Node, and I noticed that the behaviour of ...
user avatar
  • 141
5 votes
2 answers
4k views

I'm confused by UCI Pondering and Time Control

I'm trying to talk to a UCI engine (right now Stockfish, but more generally to all UCI engines) to write my own computer-vs-computer program (I could use Fritz, but I really want to learn more about ...
user avatar
2 votes
1 answer
371 views

SAN for nullmove?

The long algebraic notation (lan) for null move is usually 00-00 or simply 0000. Chess engines that support the nullmove: "give up a turn, and let the other side move" typically use this as its part ...
user avatar
2 votes
1 answer
1k views

How to read score from stockfish - inconsistent response every call?

I was setup stockfish with: uci setoption name hash value 128 setoption name threads value 4 That I try to evaluate my first moves to learn how it works (I am programmer) but I received random ...
user avatar
  • 501
4 votes
1 answer
1k views

UCI go with depth and movetime

Is it possible to perform analysis with stockfish for a given depth, but stop in case it is taking longer than a specified time? Something like this: go depth 17 max movetime 10000 or setoption ...
user avatar
1 vote
2 answers
4k views

How to setup a chess engine to play itself?

I'm participating in some engines-on correspondence games at ficgs.com. To assist in my analysis of my games, I'd like to set up a chess engine (probably Komodo9 which I own) to play moves against ...
user avatar
  • 183
3 votes
2 answers
4k views

How to measure strength of my own chess engine? [duplicate]

I'm wondering how can I estimate ELO ranking of my own written engine. I figure out that I have to connect my engine with some well known engine (via UCI protocol?) to be able to play automatically ...
user avatar
  • 131
1 vote
1 answer
499 views

UCI undo move command?

I checked the UCI specification here and I don't see a way to undo a move. I'm using stockfish, is there a way to do this? For example, how would I accomplish the following: position startpos moves ...
user avatar
0 votes
1 answer
2k views

When evaluating score of new position with UCI chess engine is the Hash used at all?

I am using a UCI chess engine (stockfish 6) to evaluate the score of specific positions from different games. On this stockfish help forum thread it states: Hash size is the amount of memory you want ...
user avatar
6 votes
1 answer
9k views

Working with UCI protocol (coding)

I'm currently writing small application for a chess interested friend. The application is supposed to automatically annotate his chess games. When giving the engine a position to analyze, and a depth (...
user avatar
3 votes
1 answer
972 views

Reading UCI Engine output in Arena Chess

So for the most part I understand what I am looking at, but i have two questions about the first piece of data. Here is an example that I am looking at. Firstly, the first column has values 1/4, 1/8, ...
user avatar