Redundant UCI Specification Commands / Info?

Discussion of anything and everything relating to chess playing software and machines.

Moderator: Ras

User avatar
Steve Maughan
Posts: 1262
Joined: Wed Mar 08, 2006 8:28 pm
Location: Florida, USA

Redundant UCI Specification Commands / Info?

Post by Steve Maughan »

I'm making progress with my new Delphi based UCI engine. I'm planning to support all UCI commands with the exception of tablebases and weakening the engine (it's already super weak :D ). To that end, I've been digging into the UCI specification. A couple of things seems to not be supported anymore, or of little value:
  • Does any engine or GUI support "go searchmoves"?
  • Does any engine or GUI support the info field "cpuload". I thought Shredder supported this. But when I run Shredder 13 in the Shredder GUI there is no sign of the info.
  • Maverick actually supports "info currline", but I don't see many GUIs or engines supporting it (Stockfish doesn't seem to). I'm unsure if anyone really values it.
  • Another one is "info refutation". Does any GUI or engine support this?
Thoughts?

Thanks,

Steve
http://www.chessprogramming.net - Maverick Chess Engine
nocturn9x
Posts: 33
Joined: Mon Aug 05, 2024 1:28 pm
Full name: Mattia Giambirtone

Re: Redundant UCI Specification Commands / Info?

Post by nocturn9x »

Heimdall does indeed support "go searchmoves": in fact, MultiPV searches are implemented on top of that functionality!
mar
Posts: 2639
Joined: Fri Nov 26, 2010 2:00 pm
Location: Czech Republic
Full name: Martin Sedlak

Re: Redundant UCI Specification Commands / Info?

Post by mar »

I don't do cpuload/currline or refutation (I think Shredder supports currline, not sure about refutation)
Cheng does support go searchmoves, however - I find it useful for debugging, namely to force the engine to explicitly search a specific move
User avatar
Steve Maughan
Posts: 1262
Joined: Wed Mar 08, 2006 8:28 pm
Location: Florida, USA

Re: Redundant UCI Specification Commands / Info?

Post by Steve Maughan »

nocturn9x wrote: Tue Apr 08, 2025 5:01 pm Heimdall does indeed support "go searchmoves": in fact, MultiPV searches are implemented on top of that functionality!
That's an interesting idea! Thanks!
http://www.chessprogramming.net - Maverick Chess Engine
mar
Posts: 2639
Joined: Fri Nov 26, 2010 2:00 pm
Location: Czech Republic
Full name: Martin Sedlak

Re: Redundant UCI Specification Commands / Info?

Post by mar »

I think that multipv and searchmoves are completely orthogonal - searchmoves simply restricts moves searched at root while multipv tries to find n best moves - and you can of course combine both
nocturn9x
Posts: 33
Joined: Mon Aug 05, 2024 1:28 pm
Full name: Mattia Giambirtone

Re: Redundant UCI Specification Commands / Info?

Post by nocturn9x »

Yes, they are indeed separate. However, internally, heimdall implements MultiPV search by iteratively adding the root moves of a position except any previously found best moves (while also respecting the original argument value of searchmoves given by the user, of course!) to the list of moves to search. I felt like this was the simplest implementation :)