BGBlitz V1.0
Frank Berger Software
Wilhelmstr. 27
50733 Cologne
Germany
frank@bgblitz.de

 

Introduction
Requirements
Installation
Menus
  File Menu
  Edit Menu
  Set-up Menu
  Game Menu
  Match Database Menu
  Position Database Menu
  Miscellaneous Menu
  Help Menu
How to Replay Matches
How to Play Remote
How to Record Matches on FIBS
Known Bugs / Issues
Legal Stuff
Credits

INTRODUCTION

BGBlitz is a program intended to be the ultimate in Backgammon software. It hosts strong Backgammon playing Bots, training aids, tools to analyze matches and any further features which are requested.

The current release version 1.0 has the following features:

  • A neural net, called TachiAI, which has learned to play worldclass Backgammon. For beginners there are also weaker levels available.
  • You can set your opponent to be human (useful for entering matches from books, etc.), network (to play against someone over TCP/IP) or TachiAI (the computer opponent). In the release 1.0 there's just one computer opponent, TachiAI. BGBlitz is designed to be able to host several bots and in the future there will be additional computer opponents.
  • You can play Backgammon or Nackgammon (a variant leading to more complex games)
  • Select your language between German and English. Other languages will follow, if there's demand.
  • You can train yourself with difficult positions from the quiz databases. You can download databases from the BGBlitz website or create your own.
  • You can analyze (best moves, evaluation, cube action) any position at any time, save positions and continue playing from a saved position.
  • BGBlitz has a calculator included which computes the important parameters for cube handling in matchplay, a useful aid in improving your cube decisions. You can choose from three popular match equity tables as the basis for the calculations.
  • You can replay, analyze and annotate your matches with BGBlitz or matches from many other sources such as FIBS, GamesGrid, etc...
  • You can collect matches in databases and select specific games (e.g. all matches from your next opponent in a tournament). Additionally you can calculate statistics, such as which openings are played and how successful they are.
  • There are a lot of formats for matches. With BGBlitz you can read many of them and convert to some other match-formats.
  • You can read logfiles from FIBS/W and MacFIBS with BGBlitz, so you can analyze your online games later.
  • With the included endgame-database you have very precise winning probabilities available and can improve your endgame play.
  • You can have a customized appearance and a wide range of settings in BGBlitz to your own personal taste.
  • You can copy a character representation of the current position to the clipboard. This is useful for sending positions in an email or newsgroup postings.
  • To prove that TachiAI doesn't cheat, you have full control of the initial value of the random number generator.
  • For the evaluation of long races, you can calculate the Kleinman count.
There are a lot of features, aren't there? But if you feel a feature is missing please tell us.

REQUIREMENTS

BGBlitz is a multi-platform software. It should run on every platform, delivering a complete Java 1.1 environment. The tested environments are:

  • Win 95, Win 98, Win ME, Win NT 4.0, Windows 2000 and Windows XP
  • Macintosh 9.2 or newer (probably from 8.5)
  • Macintosh OS X 10.1 or newer
  • Linux 2.2 or newer

A Pentium/200, K6/200 or a PowerPC/200 should be sufficient. If the 2ply-evaluation isn't used, a Pentium/100 or a PowerPC/100 will probably do fine.

About 12 MB free memory and about 10 MB on the disk are needed.
Naturally a faster CPU and more RAM never hurt ;-)

A resolution of 800x600 or higher is recommended. Depending on your platform a resolution of 1024x768 may be necessary for some dialogs boxes.

Before the installation of BGBlitz, you need a Java-virtual machine. Following Java versions are recommended:

Windows: for PC slower than a P/200 or with little memory I recommend Sun Java 1.1.8. For faster PC with lots of RAM Sun Java 1.3.1 is recommended. You may try the IBM JDK in both cases (they may be speedier, but I havn't tested them).

Macintosh: For Mac OS X, Java is already included. For Mac OS 9 or earlier, the Mac OS Runtime for Java (MRJ) 2.2 or newer is recommended. On many machines it will already be included.

Linux: for PC slower than a P/200 or with little memory I recommend Blackdown Java 1.1.8. For faster PCs with lots of RAM Sun JRE 1.3.1 is recommended. You may try the IBM JDK in both cases (they may be speedier, but I haven't tested them).

Earlier version were reported to run on IBM OS/2 (X86), Sun Solaris (Sparc), Compaq Digital UNIX (Alpha) and IBM AIX (PowerPC), therefore a generic java-version is available too and we will try our best to get it up and running for any platform you might have. If you get BGBlitz running on such a system, please send us an email, with a screenshot if possible. The requirements are probably similiar to the above systems.

If you don't have already a Java-version on your PC, you should be able to find them following the above links.
If you have installed BGBlitz and you see that no Java was installed, please uninstall BGBlitz, then install Java and then install BGBlitz again.

INSTALLATION

Windows Instructions:
After downloading, double-click install.exe.

You may need to install a Java 1.1.8 (or later) virtual machine before installation of BGBlitz. You can download one free of charge from Sun's Java web site. I recommend either 1.1.8 (small download; take the international version, if not a resident of an English speaking country) or 1.3.1 (most current). Microsoft Java does not work.

Mac OS Classic (8.1 or greater) Instructions:
After downloading, double-click install.

Requires PowerPC and Mac OS 8.1 or later
You may need to install Mac OS Runtime for Java (MRJ) 2.2 or newer before installation of BGBlitz.
The installer is MacBinary encoded and will be automatically decoded after downloading. If it does not, you can decode it using StuffIt Expander 4.5 or later.

Mac OS X Instructions:
After downloading, double-click install.

Requires PowerPC and Mac OS X 10.1 or later.
The installer will be recognized by Stuffit Expander and will be automatically decoded after downloading. If it does not, you can decode it using StuffIt Expander 6.0 or later.

Linux Instructions:
After downloading open a shell and, cd to the directory where you downloaded the installer.
At the prompt type: sh ./install.bin

You may need to install a Java 1.1.8 (or later) virtual machine before installation of BGBlitz. You can download one from Sun's Java web site or contact your OS manufacturer.

I recommend either Blackdown 1.1.8 or Sun JRE 1.3.1. Other virtual machines may not work, or look ugly.

These instructions will work for most other UNIX variants too, you just need a reasonable Java implementation.

All Other Platform Instructions:
Unix or Unix-like operating systems (if the Linux installer doesn't work):
For Java 2, after downloading, type
  java -jar install.jar
For Java 1.1, after downloading, type
  jre -cp install.jar install
If that does not work, try
  java -classpath [path to]classes.zip:install.jar install
If that does not work either, on sh-like shells, try
  cd [to directory where install.jar is located]
  CLASSPATH=install.jar
  export CLASSPATH
  java install
Or for csh-like shells, try
  cd [to directory where install.jar is located]
  setenv CLASSPATH install.jar
  java install

All Other Platforms
Be sure you have Java 1.1.8 or later installed.

In a console window, change to the directory where you downloaded install.jar before running the installer.
Your operating system may invoke Java in a different way. To start the installer, add install.jar to your CLASSPATH, then start the main class of the installer named install.

If there are problems with the installation, or with any other aspect of BGBlitz, feel free to contact us so we can help.

Menus
Now a explanation of the functions of BGBlitz given in the menus. Some aspects are further explained in later sections.

File Menu

Continue from Position
You can start a game from any saved Position. BGBlitz uses the format defined by Jellyfish.

Continue Interrupted Match
If you have interrupted a match, you can resume it later. This is useful e.g. when you enter a match from a book, which takes quite some time. These interrupted games are not guarantued to be compatible across different versions of BGBlitz, so it is recommended for short-term use only. Network matches can't be resumed.

Replay XYZ Match
Here you can replay matches from FIBS, PBEM and BGBlitz (*.gam), matches from Jellyfish (*.mat), games from Games Grid (*.cbg, *.sgg; the format of the cbg is not officially documented, but relies on reverse engineering by Gary Wong and Frank Berger) and matches from MacFibs. If there are problems with a file send it to Frank Berger). For a description of replay see How to replay a match.

Exit
Finishes BGBlitz following a confirmation.

Edit Menu

Copy
You can copy the current board as ASCII (i.e. characters) to the Clipboard, so you can paste it in other applications. This is a convenient way to send positions by email or to newsgroups. In some dialog boxes there are "copy" buttons which do the same thing. If the menu entry is available you can also use Ctrl-C (Mac command/apple-C).

Undo
In a game, you can undo your move with Ctrl-Z (Mac command/apple-Z). This is only possible before you have confirmed your move by clicking on the dice.

Reroll Dice
If you feel very uncomfortable with a roll, you may reroll the dice :-). Naturally, this works only when playing Human/TachiAI or Human vs. Human. It's intended use is for entering matches from a book when you have perhaps misselected the dice, thus avoiding reentering the match again.

Edit Position
Edit Position pops up a dialog box. Here you can edit the current position and either save it as a position file ("Save as Pos") or start a game from the edited position ("Start Game"). The button "Close" reverts all changes. With the radio buttons "Red" and "Green" you can select which checkers to move. "Start Board" sets the board to the starting position. "Empty Board" removes all checkers. "Copy" copies an ASCII representation of the position to the clipboard. The names of the players are useful only if you save the position. If you don't enter names "Red" and "Green" are assumed.
To move the checkers, you click on the points of your choice. A left mouse click moves a checker from off the board to the current point, if possible. A right click (Mac command/apple + click) removes a checker from the point.

Set-up Menu

Set-up Colors
It pops up a dialog box, where you can customize the board, the checkers and pips with colors or bitmaps of your choice. You have a choice between a bitmap (gif or jpeg are supported) or a simple color. If you press the "Browse" button either a file selector box appears, where you can select the bitmap of your choice or, if you choose color, a new dialog box comes up. Here you can either click on one of the colored buttons or select a color with the sliders. If you want a color similiar to the current one, you can use the buttons "Brighter" or "Darker".
There are no plausibility checks to avoid such interesting combinations as black checkers for both players on a black board with black points. If you create outstanding coloursets or bitmaps then please send me an e-mail with your bgblitz.cfg or bitmap files. But please make sure that all bitmaps are freely usable!

Choose Colorset
You can save the current color settings as a colorset, or load an already saved set. If you enter a new name you can create a new set of colors.

Miscellaneous Settings
A dialog box comes up where you can customize various settings.

  • A Double Click on the board. Select what happens when the board is double clicked and there is no game currently running. Choose between nothing, starting a money game and starting a match.
  • No. of Moves in Best Moves Dialog. Here you can select how many moves are shown in the "Best Moves" dialog box. Selecting less moves makes it quicker, but increases the probability that good moves are not included.
  • Keep Chat Window open. If you play over the net you have a chat window. Here you can select what happens when the game/match is finished. The Chat Window can either close or stay open. Staying open is useful if you intend to continue playing against the same opponent.
  • Shows Last Move in Replay. When replaying a game you may wish to see the last move of the opponent or not.
  • Enable old Match-DB Format. Selecting this option enables you to use the very old BGBlitz match database format.
  • Clipboard is buggy. On some older Java versions the clipboard didn't work so here was a workaround. The Position is not copied to the clipboard but to file clipboard.txt in the BGBlitz directory.
  • Clipboard has additional line bug. If you paste the position to the clipboard and find a lot of empty lines you may select this option.
  • Best Moves/Apply picks up dice. In the "Best Moves" dialog box you may apply one of the shown moves. If you select this option the move ends immidiatly, otherwise you may undo the move and select another move.
  • Show Question in Position Solutions. Selects whether in the quiz databases the question is shown with the solution again. If your screen has a lower resolution you may prefer this.

Language
You can select between English and German. If there is some demand a localization kit will be made available to very easily localize BGBlitz to your language. BTW, if you find some typos etc. please tell us. The choosen language is activated with the next start of BGBlitz.

Turn upside/down left/right
You can select the orientation of the board to your preference.

Show Numbers
As an aid the numbers of the points are shown on the board.

Show Pipcount
As an aid you can choose to show the total number of pips the checkers have left to move on the board. It is shown in the status lines of the board e.g. "Red P:167 T:196". This means player Red's checkers have to move 167 pips before all checkers are played out. T: is a modified Thorpe Count. The Thorpe Count tries to take into account structural features in a race, it is useful for cube decisions in endgames. It does not take into account who is on roll. According to the formula you should add 10% to the side about to roll if the pip count is greater than 30.

XYZ Checker
Because BGBlitz runs on very different operating systems, a wide range of computers and different Java implementations, you have great influence on the speed of the checker movement. There are three predefined settings: "Slow Checker", "Medium Checker" and "Fast Checker". With "Customize Checker" you can adjust it very precisely. The dialog "Movement" adjusts whether the checker has a constant (low) velocity or a higher speed and slows down at the starting and finishing point. "Delay Time" is the delay between two drawings of the checker. "Max Pixel Slow" and "Max Pixel Medium" sets the values where the acceleration starts. "Max Frame" sets the maximum number of frames shown. If you decrease that value, you get an acceleration on long movements. This may sound complicated, so just play around with this values if no predefined setting is adequate.

Game Menu

Eval Position
Eval position tries to calculate the probabilities of the different outcomes of the current game. If you're neither playing a game, replaying a match or looking at a position quiz, a file selector dialog box pops up, where you can select a pos file to evaluate.
The dialog box shows the estimated winning probabilities for both players and the equity. If the dice aren't rolled and the cube is accessible, it gives the suggested cube action.
The evaluation is based only on the current position. If you press "2-ply" all possible rolls of the dice and the best moves of the opponent are taken into account as well. This is usually more precise, but depending on your computer/operating system and Java implementation this can take some time (usually less than 3 seconds).

Best Moves
Here the best moves in TachAI's judgement are shown. The number of given moves is adjustable in the Miscellaneous Settings dialog box. Each line shows the move and its estimated equity. For the selected move the winning probabilities are shown.
"Apply" selects this move. Whether the move is already applied or can be taken back is adjustable in the Miscellaneous Settings dialog box.
"Show" shows the resulting position, "Restore" resets to the original position.
"Save" pops up a dialog box, where you can save the current position as a pos file.
The evaluation is based only of the current position. If you press "2ply" all possible rolls of the dice and the best moves of the opponent are taken into account too. This may take some seconds, depending on your computer and Java implementation.
"Copy" copies the position as a character board to the clipboard.

New Money Game
Starts a new game, with the current settings. In the statusline the current score of the session is shown. If you change essential settings, the score is reset. The score is not preserved between invocations of BGBlitz.

New Match
Pops up a dialog box where you can enter the length of the match, the current score of the opponent and whether it is the Crawford game. The score is shown in the statusline.

Quit Match/Game
Quit match/game stops the game/match after a confirmation.

Double
Doubles the stakes. As a convenient alternative you can click on the doubling cube.

Save Pos
Opens a file selector where you can save the current position as a pos file.

Undo Move
You can undo your move with this menu entry or with Ctrl-Z (Mac command/apple-Z). This is only possible before you have confirmed your move with a click on the dice.

Interrupt Match/Game
In a long match against the computer or if you are entering a match from a book you can interrupt this match and continue it with Continue Interrupted Match later. An interrupted match is only intended for short time use and may not be compatible between different versions of BGBlitz.

Finish Game
If the outcome of the game is clear you may press "Finish Game". In this case both sides are played by the Neural Net until the end.

Insert Comment
If you save the game/match in the database or in the BGBlitz format you can go ahead and enter comments during the game.

Seed
In the newsgroups you can often read about XYZ-program cheats. "It always rolls a double when it needs one" or something similiar. As the author I know BGBlitz doesn't cheat, but how can I convince you? Some arguments:

  • the top programs, all based on neural net technology, are brutally strong, so most humans will constantly lose a high number of the games. The bots just move their checkers very well, maximizing the number of good rolls and minimizing the good rolls of their opponent.
  • I've never heard of a top human player like Woolsey, Robertie or Meyburg, complaining that a top program cheats. They know how strongly these programs play.
  • Just use manual dice so no cheating is possible.
  • Or use this menu entry. It sets the initial value of the random number generator. Set the seed before a game. Play it to the end. Set again with the same value and make different moves. You will see that the exact same numbers are rolled again and again. This menu entry is only enabled if you play against the computer. In a network game the random number generator is initialized additionally to avoid any possibility of cheating.

Config Player
Here you can configure both players in the pop up dialog box. You can select the type of player between Human, Network and TachiAi. The combination of both Network isn't allowed. The name is used for identifying the players. TachiAI is a computer player based on neural net technology.
You can adjust the level of play, expert is the strongest level. You can choose 2ply which makes TachiAi not only take the current position and the possible moves into account but also all possible following rolls and the best moves of the opponent. This takes much more time, but on a decent computer, it should not take more than a few seconds in most positions. The resulting playing strength is world class.
With cube policy you can adjust how aggressive TachiAI handles the cube.
During the game you can't change the type of player or the name, but all other values are adjustable.

Config Game -> Use Cube
This entry selects whether the cube is used or not. Normally this option should be on.

Config Game -> Use Crawford
In match play there exits a rule, the Crawford rule, which states that after one player reaches just one less than the final score, for one and only one game the cube can not be used. After this game the doubling cube may be used again. Normally this option should be on.

Config Game -> Use Jacoby
This rule says that Gammons and Backgammons count only as a single point in undoubled games. This rule should avoid boring games where one side keeps the cube knowing that the other side has to drop. This rule is only used in money games.

Config Game -> Manual Dice
Here you can adjust whether the dice should be generated or will be entered manually. The later option is useful if you enter a match or don't trust the random number generator. (But the generator is fair. If there is demand an interface will be published where a random number generator can be plugged in). You can reroll the dice with Reroll.

Config Game -> Play Nackgammon
Nackgammon is a Backgammon variant which tends to lead to more complex games and is a good way to train your skill.

Match-Database Menu
Included is a database engine for backgammon matches. You can select a match by match number, or you can select all 5-pt matches between player x and y, which are at least 4 games long. Just play around.
Some words of caution. This database is not transaction oriented, so it may break on writes, if something unusual happens (powerfail, bug...). Therefore I strongly recommend: "Make a backup!". If you create your own databases or make use of lots of comments this may save your work. The database is quite stable, but you never know what can happen!

New Match Database
Here you can create a new match database. Match databases are intended for later analysis, to record the personal games, to learn from matches of top players or for preparation in a tournament, when you watch some games from your next opponent. The extension for the new database format is ".bgdb".

Select Current Database
Here you can select the match database to use. A file selector dialog box comes up where you can choose the database. By default the database "./matchDB/Standard.bgdb" is already loaded. Only one database at a time is resident.

Replay Match from DB -> Select by Matchnumber
A dialog box comes up where you can select the match to replay. A double-click or "OK" selects the current selected game. "First" and "Last" sets the current selected game to the first and last game. You may use the cursor keys for navigation and "Return" for selection.

Replay Match from DB -> Select by Player
A dialog box pops up where you can select a match by the name of the players, the match length and the number of games played. "Recalculate" selects the matches which matches your criteria. A double-click or "OK" selects the current selected game. "First" and "Last" sets the current selected game to the first and last game. You may use the cursor keys for navigation and "Return" for selection.

Database Statistics -> Analyze openings
BGBlitz can generate several statistics on databases. Here BGBlitz analyzes which openings are played, how they are played, and how successful the variants are. Keep in mind that unless there are at least 40-50 games for a roll the numbers are without statistical significance. The percentage of the games won is shown. A value of 0.500 means, that after a given roll and move the winning probabilities are exactly 50% - 50%. An value of 0.600 tells you that the side who made the first move will win about 60% of the games.

Database Statistics -> Analyze Matchlength
These statistics answers the question how many games are played in matches with various length. These numbers might be useful for constructing matchequity tables.

Database Statistics -> Analyze Moves per Game
How many moves are there in the average game? Here you can find the answer, shown for 1pt games and all games.

Export Match by XYZ
Here you can export a match from the database. First a match-selection dialog box pops up where you select the match to export. Then another dialog box comes up where you select the format of the output file between BGBlitz, Fibs-oldmove and Jellyfish-mat, and the name of the output file.

Import XYZ Match
You can import several types of matches, BGBlitz, Fibs-oldmove, Jellyfish-mat, Games Grid-sgg and Games Grid-cbg into the databse. The cbg format is undocumented and relies on reverse engineereing by Gary Wong and me, so it may sometimes fail. In this case please send me the failing file. The Snowie format isn't supported, because the structure is unknown.

Bulk Import (....)
Imagine you want to import several hundreds of games, how long would it take to import them game by game? Far too long! So here is the bulk update, just select a plain text file with a list of files. BGBlitz will try to import them, game by game and shows you finally where problems have been. An example:
D:\temp\match\AMUEVKG.CBG
D:\temp\match\pjtvmichaelm.CBG
D:\temp\match\x22vsvobo.CBG
D:\temp\match\Ballard_Markowitz.mat
D:\temp\match\Ballard_Senkiewicz.mat
D:\temp\match\Eisenberg-Magriel.mat
D:\temp\match\Robertie-Senkiewicz.mat
D:\temp\match\Senkiewicz-Svobodny.mat
D:\temp\match\snowie_vs_JF.mat
D:\temp\match\snowie_vs_JF2.mat
D:\temp\match\snowie_vs_JF3.mat
D:\temp\match\snowie_vs_JF4.mat
D:\temp\match\snowie_vs_JF5.mat
D:\temp\match\Goulding-Levermann_1.mat
D:\temp\match\Granstedt_vs_Jersov.mat
D:\temp\match\1999Schiemann-Kuehl_5Kaiserbr-Cup-F.mat
D:\temp\match\1994Frigo-Thomsen_MonteCarlo-WM-Finale.mat
D:\temp\match\1994Robertie-Hosen_Istanbul-Finale.mat
      
As you see, you can mix different file types. The file ending determines the type of file.

Delete Match by XYZ
Here you can select a match you want to delete. You select a match with the normal match selection dialog box. Before it really will be deleted a confirmation dialog box pops up.

Position-Database Menu

New Position Database
Here you can create a new position database. Position databases are kind of quizzes to improve your analytical skills. You can download position databases from the BGBlitz website or create your own, e.g. with positions from your most important matches or other interesting positions.

Select Position Database
Here you can select the position database to use. A file selector dialog box comes up where you can choose the database. Only one database at a time is resident. pdb is the extension of position databases.

Show Introduction
Shows introductionary information on the database. This includes the title, the author with his email address and the version. And most importantly, a description of the database, and important information like which program was used for the roll out etc. "Show Conclusion" shows the dialog box with the final comments.

Show Conclusion
Pops up a dialog box giving the final comments on the database. It's intended to give some conclusions after having seen all problems.

Show DB-Position
A dialog box opens where you can select from all positions in the database. "First" and "Last" select the first and last position, respectively. When you click "OK", press return or double-click on a position, the selected position opens up.
In this position you have several buttons. With "Horizontal" and "Vertical" you can determine the layout of the dialog box to your preference. You can navigate in the database with the following buttons:
first position last position
previous position next position
"Show Solution" shows the solution, the explaining text and the resulting position.

Editing -> Append DB-Position
First a dialog box pops up where you can select whether the board to edit is empty, is the start position or is initialized by a pos-file. With the browse button you can select the pos-file.
Now the editing dialog box comes up.
With "red" and "green" you can select which checkers to move. To edit you click on the points of your choice. A left mouse click moves a checker from the home to the current point, if possible. A right click (Mac command/apple + click) moves a checker from the point to off the board. If you ignore the red/green-check boxes and just click BGBlitz is quite smart in getting your intention.
"Reinit" opens the initializing dialog box again.
"Board Q" and "Board A" select which board to edit, the Question Board or the Answer board.
"Copy" copies an ASCII representation of the current position to the clipboard for later reuse in e.g. your email program.
"Title" should give a description of the position. Examples are "Better BG Pos 15" or "Advanced BG Problem 121".
"Question" should make the problem clear. If the question is exactly "--generate automatically--" (default for a new Position) BGBlitz automatically generates a question. This automatic question is even localized. The idea is simply to save you some repetitive typing.
The name fields are clear. If you don't enter a name "Green" and "Red" are used.
"Category" is shown in the selection dialog box. There should be text such as "Opening", "Backgame" etc.
If "Matchlength" is 0 then a moneygame is assumed.
If you don't enter dice values a cube-problem is assumed, otherwise a checker-problem.
The other fields should be clear.

Editing -> Insert DB-Position at
It let's you select a position in the database. The new position is created at the selected position and all positions behind are shifted. Then it works exactly like Append DB-Position. If you had typed the positions from a book and forgot one, this is very handy.

Editing -> Edit DB-Position at
You can select which position to edit. Editing works like Append DB-Position.

Editing -> Delete DB-Position
You can select which position to delete. After the selection the position is shown and you have to confirm the deletion.

Editing -> Export DB-Position
You select the position and then a file dialog box pops up. It is saved as a bps file, a special BGBlitz format. The bps format is intended to copy positions between position-DBs. If you are discussing positions with a friend then it can be easy to email positions, or to work together on a database.

Editing -> Append Import DB-Position
A file selector comes up. You select a bps file which is appended to the database.

Editing -> Import DB-Position at
It lets you select a position in the database. The imported position is created at the selected position and all following positions are shifted.

Miscellaneous Menu

Doubling Strategy
In match play cube strategy is strongly influenced by the current match score. This feature tries to calculate the relevant numbers for correct cube strategy. Into the upper part of this window you have fields to enter the match length, the current value of the cube and the assumed winning possibilities of the actual position. You can enter the winning possibilities values in two modes:

  • In the old notation you have to put in absolute percentage values. For example: In a given position you have total winning chances of 70% and half of your wins will be gammons, no gammons for your opponent, no backgammons for both. Then you have to input 35 single games, 35 gammons for yourself and 30 single games for your opponent. The sum of all single games, gammons and backgammons always must be 100! Otherwise you'll get an error message.
  • The Jellyfish-format asks for the total wins and is sometimes more comfortable to use. The above example would be entered as 70 wins, 35 gammons and 30 wins for the opponent.
Doubling/Takepoints
Here the results of your input are shown. If you are looking for an explanation of the formulas, go to the web. Tom Keith and Kit Woolsey/Stephen Turner wrote excellent articles about this subject. "Double Redouble" shows your equity if you double your opponent and he flips the cube back on his next turn.
Early/Late Cost Ratio
This feature tries to show the value of the cube. A low value (e.g. 0.3) means, that you should prefer to double earlier, a high value (e.g. 1.2) tells you, to be reluctant with the cube. Tom Keith's table is used. If the actual value is not in the table, "9.9" is shown.
Gammon price
Ron Karr explains the gammon price very clearly. The gammon price represents the relative value of a gammon swing versus a win-loss swing. In other words: it is a measure whether it is worth to take additional risks to win a gammon or not, depending on the match score. The gammon price is shown in an interval between 0 and +1. In a money game it is always 0.5; that means, if you are trying to get one extra gammon you may not loose more than a half game, otherwise your risk is too costly. The higher this ratio is, the less "dangerous" it is aiming for extra gammons. If a value can't be calculated, "-9.99" is shown.
Formulas
The formulas are based on the match equity tables of Kit Woolsey and Roy Friedman. You can toggle between them. The main difference between these two tables is the assumed gammon probability. Woolsey assumes 10.78% gammons for the trailer in a crawford match. Friedman says, that the probability of winning a gammon in a cubeless game is about 18% each. For match scores not covered by any table Rick Janowski´s approximation formula to calculate the values is used. Automatic redoubles and last roll positions are not explicitly considered. A 3rd match-equity-table, according to Tomas Szabo with 26% Gammon possibility, is included. Tables for other values could be derived here. Acey_deucy pointed out, that this value is closer to reality, especially in 4-away situations and is used by mloner too. A 15x15 table, rounded to 2 decimals is used.

Kleinman Count
How to estimate the winning chances in a running game? The Kleinman Count tries to estimates this, based on the statistical concept of the Normal Distribution, which is for longer races very accurate.
You may feed the pure pipcount or adjust it.

  • According to Ortega, when the bearoff had already begun, add 2 pips for each extra checker add 1 pip for each checker beyond the 2nd on the 1 point add 1 pip for each gap in the home board.
  • For longer races, according to Ward, add 2 pips for each checker beyond the 2nd on the first 2 points and add 1/2 pips for each extra checker in the outfield.
You enter the optimal adjusted pip count for both players and the winning probability is calculated. 0.66 means that the side on turn wins 66% of the games and loses only 34%.

Read (Mac)Fibs Log
So you've played on Fibs and you are unsure whether this crucial move was correct. You have to analyze this! Later you get some help on recording games on Fibs. With this menu you can parse your logfiles and either extract your matches or import them in the match database. In the first field you have to enter the logfile. On Fibs the player himself is called "You"; in the next field you can enter the replacement text.
When BGBlitz has parsed the logfile all matches are shown in the next text area. When you've selected one match, you can either select or enter an output file and select one of the supported output formats, or you can select a database (this makes this the current database) and import the match. With "Import All" all matches are imported.

Convert File
Here you may convert match files from GamesGrid, Jellyfish, FIBS-Oldmove, PBEM and BGBlitz format to Jellyfish Matfile, FIBS-Oldmove and BGBlitz. BGBlitz tries to retain as much information as possible. Gamesgrid and BGBlitz carry the most information, but there is not enough information known to write a GamesGrid file.
The infile is the file to convert. In the left group you select the format of the input file. In the right group you can select the output format. In the output file is a suggestion for the name of the outputfile which can be overwritten.

Bulk Conversion to XXX
If you want to convert many files at once, edit a file with the paths to all matches e.g.
d:\destination_directory
c:\tmp\kit_hal.mat
c:\tmp\ace_fwb.mat
d:\bg\nordic\final.cbg
      
There may be a line with a directory in it (e.g. here on the first line). This is treated as the destination directory. You select this file and BGBlitz tries to convert the matches. At the end BGBlitz shows a report, including whether there have been any problems.

Bearoff Probs
The bearoff database is based on a program Stein Kulseth made available online some time ago. Some text of this chapter is from his original posting. Thanks to Stein Kulseth.
BGBlitz calculates close to exact bearoff probability distributions for any bearoff position. It does so by using a database of all positions, with probabilities for being off in n throws. From this database the expected value of the number of throws, needed to bear off, can be retrieved and two positions can be compared, to give the cubeless winning probability.
This database is one sided, i.e. only the checkers of one side are taken into account, when calculating the expected average rolls to bear off. This leads to some problems, e.g. you should normally make the moves that minimizes the expected number of rolls to bear off, but what, if you have only one more roll left? Naturally you should maximize the chances of being off in one roll. BGBlitz tries to overcome this problem by calculating all next moves of the opponent so it is quite exact.
Further the influence of the cube isn't taken into account. In reality, if your winning probability goes under/over a certain margin and the cube is accessible the game is usually ended by the cube. This effects are not calculated. Nevertheless the numbers are useful and the numbers are close to the real values. A two sided database with cube would unfortunately take up several gigabytes, which would make this inappropriate for download :-)
The dialog box shows the home board of both opponents. The orientation matches the graphical board. With "Bott to move" you select who's turn it is. "From JF-Pos" lets you take the value from a pos-file. "From Board" copies the checkers from the graphical board. When you enter some dice in the "dice" field, "Best Moves" calculates the possible moves and the resulting winning probabilities.
"Average Rolls" calculates how many rolls you need on average to finish the game and the distribution of the rolls (very small probabilities are truncated).
"Winning Probabilities" calculates the winning probabilities when the dice haven't been rolled already.

Redraw CRT
If there is some garbage on the screen, this forces a repaint of the screen.

Help Menu

Instructions
Pops up this page in your favorite Browser. You could also find this manual on the BGBlitz-website.

FAQ
Pops up your favorite Browser with the Frequently Asked Questions page. This page is also on the BGBlitz-website.

Backgammon Links -> XYZ
Here are some useful links for the Backgammon enthusiast, shown in your browser.

BGBlitz Mips
BGBlitz is able to run on quite a few different platforms. To have a possibility of comparing different Java environments, this little benchmark has been included. If your system has a value of 1.0 or higher you could use 2ply evaluation for TachiAI and have reasonable response times. If it is far less than 1.0 (e.g. 0.2) 2ply isn't recommended. For the values in between it depends on your patience.

About
Pops up a copyright message showing the kind of license and the data of the licensee, if it is a commercial version.

BGBlitz Homepage
Shows the BGBlitz home page in your browser.

BGBlitz Download
Shows the BGBlitz Download page in your browser. Here you can download the latest release, some match databases and position databases.

BGBlitz Upgrade
On this page, which is shown in your browser, you can upgrade your version (naturally only, if you don't already have the highest version).

BGBlitz License
Explains the terms of usage.

Credits
Some people helped to make BGBlitz the program it is and some stuff from other people was used. Here is my "Thank You".

How to Replay Matches

You can replay matches from various files or select a match from a match database. After you have chosen a match, a kind of remote control appears on the screen. With the "Horizontal/Vertical/Minimal" button you can change the layout of this remote control. You can also position the control freely on the screen.
The first line / left area on the remote control shows some information about the match. The first player has his home board at the top, the other one naturally at the bottom. In the white area below / in the middle, you can add your comments or your analysis. If you do that, these comments will be saved at the end of the game, if you confirm saving at the end of the game (comments only works for formats which supports comments, i.e. Bgblitz gam-files and the database matches). The buttons below the editing area/at the right side will navigate you through the match. They are arranged as follows:
first game last game
previous game next game
first move last move
previous move next move
The field with the actual move number is an editable field. You can jump to any valid move of the game by typing a number here. The extended info shows some additional information of the match. In the big database it currently shows rating and rank of the players.
In the main window is a status line. Here you find information about the player on roll and, if enabled, the pipcount (P) and Thorpe-count (T). For those who don't know what the "Thorpe count" is, it is explained in the Backgammon newsgroup archive. I haven't added 10% to the leader's count.
The "Export"-Button exports the current position in a pos file. In stages where it isn't possible to export the position, the button is disabled. Just take the position before or after the actual position (e.g. you can't save during an accept of a double).
You can use the replay facility in two modes. The fast-mode is intended for skimming quickly through the match (useful if you want to learn the style of an opponent). The normal mode allows you to think on every decision yourself.
With Ctrl-C (Mac Apple-C) or Edit/Copy you can copy the position to the clipboard, so you can easily put a position in a email or post it to a newsgroup.

How to Play Remote

With BGBlitz you can play against an opponent over a network, but how do you set this up? First you have to tell BGBlitz that you want to play over the network. You can do this in the dialog "Game/Config Player", where you choose "network" as type. Now when you start a game, a dialog comes up, where you have to enter the data to find your opponent. You have to enter the name of his machine e.g. "apollo.acme.com" or it's numerical address e.g. 193.16.16.2. Then you have to decide on which channel to talk. You and your opponent have to agree on the same channel! When you then press "Connect" BGBlitz tries to connect to BGBlitz on your opponents computer. If this don't works or you're tired of waiting, you can interrupt this with "Cancel". If everything goes well the game starts and a chat window opens up. In the upper part the chatted text will be displayed. In the entry field you can enter your chat. You can recall older entry lines with the cursor keys.
The chat window is usually closed after a game, but when you play several games against the same opponent, you may want to keep the chat window open. You can adjust this at the Miscellaneous Settings.
One of the programs is the master for this game (it is decided by the value of the TCP/IP address). The master rolls the dice and if the settings for the game has been different (e.g. match/money games, match length etc.) the master's settings are taken.
To avoid any cheating with the dice, machine generated dice are taken, the seed for the random number generator is ignored and freshly initialized with a time dependent seed.

How to Record Matches on FIBS

If you are playing with FIBS/W the program is able to write down all the output of a FIBS session into a file. Let's assume you have just logged into FIBS and want to play a match.

  1. Toggle moreboard "on", autoboard "on", set boardstyle "3" and save these options.
  2. Type ">file.log" at the telnet prompt, where "file" stands for an optional name you like. Now all output (moves, shouts, whispers...) are written into this file.
  3. Play your match (and hopefully win it).
  4. After your match type ">". Now the "file.log" is closed. If you want to play a second match just type ">filea.log" and so on.
  5. A few hours later you may log out.
This file can be analyzed with "Miscellaneous/Read Fibslog". You have to enter/choose your input file and either a export-filename or an match database to import your games. Just select a game and press the appropriate button. That's all.

Known Bugs / Issues

Fixing bugs always has the highest priority in BGBlitz, no version with a known bug should be ever delivered. Unfortunately, sometimes you have bugs in the Java virtual machine and no workaround exists. Fortunately the quality of the virtual machines is very high nowadays.

  • On Windows 95,98,ME when you use Java 1.1.x and the display uses 32-bit colours, the board shows wrong colors, both checkers black etc. Either use Java 1.3.1 or use less colors e.g. 24-bit or 16-bit colors.
  • On Mac OS X the textfields are shown with proportional fonts instead of non proportional fonts. This makes e.g. statistics difficult to read. This problem is fixed with Mac OS X version 10.1.3 plus the java 1.3.1 update 1.
  • On Mac OS X the comments in the statusline are sometimes shown only after a move of the mouse. This problem is fixed with Mac OS X version 10.1.3 plus the java 1.3.1 update 1.
  • On Mac OS X the List control sometimes doesn't show the scrollbar. The "Best Moves" and "Choose Color Set" dialogs may be affected. After resizing the dialog, the display is usually o.k.
  • Sometimes you can't start a game with a double-click on the board on Mac OS X. After resizing the board, it is usually o.k.
If you find a bug or you feel the handling is awkward at some point, please tell us. We can only fix bugs / issues, that we are aware of.

Legal Stuff

Now some legal stuff: The author of BGBlitz makes ABSOLUTELY NO WARRANTIES of any kind, expressed or implied, regarding the quality of this software or its fitness to any particular task. The user agrees that any risks associated with the use of this software are assumed by the user. The author isn't liable for any damage whatsoever.
What this really means: there has been a lot of effort put in to making BGBlitz a high quality software. It is carefully designed and has been tested thoroughly. However, we can't make sure there are no errors or that it runs under every environment. There may be influences outside of the BGBlitz binaries that can affect its operations.
To rephrase the stuff above: if BGB crashes and you loose data, BGB formats your harddisk, sends your screen to the Nirvana or damages your mouse, the author is not going to be responsible. If you can't accept these terms then you should not use this software (or probably any other software product).

Credits


Without building on the work of others it's much more difficult
to create complex software like BGBlitz. Thanks to all the people
who contributed to BGBlitz.

The following people contributed Backgammon related stuff:

- Gary Wong made the first investigations related to the
  CBG format, used by GamesGrid for saving matches

- Stein Kulseth, who created Bebop. BGBlitz's endgame database
  is based on Bebop, with some improvements

Naturally all contributed stuff is available in the free edition.

The following software is used:

- JFlex by Gerwin Klein http://www.jflex.de
- The cryptographic library by http://www.cryptix.org
- Log4j by The Jakarta Project http://jakarta.apache.org/log4j
- GNU regexp by Wes Biggs http://www.cacas.org/java/gnu/regexp/
- GNU getopt by Aaron M. Renn  http://www.gnu.org
- BrowserLauncher by Eric Albert http://www.stanford.edu/~ejalbert/software/BrowserLauncher
- some bytes from the book by Geary, McLellan: "Graphic Java"
- some bytes by the W3C http://www.w3c.org
- The description of the random number generator can be found in
  Watkins[1992]: Discrete Event Simulation in C
- BGBlitz contains some icons derived from Corel Draw 7 SE and Corel Gallery Magic Cliparts
- some icons from Dean S. Jones icon collection on http://www.javalobby.org

If I have forgotten to mention one person or any software it is not intentional and
will be fixed ASAP as I'm made aware of this. The source for the mentioned modules
is reachable at the given addresses or can be obtained from me.


Very special thanks to Achim "acepoint" Mueller (acepoint at Fibs and GG) for his
valuable ideas and help, Alef Rosenbaum who helped a lot to fix my sort of English
and Roger Troost who made the Dutch translation.

Greetings in alphabetical order to:
Alan Webb, Angel of Death, Art Grater, Boris Melnikov,
Don Banks, Eric Groleau, Fabio Fioravanti,
Faramarz Shemirani, Francois Hochede, Frank Haselein,
Freimut Hennies, Gary Wong, Gerwin Klein,
Hardy Rothweiler, Ian Shaw, Jennifer Averett,
Martin Moeller Pedersen, Massimiliano d'Ajello,
Nardy Pillards, Peter Nevalainen, Robert Fish,
Simon Woodhead, Sir John, Stein Kulseth, Sven-Olaf Noren.

Thanks to my family which tolerates my work on BGBlitz,
although it took a lot of their time.

Enjoy!

          
I am very grateful for feedback towards improving BGBlitz. I hope that it is a useful tool to further improve our knowledge of the game, and that it brings fun and excitement when playing against it.
English is not my native language, so if there are some quirks (i'm sure there are a lot), I'll appreciate any help.
And I hope I haven't missed anything in this readme :-).

Frank Berger

Last updated: 30 March 2002