Forward to Section F
Please note that when I write "Chessbase environment" I'm referring to 32 bit engines like Fritz 5.32,Nimzo 99,Chessbase 7, Fritz 6, Junior 6 and up etc..
There are many ways to do so,but your options are limited according to whether you own a newer Chessbase gui (Fritz 7,Shredder 6 ,Hiarcs 8 etc and newer) or a older GUI (Fritz 6, Junior 6 as well as Chessbase 7 and 8 etc) Here are the methods.
The simplest way to use Winboard engines such as Crafty to run in Chess base GUI [Fritz for example] is to download "Native versions" of Winboard engines from Chessbase.com's Download page and to copy the resulting eng file to the Engine folders. You can get all of the older Native versions of Crafty,Comet,Inmichess and bambam (a weaker version of Inmichess),Exchess,Faile,List and Goliath here etc(For some reason as of 14 Dec 2002, Goliath Light 1.5 is no longer available as a link on the page.)
For a full guide on how to use Chess engines in Chessbase7 or 8, you should definitely refer to Steve Lopez's electronic notes on installing engines with Chessbase 8.
Unfortunately, only a small selection of Winboard engines are available as Native versions.
Currently, many (but not all) Winboard engines are starting to support UCI as well. .Examples include Ruffian,Yace,Little Goliath and Aristarch (but not The King,crafty) The newer Chessbase interfaces support UCI directly (and Winboard indirectly as well but we will go on more about that later), so if the Winboard engine you want to use as this mode all you have to do is to go to engines--->create uci engine and select the exe file to create a uci engine.
Remember this method works only for the newer Chessbase GUI - those released after Fritz 7 and Shredder 6. and only for engines that have a UCI mode. Those before it, do not support UCI.Note: Chessbase 7,8 both count as "old GUI" with no UCI support.
This is a pretty complicated method, but you have no choice if the above options are not available to you.
Like method 2 this works only for the newer Chessbase GUI - Fritz 7 (patched) and later.
The idea is to use Winboard to UCI adaptor (a third party utility by Odd Gunnar Malin) that can be used to convert Winboard engines to work in UCI mode and then import it into Fritz 7 in UCI mode.Besides the sample setups you can find in engine.txt (which comes with wb2uci) you can also go to Alex Schimdt's site for some default setups ready for download.The official document that comes with the adaptor is probably a little too technical, if so I highly recommend you look at this New Chessbase T note on how to use Odd Malin's adaptor
You might think that Chessmaster/The King being a Winboard engine
can be used inside Fritz 7 using this method. You are right, but it
takes one additional step. You need to feed the OPK numbers. See here
The method above was thought to be superior to using the old winboard adaptor due to flaws in the adaptor , but it was found that the UCI support is not flawless either. Gian-Carlo Pascutto author of Deep Sjeng as well as a few others have verified that in chessbase GUI UCI engines will sometimes allocates only 1 MB Hash for UCI engines regardless of the hash setting. It doesn't happen in every game, but occurs only randomly, there is no known fix, or even known reason why this happens.
This is not the fault of the wbtouci adaptor but affects all UCI
engines used in Fritz,Shredder etc.
This is probably only of historical interest as time passes. Older Chessbase interfaces like Fritz 5.32,6 , Junior 6,7 etc implemented a crippled form of support for Winboard engines using a winboard chessbase adaptor and did not support UCI. It was well known to cause Winboard engines to play extremely weak when this method was used.
On 16-01-02, Chessbase dropped the hosting of the Winboard to chess engine adaptor, and by Feb it was announced Fritz 7 and newer interfaces would now support UCI. While the support of UCI is not flawless it appears a lot better than the older Winboard adaptor. So if you are using one of the newer interfaces, you should have no reason to use this method.
If you really have no choice (i.e you own Fritz 6 etc), you can still find the Winboard adaptor (original name Winboard.eng) in many Winboard engine packages.This is done mainly as a service to make it easier for the user to use their engines in Chessbase gui.For example Quark 1.5 has a file Quark.eng distributed with it. That's basically a renamed adaptor file, and you can use it has such by renaming it.
Instructions on how to use the Chessbase Winboard adaptor are available at Mogens Larsen's Website .
Here is also the archived Winboard adaptor page from Chessbase and technical details for more advanced users (read authors of Chess engines)
If you want to play a match between 2 chess engines and Chessbase engines, besides the above methods, you can do the following. The methods below require that you run them in separate interfaces though and not directly in chessbase.
Native versions of Winboard Engines are Winboard engines that have being specially tweaked and complied to work in Chessbase environments. However, not all programmers have chosen to submit their programs to become Native versions.
Winboard engines that use the Winboard adapter to run, may not work as well as native versions since the Winboard protocol is badly implemented in Chessbase.
If you still wish to do so , see abovefor instructions on how to do so and where to download the Winboard adaptor, espically now that's it's not on the Chessbase site.
The newer Chessbase interfaces like Fritz 7, Shredder 6 (chessbase version) and Hiracs 8 etc also support UCI. While such engines run better than Winboard engines they are not native Chessbase engines either.
There are over 100+ Winboard Engines and it will take a lot of work to find out which programs work using the Winboard adapter.
If you own a newer interface like Fritz 7, you should check if there is a UCI version of the engine and use that instead. Most should work okay. If there is only a Winboard version, it's much better to try Odd Malin's wbtouci adaptor together with Fritz 7.
Winboard Engines can fail to work totally, or might work poorly. I started a new webpage with a table listing Winboard engines that work in Chessbase, Chess Academy 6.0 ,Shredder 5.0,Chessmaster8000. Contributed by various people (badly outdated).
Refer to the FAQ about Xboard/Winboard engines on Chessmaster.com.
BTW, a patch 1.04 has just being released. The pre-patched CM8000 does not work with Crafty18.1 and up because it could only support co-ordinate notation [E.g. e2-e4], but Crafty 18.x and above only supports SAN [e.g. e4]
I started a new webpage with a table listing Winboard engines that work in Chessbase, Chess Academy 6.0 ,Shredder 5.0,Chessmaster8000,Chess Partner/ERT, MCS,Chess Assistant. Contributed by various people.
I do not own any of the products above, but you can refer to Frank Quisinsky's Phase X files page to download some of the configurations files needed. (very outdated)
Chess genius 7 or classic (and 6.5 I think) requires the use of the WBkonvertor.zip. You can find more help in the following 2 pages. http://www.chessandcheckers.com/chesxtra.htm and http://www.beepworld.de/members37/computerschach/. [On the left frame,scroll to the bottom and click download, instructions on how to use Winboard engines and UCI engines via uci2wb adaptor are included]
You can find instructions on setting up Winboard engines with Chess
Partner at their site
. Also refer
to Winboard compatibility table for
You can find instructions on setting up Winboard engines with Chess genius here
Currently, 2 UCI to Winboard adaptors exist. The older one is by Roland Pfister (see below). The newer one is named PolyGlot (Use the pulldown menu that says "download" to look for ) by Fabien Letouzey. As of May 2004, it has just being released out of beta testing and it's generally more compatible with various UCI engines and solves some problems that existed in older adaptors.Version 1.3 of Polyglot released in June 05, provides opening book support as well, which makes it a much superior option, as such it is highly recommended.
This site gives instructions and provides instructions on how to setup Prodeo with SCID. But essentially the same idea works for running in any Winboard engine.
What follows covers use of Roland Pfister's older adapter and is just for historical interest.The other UCI to Winboard adaptor is by Roland Pfister [author of Patzer]. it's named uci2wb. Like polyglot, this allows you to "adapt" UCI engines to be used in Winboard. This means that UCI engines like Shredder and SOS can now play under not only in Winboard but also in other Winboard compatible GUI like Chessbase or Chessmaster8000.
You can download the uci2wb adaptor [latest version is 2.0 as at
Leo's WBEC page . One drawback is that some UCI engines
(Shredder and the UCI SOS version sold by Millienium Chess) depends on
the GUI to provide opening books.So adapted engines will be without
opening books in Winboard, but can use those provided in Chessbase GUI.
Note: the instructions that come with version1.1 are in German.
Here's a brief guide to the use of Roland Pfister's UCI2WB adaptor.
I will be using the example of adapting SOS 3 (available for free with
Arena) which in my case is in c:\uci\sos. The executable file name is
1) Download the UCI2Wb
2) Extract the files into a directory , for example c:\uci2wb
3) Edit adapter.rc with notepad. Change the line below #Exe-Name to
exe=sos_arena.exe (the name of the UCI executable).
4) Do the same for the line dir=blahblah , change it to the
directory where SOS_arena is in.
5) Make any other changes needed, hashtables, endgame tablebase path
6) Treat adapter.exe like a normal Winboard engine. For example, in
Winboard, add the line
"Adapter" /fd=c:\uci2wb to winboard.ini
There is one thing to keep in mind when using UCI engines as winboard engines, many UCI engines rely on the GUI to provide opening books, although many such as SOS also have their own books.One example of a UCI engine that does not provide it's own book is Shredder.
How to get the uci version of Shredder to work in Winboard is
similar, but there is one additional
complication, you may want to use bookthinker (see this for more if you don't know
what it is.) to provide a opening book.Volker Pittlik
describes here now to use
Shredder as a Winboard engine with bookthinker. However, there are
some timing problems, see
The alternative adaptor Polyglot might work
though. In particular version 1.3 provides opening book support, so
bookthinker is not required.
On the other hand if you want to run a Winboard engine (without UCI
support) in a UCI graphical interface , you
will need a Winboard to UCI adaptor.
Winboard to UCI
adaptor (by Odd Gunnar Malin) can be used to convert Winboard
engines to work in UCI interfaces. Besides the sample setups you can
find in engine.txt (which comes with wb2uci) you can also see Alex
Schimdt's site has some default setups ready for download as well
as the wbconfig.zip
file found here
Here's a brief guide to using Odd Malin's Wb2UCI.
1) Download the Wbtouci adapter
2) Unzip the file into a directory say c:\ucitowb.
3) Edit the file wb2uci.eng.You should see this
Name=Name of engine
Author=Name of engine author
Filename=Wb2Uci.exe [OPTIONS] Program=engine.exe ; See Wb2Uci.html for more option
4) Change the line program=engine.exe to the name and path of where the Winboard engine is. For example if the engine you are trying to convert is at C:\chessengine\Crafty.exe change the line to say program=c:\chessengine\crafty.exe . You don't need to change the line that says Filename=Wb2Uci.exe Unless you rename that file.
5) Treat Wb2uci.exe as any UCI engine. For example when importing UCI engines into Fritz , select the file Wb2uci.exe. You might want to see this article by Steve Lopez of Chessbase on the same topic.
That's the basic idea of course. There might be other complications
that are covered in the documentation.
There is also a old Winboard to UCI adaptor available in Shredder 5/6/7 (classic) however it appears to cripple Winboard engines and hence is not recommended.
This section E.8 is no longer updated . A whole new updated section on Chessmaster has being opened.
It is now possible to get Chessmaster8000 [powered by The King engine by Johan de Koning ] to work in Winboard, because from Chessmaster 8000 onwards The King is a Winboard engine. However, you will need to own the CD to get the OPK number which changes everytime there is a reboot. Also the King will be without a opening book in Winboard [but not in other GUIs that supply their own opening book].
Here are the steps needed. The main idea is to find the OPK number.There are many methods to do this,including using inbetween but this is not necessary. Here's the easiest way.
Basically you replaced theKing.exe with crafty.exe and when chessmaster is run the commands needed (including the OPK number) to be sent to Chessmaster will be sent to Crafty instead.From there you can extract the information needed from Crafty's log file
Some parimeters and what they mean (taken from Odd Gunnar Malin's excellent work)
Xboard - Tells the engine to set itself in Xboard mode.
cm_parm - parameter1=value parameter2=value ...
Some possible parameters with theirs default value.
default ; set the engine to default.
opp=100 ; Opponents pawn
opn=100 ; Opponents knight
opb=100 ; Opponents bishop
opr=100 ; Opponents rook
opq=100 ; Opponents queen
opk=0 ; Opponents king
myp=100 ; Kings pawn
myn=100 ; Kings knight
myb=100 ; Kings bishop
myr=100 ; Kings rook
myq=100 ; Kings queen
myk=0 ; Kings king
cc=100 ; Control of centre
mob=100 ; Mobility
ks=100 ; King safety
pp=100 ; Passed pawn
pw=100 ; Pawn weakness
cfd=0 ; Contempt for draw
sop=100 ; Strength of ply
avd=0 ; Attacker/defender
rnd=0 ; Randomness
sel=6 ; Selective search
md=999 ; Max search depth
tts=1048576 ; Hash size
ttu=1 ; Hash unit
ana=0 ; Unknown (CM don’t use this)
Max search depth (md)
- CM set this to 99 but it don't seem to any changes to the strength
- This value is sent by adjusting the material (opX and myX) and the
positional values (cc, mob, ks, pp and pw).
Hash settings (tts and ttu)
- When hash=0 tts=4096, ttu=0
- When hash=512Kb tts=524288, ttu=1
- When hash=1Mb tts=1048576, ttu=2
- When hash=2Mb tts=2097152, ttu=3
- When hash=4Mb tts=4194304, ttu=4
- When hash=8Mb tts=8388608, ttu=5
- When hash=16Mb tts=16777216, ttu=6
- When hash=32Mb tts=33554432, ttu=7
- When hash=64Mb tts=67108864, ttu=8
Here's the line in my Winboard.ini for playing in Winboard "TheKing" /fd="d:\chessmaster 8000" /firstInitString="xboard\npost \nnew\ncm_parm tts=67108864 ttu=8\ncm_parm opk=260544 /firstProtocolVersion=1
For example in the above line, I'm using Chessmaster with 64Mb hash,default settings. If you want to use personalities you can add parameters like opp=97 opn=107 which will change the values Chessmaster placed on the opponent's pawn and Knight compared to default.
For example here's the so-called Chessmaster 8877 setting which is claimed by some to be stronger than the default in longer time controls.
"TheKing" /fd="d:\chessmaster 8000" /firstInitString="xboard\npost \nnew\ncm_parm tts=67108864 ttu=8\ncm_parm opk=260544 opp=103 opn=121 opb=127 opr=121 opq=123 myp=103 myn=121 myb=127 myr=121 myq=123 cc=112 mob=123 ks=160 pp=117 pw=133 cfd=0 sop=100 avd=-2 rnd=0 sel=12 md=99\n /firstProtocolVersion=1
The /firstprotocolversion=1 tells Winboard to revert to Winboard protocol 1, as Chessmaster does not have Protocol 2 support.
Once you manage to get The King working in Winboard, you can in theory import it into Chessbase,ChessPartner,Shredder or [basically any software that supports Winboard engines] etc like any normal Winboard engine!
In practice though,if you use a lot of different GUI with Winboard support it's much easier to setup The King using Odd Malin's inbetween utility once, and then in each GUI point to the inbetween.exe (which you can rename to The King if you wish). This avoids the hassle of passing all the parameters individually for each GUI. On the other hand, you might need customise inbetween set-ups to "cure" some of the problems in each GUI.
|This is espically true for running
The King in Arena. While the method for obtaining the OPK number
is the same, you need to use inbetween itself
to sit inbetween and send the OPK number to The King.Change the
inbetween.ini file with a text editor to the following line:
CommandLine := c:\chessmaster\8000\theking.exe
xboard := xboard\npost\nnew\ncm_parm tts=67108864 ttu=8\ncm_parm opk=278312 opp=103 opn=121 opb=127 opr=121 opq=123 myp=103 myn=121 myb=127 myr=121 myq=123 cc=112 mob=123 ks=160 pp=117 pw=133 cfd=0 sop=100 avd=-2 rnd=0 sel=12 md=99\n
The commandline and OPK number should be changed of course to where your copy of the Theking.exe is and the OPK number you obtained from the process described above. The above setting is of course the "CM8777" personality mentioned above.
Once you achieve this, it means that you will have a easy way to use The King has a engine on online servers either through Winboard or Arena/Chess partner/Chess Assistant/Chess Vision interface!
Here is now I got it to run it in FICS through WinboardC:\WinBoard\winboard.exe /zp /ics /icshost=freechess.org /icshelper=timeseal /fcp="theking" /fd="d:\chessmaster 8000" /firstInitString="xboard\npost\nnew\ncm_parm opk=270080\ncm_parm tts=8388608" /firstProtocolVersion=1
This is actually no different from any other Winboard engine.
This section E.9 is no longer updated . A whole new updated section on Chessmaster has being opened.
Getting The King to work in Chessbase (Chessbase 7 and above or Fritz 5.32,Fritz 6, Junior 6/7,Hiarcs 7.32,Nimzo 8),Chess Partner etc is pretty tricky, but unlike Winboard these GUIs provide the King with opening books [like the Chessmaster GUI itself] . You will need Odd Gunnar Malin's useful free utility "In-between". You can find both the program and instructions on how to get The King to run it has a Winboard engine in Chessbase GUI here.
[10-02-2002] Here is a Visual Basic script to automate the whole process of getting the OPK number when running The King under Chessbase
For other GUI [Chess Partner/Chess Assistant], you can find the instructions in the InbetweenAndEngines.txt that comes with inbetween.
However,given the known problems of running Winboard engines (which are weakened) using the adaptor, if you use Fritz 7,Shredder 6 (Chessbase version) or Hiracs 8 , a better method would be convert theKing into a UCI engine through Odd Malin's Winboard to UCI adaptor then running it in Fritz 7 in uci mode.
The steps to do so
; The King 3.12d Advanced
Name=The King 3.12d
Author=Johan de Koning
InitString=cm_parm default\ncm_parm opk=xxx
Opponents Pawn (opp)=cm_parm opp=%i|spin|100|0|4500
Opponents Knight (opn)=cm_parm opn=%i|spin|100|0|1500
Opponents Bishop (opb)=cm_parm opb=%i|spin|100|0|1500
Opponents Rook (opr)=cm_parm opr=%i|spin|100|0|900
Opponents Queen (opq)=cm_parm opq=%i|spin|100|0|498
Kings Pawn (myp)=cm_parm opp=%i|spin|100|0|4500
Kings Knight (myn)=cm_parm opn=%i|spin|100|0|1500
Kings Bishop (myb)=cm_parm myb=%i|spin|100|0|1500
Kings Rook (myr)=cm_parm myr=%i|spin|100|0|900
Kings Queen (myq)=cm_parm myq=%i|spin|100|0|498
Centre Control (cc)=cm_parm cc=%i|spin|100|0|600
Mobility (mob)=cm_parm mob=%i|spin|100|0|600
King Safety (ks)=cm_parm ks=%i|spin|100|0|600
Passed Pawn (pp)=cm_parm pp=%i|spin|100|0|600
Pawn Weakness (pw)=cm_parm pw=%i|spin|100|0|600
Contempt (cfd)=cm_parm cfd=%i|spin|0|-500|500
Strength (sop)=cm_parm sop=%i|spin|100|0|100
Attack Defend (avd)=cm_parm avd=%i|spin|0|-100|100
Randomness (rnd)=cm_parm rnd=%i|spin|0|0|100
Selective Search (sel)=cm_parm sel=%i|spin|6|0|12
Max Depth (md)=cm_parm md=%i|spin|999|0|999
Universal Chess interface or UCI is a new Chess engine communication protocol designed by Rudolf Huber [author of SOS, from the Young Talents CD] and Stefan Meyer-Kahlen[author of the commercial Chess program Shredder] and is somewhat similar to Tim Mann's Winboard.This was introduced in the commercial interface Shredder 5. in Nov 2000.
01-04-2004 the UCI protocol has being revised as at April 2004. This small change adds new commands "ucinewgame" and "Ponder" which addresses some of the problems of the original UCI.This was further revised in July 2005. The new UCI protocol gives provisions for supporting Chess960.
Just as Winboard engines are chess engines that have implemented the Winboard protocol and can be used in Winboard; UCI engines are Chess engines that have implemented the UCI communication protocol and can be used in the UCI graphical user interface.
Like the Winboard protocol, the UCI protocol is a open standard and is free for use by anyone without the need for any licenses. However it must be noted that while the graphical interface for Winboard [Winboard itself] is free, there is no UCI graphical interface provided for free , although there is nothing stopping someone from implementing a user interface that can handle UCI engines. 18-01-02 Martin Blume has done exactly this for his Interface see Arena and it is free. Note, it's only for Windows and unlike Winboard/Xboard, as yet, it is unlikely to be ported to other Operating systems.
For a list of UCI graphical interfaces both current and expected, see Section [E.11]
What are the advantages of UCI compared to Winboard?
[Taken from UCI technical Specification ]. Interestingly enough the amended april 2004 technical specification leaves this part out.
The list above looks impressive , to be fair though it's possible that future versions of the Winboard protocol will include the above features. [E.g. flexible time controls is a possible feature in version 3 of the Winboard protocol,the name feature allows Chess engines to identify itself in Winboard protocol II etc ].
Also because of various technical reasons, many authors of engines who convert Winboard to uci engines, have problems with implementing book learning due to the "Stateless" design of UCI. (Perhaps addressed by the new ucinewgame command in the April 2004 change in the protocol?)
On the other hand , UCI has the advantage of being built on a completely new foundation, while Winboard itself grew out from an ad-hoc interface that was never meant intentionally to support Chess engines other than GNUChess. As such, it may be difficult if not impossible to extend Winboard's protocol without doing lots of major work and/or maintaining backwards compatibility with older engines.
On the other hand, UCI is a fairly new concept, and currently only a few Chess engines support it. Shredder and SOS 11/00 by Rudolf Huber and Stefan Meyer-Kahlen [who are incidentally the authors of UCI as well] are two chess engines available in UCI. You used to be able get both in the WM Paket .
Still this might be changing with more UCI graphical interfaces coming and especially Arena - a free gui for Winboard and UCI as well as support from Chessbase since it appears that from Fritz 7 onwards they will support UCI as well .See Section [E.12] for more UCI engines
Although all these interfaces support UCI, each has it's own
Schmidt's comments on the UCI protocol and interfaces . Also
see my interface listing for a more
complete list of guis.
The number of UCI Chess engines especially the free ones are still very small (though increasing), compared to the Winboard engines (180+).Many of the first UCI engines are commercial engines, which is understandable because up recently (where a beta version of the free Arena was released), there were no free GUIs that supported UCI.The commercial ones are [Correct as at 21-05-03]
There are about 70 UCI available for free , see the list of UCI engines here.
If you observe the list of UCI engines, you will find that most UCI engines about 80%) support Winboard too. This is no surprise because the bulk of UCI engines are originally Winboard engines.The UCI only engines are mostly new projects that are starting out.
For more information about UCI engines see Alex schmidt's UCI site. .
One of the greatest supporters of UCI is Frank Quisinsky who together with Gambitsoft , have tried to popularise UCI with the "Winboard edition series" which actually comprises of UCI engines. The Winboard edition II comprises of Gandalf,Patzer,Capture and Lambchop . A third edition with more UCI engines was planned. Although it was abandoned. Some of the authors of the third edition package list have decided to release the UCI modes of their Chess engine for free. Eg Anmon,Pharaon and now Leila
The UCI mode is supposed to be designed to be easy to convert from engines with Winboard support, and given the recent increased number of UCI interfaces [especially the free Arena ], many other Chess engine authors have expressed interest in converting their engines to support UCI as well as Winboard protocols
Having said this, it does not mean that a Chess engine that works in UCI automatically works in Winboard and vice-versa. Adaptors for working UCI engines in Winboard and vice-versa are available. See Section E.7