by Steve Lopez

UCI is the Universal Chess Interface, developed by Stefan Meyer-Kahlen and Rudolf Huber. It's an attempt to create a single standard for chess engines, so that myriad engines can be used in the same user interface. It's similar in concept to PGN (Portable Game Notation) format for chess gamescores, which ensures that games in this format can be read in a variety of chess software programs. UCI is a way to enable many chessplaying engines to work in a variety of user interfaces. You can read more about the UCI protocol here.

The Fritz7 interface (also shared by Shredder6 and Hiarcs8) supports the UCI standard. There are several free UCI chess engines available for download on the Internet and more are appearing all the time. You should be able to use any of them in the Fritz7 interface, and it's not terribly hard to set them up. All you'll need are a tiny bit of Windows familiarity and a program that can uncompress files in .zip format. Also, please check the contents of your \Fritz7 folder to see if you have a file called UCI.dll -- if you've not downloaded and installed an upgrade for Fritz7 since January 2002 your folder won't contain this file and you'll need to download it here. Unzip the file and place the UCI.dll file in your Fritz7 folder.

First, you'll need to do a little bit of preparation. Create a work folder on your hard drive (I imaginatively called mine \Work) -- this is where you'll download any UCI engines that are in .zip format. You'll also want to create a folder called Engines.UCI in your ChessBase folder (if you've used the default installation path for your Fritz/Hiarcs/Shredder, the resulting path will be c:\Program Files\ChessBase\Engines.UCI).

Obviously, you'll need a UCI engine. New Zealander Peter McKenzie has just released a new version of his chess engine LambChop. You can download it from Peter's homepage. The LambChop download is in .zip format, so you'll need to use WinZip or another uncompression utility to extract the program's files.

Here's where you'll want to do another piece of preparation before proceeding. Create a new subfolder in your Engines.UCI folder to hold the uncompressed files of the UCI engine you just downloaded. For example, I created a subfolder called \LambChop (the path would be c:\Program Files\ChessBase\Engines.UCI\LambChop); this prevents you from mixing up or overwriting files that belong to different UCI engines. Use WinZip (or another uncompression utility) to expand the program's compressed archive files directly into the new subfolder you just created.

Your next step is to fire up Fritz7 (or one of the other aforementioned programs that use the Fritz7 interface). Go to the Engine menu and select the command "Create UCI Engine":

Use the "Browse" button to navigate to the folder into which you uncompressed the UCI engine's files (in this case, it would be the \LambChop folder) and select the .exe file for that engine, then click "Open". This will return you to the "Create UCI Engine" dialogue, where you'll see the engine's folder path, name, and author's name already filled in. Click "OK" and after a few moments you'll see a message in the information bar (at the lower left of your Fritz7 screen) telling you that the engine has been successfully created.

For the technically-minded among us, what's happened here is that the Fritz7 interface has created a new file in your \Engines folder, ending in the .uci extension (in our example case, the file is called "LambChop 10.88.uci"). This file acts as a link between the Fritz7 interface and the UCI engine, allowing that engine to be used in Fritz7. If you later want to permanently remove that engine from your Fritz7 engine list, manually delete that .uci file (as well as the engine's subfolder, if you wish).

To load your new engine, all you have to do is hit F3 and you'll see it as a selectable engine in your Engines list. You can now use it to play against, analyze games, or analyze individual positions in Infinite Analysis mode, as well as use it as a competitor in engine vs. engine matches and tournaments.

Note that not all downloadable engines follow the UCI protocol. Most programmers will have a note to that effect somewhere on their web page. When in doubt, e-mail the programmer to make sure. Also note that UCI engines are executable files (that is, they end in the extension .exe); consequently, it's always a good idea to virus scan the file after unzipping it and before setting it up as a UCI engine in the Fritz interface; I seriously doubt that any programmer would deliberately introduce a virus into his program, but accidents do happen. An ounce of prevention is worth a pound of cure, as the old cliché goes. See the ETN issue for April 22, 2001 ("Internet Security") for more details.

And, while we're on the subject, the free anti-virus program described in that ETN issue (InoculateIt) is no longer available as a free download. However, there are many free anti-virus programs available on the 'Net. Also, the commercial anti-virus programs are cheap enough (some cost as little as $10, with annual upgrades costing the same amount) and are worth every penny for the time and hassle they'll save you, particularly since virii spread as e-mail attachments are becoming increasingly prevalent..

Until next week, have fun!

You can e-mail me with your comments, suggestions, and analysis for Electronic T-Notes.