Winboard and Chess engines FAQ

Section D - Engine Specific Problems

Section D

[D] Engine Specific problems

Forward to Section E


[D] Engine Specific problems


[D.1] Bringer



[D.3] Chessmaster 8000 , 9000 and 10,000 (The King)

In practice I find that 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 separately for each GUI. On the other hand, you might need customise inbetween set-ups to "cure" some of the problems in each GUI.

For other GUI [Chess Partner/Chess Assistant], you can find the instructions in the InbetweenAndEngines.txt that comes with inbetween. Here's another new instructions for Chesspartner



e) Setting up The King in Arena and SCID

To use The King in SCID, you need to use inbetween, see the instructions in the yellow box below. You can use the same method for Arena, or if using Arena 0.95 and above you can do the following.

This matter works, but if you want to have a nice display, add more parimeters/personalities, it is better to use the inbetween adaptor as detailed below.

While the method for obtaining the OPK number is the same ,to get The King to work in Arena and SCID, 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:
[InBetween]
CommandLine := c:\chessmaster9000\theking.exe

[Client2Server] xboard := xboard\npost\nnew\ncm_parm opk=561252\ncm_parm ana=1\ncm_parm default\ncm_parm opp=100 opn=100 opb=100 opr=100 opq=100 myp=100 myn=100 myb=100 myr=100 myq=100 mycc=100 mymob=100 myks=100 mypp=100 mypw=100 opcc=100 opmob=100 opks=100 oppp=100 oppw=100 cfd=0 sop=100 avd=0 rnd=0 sel=9 md=99\ncm_parm tts=67108864
protover := hard

[Server2Client]
cm_parm ana=1 := feature setboard=1
cm_parm default := feature analyze=1
2001 := 2
2002 := 2
3001 := 3
3002 := 3
3003 := 3
4001 := 4
4002 := 4
4003 := 4
4004 := 4
5001 := 5
5002 := 5
5003 := 5
5004 := 5
5005 := 5
6001 := 6
6002 := 6
6003 := 6
6004 := 6
6005 := 6
6006 := 6
7001 := 7
7002 := 7
7003 := 7
7004 := 7
7005 := 7
7006 := 7
7007 := 7
8001 := 8
8002 := 8
8003 := 8
8004 := 8
8005 := 8
8006 := 8
8007 := 8
8008 := 8
9001 := 9
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.This will work for SCID too.Note: Adding \ncm_parm ana=1 is necessary for Chessmaster 9000 to force it into analysis mode. The lines such as 1001 :=1 are an additional touch and are used to convert the display of The King into nice ply depth. You should add more up to perhaps 15015 := 15.


Once you achieve this, it means that you will have a easy way to use The King as a engine on online servers either through Winboard or Arena/Chess partner/Chess Assistant/Chess Vision interface!


  • [D.3.5] How do I get Chessmaster [The King] to play in Fritz,Junior etc or other Chessbase GUI.

    Getting The King to work in Chessbase interfaces like (Chessbase 7 and above or Fritz 5.32,Fritz 6, Junior 6/7,Hiarcs 7.32,Nimzo 8), etc is pretty tricky (although there are some benefits mainly because Chessbase interfaces unlike Winboard or Arena can provide opening books which The King lacks)

    For steps to convert chessmaster's OBK opening books to Fritz's CTG.,

    Part of the reason why this is so is because Fritz ,Junior etc do not directly support the Winboard protocol which is needed for The King (which is a Winboard engine) Notice Fritz (unlike The King) itself is not a Winboard or UCI engine, so it cannot be exported outside to be used in Chessmaster or Winboard.

    Another reason has you have seen already is that unlike most Winboard engines, The King requires the additional sending of the OPK number which complicates matters.

    If you own Fritz 5.32 & 6 ,Junior 6 & 7, Nimzo 8 ,Hiarcs 7.32,Shredder 5.32,Chess Tiger 14 , go to section a), otherwise (you own Fritz 7,Shredder 6, Hiarcs 8 or newer) skip to section b)

    a) Winboard adaptor method for older Chessbase interfaces

    If you are using the older Chessbase interfaces (Fritz 5.32 & 6 ,Junior 6 & 7, Nimzo 8 ,Hiarcs 7.32,Shredder 5.32,Chess Tiger 14 ) you will have to use the Winboard adaptor method for running Winboard engines (The King is just one example.) Please be familiar with this before you begin.

    For the King you need to use 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.

    Before you go there please note that there is a broken link on the above page and you can download the Winboard adaptor here .

    b) Using the WinboardtoUCI adaptor for newer Chessbase interfaces (Fritz 7,Shredder 6, Hiracs 8)

    The newer Chessbase interfaces Shredder 6,Fritz 7 (after patching), Hiracs 8 etc also support the UCI protocol.

    Given the known problems of running Winboard engines (which are gravely weakened) using the Winboard adaptor, if you own Fritz 7,Shredder 6 (Chessbase version) or Hiracs 8 , a better method would be convert theKing from a Winboard engine into a UCI engine through Odd Malin's Winboard to UCI adaptor then running it in uci mode.

    The steps to do so

    1. Obtain the OPK number as explained above
    2. Download the Winboard to UCI adaptor and unzip it in any directory.
    3. Open the file engine.txt which comes with the adaptor.
    4. Copy the line below (taken from engine.txt) and copy it to wb2uci.eng

      ;---------------------------------------------------------------- ; The King 3.12d Advanced
      [ENGINE]
      Name=The King 3.12d
      Author=Johan de Koning
      Filename=Wb2Uci.exe

      [OPTIONS]
      Program=TheKing3.12d.exe
      InitString=cm_parm default\ncm_parm opk=xxx
      HashCommand=cm_parm tts=%i004096
      ;ShowThinkingMove=true
      ;Logfile=true
      Visible=Ponder,Hash,ShowThinkingMove,Logfile,Extras

      [EXTRAS]
      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 myp=%i|spin|100|0|4500
      Kings Knight (myn)=cm_parm myn=%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
      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 (For CM9000 values should read |9|0|16)
      Max Depth (md)=cm_parm md=%i|spin|999|0|999
      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

      ;----------------------------------------------------------------

      If you are using Chessmaster 9000 instead, do the same as above except that you should replace the last 5 parameters with

      My Centre Control (mycc)=cm_parm mycc=%i|spin|100|0|600
      My Mobility (mymob)=cm_parm mymob=%i|spin|100|0|600
      My King Safety (myks)=cm_parm myks=%i|spin|100|0|600
      My Passed Pawn (mypp)=cm_parm mypp=%i|spin|100|0|600
      My Pawn Weakness (mypw)=cm_parm mypw=%i|spin|100|0|600
      Opponent's Centre Control (opcc)=cm_parm opcc=%i|spin|100|0|600
      Opponent's Mobility (opmob)=cm_parm opmob=%i|spin|100|0|600
      Opponent's King Safety (opks)=cm_parm opks=%i|spin|100|0|600
      Opponent's Passed Pawn (oppp)=cm_parm oppp=%i|spin|100|0|600
      Opponent's Weakness (oppw)=cm_parm oppw=%i|spin|100|0|600

      Also, the selective search values can now be increased to up to 16 as compared to a maximum of 12 in Chessmaster 8000. The default Selective search is 9 as mentioned before so the line for selective search should read
      Selective Search (sel)=cm_parm sel=%i|spin|9|0|16

    5. Remember to alter the line below options that says Program=TheKing3.12d.exe to the path where The King engine lies.For example Program=c:\chessmaster8000\Theking.exe
    6. Replace InitString=cm_parm default\ncm_parm opk= xxx with the OPK string obtained in step 1.
    7. Remember to save
    8. When creating a UCI engine in Fritz7,Shredder 6 etc select wb2uci.exe as the file.

  • ABOUT [EXTRAS]

    Because we are using The King as a UCI engine (via the adaptor), we can actually send different parimeters via the GUI options to alter the chessmaster personality . That is what all the lines after [Extras] actually do, they set up all the dialog boxes in the GUI. However,  Manfred Meiler and Kurt Utzinger have assured me that when personalities options are altered this way (as opposed to via text files or init string), they don't seem to work as expected. This determination was made by comparing solution times on various test suites.


    new[10-02-2002] Here is a Visual Basic script or The King under Fritz to automate the whole process of getting the OPK number when running The King under Chessbase You will have to change the paths for it to work
  • NEED HELP?

    Perhaps the whole process is too complicated for you.Luckily, Manfred Meiler has kindly agreed to setup everything for you in 2 nice zip files that will automatically get the OPK number and start Chessmaster in Fritz if you email him at Manfred.Meiler@t-online.de the following information.
    Here's his generous offer.

    It's enough if your readers give me the EXACT paths (incl. possible spaces between) to their folders

    • Chessmaster 8000 or Chessmaster 9000
    • Fritz 7 (or another UCI compatible ChessBase GUI) or Shredder5, Schredder 6 Classic or Arena
    • ChessBase\Engines.
    With these prepared files you can start the CM8000 or 9000 engine "The King 3.12d" or "The King 3.23d" (as UCI engine with the Wb2Uci adapter of Odd Gunnar Malin) in Fritz 7 very simply - including the possibility to switch between some special CM settings (like CM_default, CM_Fun, CM8777_Kleinert, CM_Schuele, CM_Pillen) in an easy way.

    UPDATE: You can find the basic files for this  here (under Method 2).


  • [D.3.6] How do I get Chessmaster (The King) to play online at ICC or FICS? What about Yahoo servers?

    As mentioned above once you can get Chessmaster or The King running in Winboard or Arena, you can treat it like a normal Winboard engine and use it on the servers.

    You should already know how to run Winboard engines on ICC or FICS using zippy and Winboard.

    Here is now I got it to run it in FICS through Winboard C:\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. But it lacks a opening book.  You can find another instruction guide for using The King  plus bookthinker plus OPK patch. You need the files  CM9 Winboard.zip and CM9 Winboard readme.txt.

    There is however one very big problem.John Merlino lead programmer of Chessmaster 8000 and 9000 writes

    There is "a bug" in The King that is not apparent the CM GUI, but will be VERY IMPORTANT if you use The King against a human opponent on ICC or against a computer opponent that offers draws. In essence, if The King receives a "draw" command, it will IMMEDIATELY stop its search and you probably will not be able to get it started again! The upshot is that, if your opponent offers The King a draw, it is likely that The King will lose on time because it will never make a move after the request is received! This isn't a problem in the CM GUI, because the GUI handles all draw requests from humans (and WinBoard engines) internally -- The King never receives the draw request. But, this DID happen to me when I was playing with The King on ICC, so YOU HAVE BEEN WARNED! There are ABSOLUTELY NO PLANS to fix this in a patch!

    This problem appears to still exist in Chessmaster 10000.

    The note here regarding Winboard engines on Yahoo or other web-based chess server also applies to The King/Chessmaster.


  • [D.3.7] Why is Chessmaster [The King ] when exported outside Chessmaster not using a opening book? How do I provide an opening book with bookthinker?

    If you export Chessmaster [The King] to Winboard , you will notice that Chessmaster doesn't have a opening book. This is because Chessmaster [The King] actually relies on the interface/GUI to provide the opening book. While some interfaces like Fritz or Arena 1.0 provide opening books to engines, Winboard currently doesn't.

    However there is a book engine called bookThinker , whose job is to simulate a opening book by playing the first few moves based on a database of opening moves before passing control over to the bookless engine once it has run out of moves. In theory it should work with The King, but for technical reasons it doesn't work well when coupled with the need to send command line parimeters in the winboard.ini file. The King of course needs to send the OPK number as a command line parameter.

    There are several work arounds , but here's my favourite one with involves using inbetween to help. Of course, if you used the patch that disabled the opk check, all you need to do is to use The King as any other engine with bookthinker, as described here . .

    In brief this works, because instead of passing control to Theking.exe directly after bookthinker runs out of moves, winboard "calls" inbetween which then feeds The King the correct OPK number. For aesthetic purposes you can rename bookthinker.exe and/or inbetween.exe if desired.

    If you are using Fritz for example, there is no need to do so, because the Fritz interface/gui automatically provides a opening book.

    For more discussion see this section on GUI opening books.

  • [D.3.8] How do I match Chessmaster 8000 versus 9000?

    The basic concept is similar. You import Chessmaster 8000 as a Winboard engine into Chessmaster 9000 and play then there. Or you could use both of them in other GUI like Fritz or Winboard.Same holds for 10000.

    This post by Mike Bryne might prove useful too

  • [D.3.9] How do I use Chessmaster personalities outside Chessmaster? Where can I find more Chessmaster personalities?

    As you have seen above it is also possible to export Chessmaster personalities out of Chessmaster for use by sending personality strings. The simplest way to do this is to first setup the Chessmaster personality in Chessmaster then follow the method outlined in Section [D.3.4] and copy the output.

    It's also possible to manually change the settings outside Chessmaster once you know what each of the variable stands for. For example if you want own control of center to be set at 105 ,just send mycc=105.For material values it's calculated has a percentage of the default. For example, the default value of Own Knight is 3.0. If you want Chessmaster to value it's own knight at 6.0, this is a 200% of default. So you must send myn=200.Still it's unclear how chessmaster handles fractions. For example, changing Own Knight to 3.4 , yields a parameter setting of myn=100.13333% etc. What parameter should we send? Currently I suspect you drop the fraction.. There is also a further complication if you change the material/Positional setting where a positive value will increase/decrease all the positional factors and the material values.

    Similarly it's unclear what happens (if anything) when a manual value of myn=115 is set, since this is equal to a value of 3.45 which is impossible in a Chessmaster setting since you can set only either 3.4 or 3.5 in Chessmaster.

    For this reason, It's advisable (espically when testing via Malin's winboardtouci adaptor which where easy self adjusting settings within uci gui might tempt you to try strange values) to convert from Chessmaster settings first rather than work on manual values.

    Chessmaster has always being famous for the degree in which you can custom different Chessmaster personalities (since Chessmaster 2000 I think).

    And as always, "tuning" of personalities to obtain the strongest chessmaster personality has always interested many fans.In the past before Chessmaster 8000 introduced Winboard support, this tuning was limited to auto-games between chessmaster personalities. Some have questioned whether this is effective, since the personality that is best in beating the default chessmaster might not necessary be strongest when pitted against other programs.After all, the aim is to get the strongest chess program not the one best at beating chessmaster personalities.

    But course if you own chessmaster 8000,9000 you can import strong winboard engines into chessmaster for testing. But even so , most people prefer to export chessmaster into Fritz etc to allow them to battle against chessbase engines (Fritz,Junior etc) which are generally stronger than the best Winboard engines.Below you can find some sites where people have done such testing of their own personalities against Fritz etc..

    You must keep in mind though, each tester might claim his personality be "best", but this is often dependent on tester's hardware (most testers have high end machines compared to the typical user) and time controls used in testing. In fact some have found that while a given personalities (say Kurt Uztinger's) is a lot better than the default against various chess programs, in long time controls (40 moves/40 mins for example), it's performance suffers when in blitz compared to default. For instance, it is suspected that higher selective search values are better for longer time control.Overall the default personality appears to be a good compromise.(Not to say that a better all-rounder cannot be found though).

    Also take note of the specific version of chessmaster used. Personalities that are good for say chessmaster 8000 are not always good also for other versions (say 9000). because of differences between each version.You have being warned. Below are some of the places where such testing has being done.


    [D.4] Crafty


    [D.5] Francesa




    [D.7] Knightcap



    [D.8] Little Goliath



    [D.9] SOS