Convekta Logo
Chess Software Sourcebook
Join Chess Reviews<>
Convekta Logo
Importing Bookup Information into Chess Assistant
keywords: Bookup, export, books, openings, tree, usr.hsh
Robert Pawlak
Monday, November 13, 2006

Some of you may remember that I've made reference to a technique for using Bookup data within Chess Assistant (CA). This article will describe how this is accomplished, with step by step instructions. The application of this technique requires Bookup Pro, since it is the only version of Bookup that supports PGN export of user books.

First I'll summarize the procedure before I get down to the details:

  1. In Bookup, export the book containing your repertoire to a PGN game.
  2. Convert the PGN file to CA format.
  3. Build the direct tree for the CA format database. 
  4. Join the resulting direct tree to CA's user book (which is also a direct tree).
  5. Use colored squares in the tree display to show which moves are in your book.

Detailed Description of the Procedure

The first step is to take a book that you've created in Bookup, and open it in Bookup 2000 Pro. Then go to the PGN menu and select "Export Book As A Game". In the screenshot below, I've opened a small book on the Colle opening and will export it to PGN.



You should then see a dialog come up that looks like the following:

[export dialog]

Make sure that the box titled "Export Comments" is checked. You don't need to fill in any of the other fields in the dialog, but you may want to change the location of the exported PGN file (hit the "PGN File..." button and change the location). After doing this, check the "OK" button. You should then see a progress dialog, which will disappear when the process is complete. In my case, the PGN file looked something like this.

Now start up your copy of Chess Assistant. Open the PGN file that you just created, and convert it to Chess Assistant format using the "Convert Base..." entry under the "Base" menu. This dialog is self explanatory and has good help available, so I won't go into the details of how to set this up. All I would caution is that if you are storing the new CA database and the PGN file in the same folder, then give the two databases different names. In this case, I called the new database Export2. In the picture below, the database to be converted (Export.pgn) is on the left hand side of the window (I added it using the "Add" button). And the output file is on the left hand side (specified using the "Browse" button). 

[convert database]

Now, double-click on the CA database that you just created (you should see it as an icon on the left hand side of the screen, in my case it is called Export2). Then select "Build the direct tree" from the "Dataset" menu. Note that there is also a command for building the direct tree under the file menu. You don't want to use this one, since it does not give you the option to import comments when you build the tree.

[build the direct tree]

Make sure you set up the dialog as I have shown above, with all the proper settings checked. "Max Moves" should be set to the depth of the deepest variation that is in the book. If you want to be sure that you get everything, you can specify a large number. Also, you want to make sure that "Variations" is set to "Include as positions". This option is necessary so that your repertoire is displayed in a useful way in the tree. Also make sure that "Include annotations is checked", with both "Long" and "Evaluations" checked as well. When you're sure everything is set properly, click on the "OK" button.

Now that you've got a direct tree that contains your Bookup repertoire, you can take this information and add it to the data already stored in your CA user book. To do this, select the "Tree" menu, then "Tree Operations", then "Join trees...". You should see a dialog box similar to the one shown below:

[direct tree building dialog]

  1. This is the location where you specify the file userbook.hsh, which should reside in your CA root directory (normally c:\Program Files\Chess Assistant X\, where X is the version of CA that you have).
  2. Specify a new tree file here. In this case, I've told CA to store the results of the tree joining operation in a new tree called "userbook_final", and put it in the root CA directory.
  3. Here you can specify a bevy of options. In general, you should set all these options as shown above. The only one which you might want to change is "Evaluations". In my case, I have evaluations of certain moves already stored in my userbook tree, and I would like them to override the evaluations which might be in my Bookup tree. Additionally, the way I've set this operation up, none of your existing data can get destroyed.
  4. Here you need to specify the location of the tree that you created from your Bookup material (in my case, called Export2). Note: don't be alarmed if you don't have a "Add to script" button in place of the "Run" button on your dialog. I took the above screenshot using a script that I have set up for joining trees.

When you've got everything setup properly, click the "OK" button. In a second or two the operation should complete.

Ok, now what you have is a new tree that is a combination of the tree information that you've already created in CA, along with some additional new material from your Bookup tree. One of the best ways that I've found to use this information is to do a quick check of whether a particular opening variation is in one of my Bookup books or not. I do this by assigning a color highlight to the book information. Now I'll outline the procedure for doing that.

First off, go to the "Tools" menu, and select "Tree options...". You should see a dialog like the one below:

[set colors for tree]

Click on "Set colors for tree". You should see another dialog come up. Click on one of the colors (I like blue), and then click the browse button:

[blue tree]

Then click on the "Browse" button, you should then see a file dialog, where you can specify the location of the tree you created previously (the one I named userbook_final):

[tree color final setup]

Click on the open button, then click "OK" on the tree color dialog. Do likewise with the tree options dialog. Now that you've set this up, moves that are present in your Bookup book will be shown in color whenever you've got a tree view open. For example, take a look at the game below:

[color tree move example]

In this position, both ...e6 and ...b6 are in the Colle book that I used for this example, so they show up with a small blue square next to them. Using this technique, it is possible to see at a glance which moves are already in your repertoire, and which aren't. Additionally, you will notice that any text comments that were present in your Bookup book, will also appear in the comments column (not shown above). This is pretty cool, eh?

Optional Step

If you're confident that the operation went successfully (i.e. both the new and old information are present in the tree), you can close CA, delete userbook.hsh, and userbook.elm, and then rename userbook_final.elm and userbook_final.hsh to userbook.elm and userbook.hsh, respectively. You would then need to change your tree coloring setup so that it uses userbook.hsh.


Once you've done this a few times, you'll find that updating the userbook information is pretty fast. You can even set up a script for doing this if you want to. And the color information really helps you keep your book information up to date.

Incidentally - I worked on this article on and off for the past two years (!). I hope some of you find it helpful.

ChessAssistant is a trademark of ChessOK
Syndication available through rss.xml
Click on my name to send me e-mail (must have javascript on)