ChessTree User Manual




What is ChessTree ?


I like chess. I like playing it, and I like studying it. I have lots of chess books which let me follow along the games of the masters, complete with move commentary. To fully understand why the player made a certain move, the authors provide many different potential alternate moves, complete with moves and commentary, sometimes more than 10 levels deep. When you're following along on a chess board, it's hard to keep track of all these subgames.


That's where ChessTree comes in. It's specifically designed to help the user study games and/or do their own exploring. It's very good at tracking the various paths of a game, and letting the user branch off to study a different move, or go back and continue along the main line. It keeps track of all the different branches and lets users go to any branch or move at any time. It's NOT meant to be used to play a game, though two players can use it to do just that. It contains no artificial intelligence, except for knowing the rules of the game.


It’s very good for:

-         Studying a certain opening move.

-         Following along with a Grandmaster’s game.

-         Studying your own games to determine what you could have done differently.

-         Easily and cheaply distributing your own games, commentary & new theories.


Quick Start


            ChessTree consists of four main windows:


1)      Main Window – This contains the chess board and pieces. Fairly straightforward.

2)      Moves Window – This contains the entire chain of moves for the particular branch you are on.

3)      Branch Window – This contains all the branches you have created. There’s always at least one branch, the main line.

4)      Commentary Window – Contains any comments for the move you are on. These can be your own comments, or the comments made by whomever made the game.


The heart of ChessTree lies in branches. If you’re pushing pieces around, you might not notice any difference from a normal chess program. With ChessTree though, at any time you can study a different path or set of paths from a particular move. What would happen if you had moved the knight instead of the bishop? You can explore these questions with branches. To create a branch, either:


1)      Click on the particular move in the Moves window that you want to branch off of.


2)      Select “Branch Next Move” from the Branch menu (or press Ctrl-B). This will create a branch at the end of the current move chain.


Then just make the move that you want to. A new branch will automatically be created. You’re free to make as many branches as you want.


That’s all there is to it! ChessTree is simple, but can be a powerful tool for studying chess. For more information, read on.....




-         Branch” – A branch is a set of moves from a certain starting point to some kind of end. By “end” I mean checkmate, draw, resignation or after a certain point has been made about the position of the board. There is always one branch, the main line, that has no parent and cannot be removed. All other branches our subsets of this main line or another branch. The starting point for a branch can be any move that exists on any branch.

-         Chain” – A chain is a complete set of moves, from the opening pawn push to some kind of end. A chain can contain one branch (the main line) or can be made up of a bunch of branches, but always starts from the first move.




File Menu

-         New Game – Clears all the moves & branches and resets the board. Pretty straightforward.

-         Save Game Tree – Saves the current game, including branches & commentary. Work is underway to save games in different, standard formats, such as PGN notation.

-         Load Game Tree – Loads a previously saved game.


Edit Menu

-         Edit Preferences – Edits ChessTree’s preferences. Preferences are stored in


This file will be created if missing. You can safely remove options from the file, or even remove it entirely. If you do so, missing options will be taken from defaults within the program, which will then be written out upon exiting.


A number of debugging options are contained in the preferences file that are not available through the graphical interface. Feel free to play around with them if you want.


ChessTree preferences:

o       Windows:

§         Lock Dialogs To Main Window: This will lock the three information windows to the main window. If you move the main window, the other three will move with it. Note that this can cause jittery movement on some window managers.

§         Save Window Settings Upon Exit: Will save the current size and location of the three information windows (relative to the main window) when you quit ChessTree. Otherwise the windows will resume their default locations (or whatever is stored in your configuration file)


View Menu

-         Commentary, Move List, and Branches – Either hides or shows the selected window.

-         Game Info – Brings up the game information dialog. Here you can enter game information such as the names of the players, the location & date of the game, and any brief comments about the game you have.


Board Menu

-         Take Back Move – Takes back (deletes) the last move of the current chain. If you take back a move that has one or more branches off of it, ChessTree merges the chains according to a simple rule. It can be one of two situations:

o       If we delete a child branch (it branches off from another branch), then we just remove the branch and go on our way.

o       If we delete the parent branch, then we must merge the two of them together, otherwise the child branch will be parentless. The child branch is deleted, but all of its moves are merged into the parent branch


Branch Menu

-         Go To Parent Of Current Branch – Selects the parent branch of this current branch.

-         Go To Next Branch – Selects the next branch. This uses tree logic and might not always be the branch you expect. Every branch will be visited though, and selection will wrap around once reaching the last branch.

-         Go To Prev Branch – Selects the previous branch.

-         Go To Marked Branch – Selects the branch which you have marked, if any.

-         Go To End Of Current Chain – Goes to the last move in the current chain. Handy if you want to continue entering in moves at the end of this chain.

-         Delete Current Branch – Deletes the currently selected branch, along with all its children.

-         Delete Current Branch’s Children – Deletes all the currently selected branch’s children. This is handy if you were experimenting with a certain position and you’re done with it. You can just delete all the temporary branches you made in one move and continue on.

-         Go To Marked Branch & Delete Children – Same idea as the above option. You can mark a branch (see below) and then play around with a position. When you’re done, you can select this option and it will delete all the branches you made from this position in one click.

-         Branch Next Move – Tells ChessTree to branch the next move you make off the current branch.

-         Mark Current Branch – Marks the current branch for easy retrieval. Think of it as a bookmark.


Help Menu

-         About – Contains copyright & version information as well as ways to get in touch with me. Feel free to email me with any comments & suggestions!!!




Moves Window

Fig. 1 – Moves Window

The Moves window shows all the moves for the currently selected branch. Note that all the moves for all parent branches are included, just for completeness. The move window will be updated automatically whenever you make a new move, or whenever you select a different branch.


-The Moves window can be moved, but it cannot be resized as the lists need to maintain a constant size for presenting the text.


Branches Window

Fig. 2 – Branches Window


The Branches window is responsible for coordinating the various branches you are studying. Each node in the tree represents a series of moves, from the move where the branch was created to the end of the branch. You can directly select a branch by clicking on it.


The Branches window updates itself automatically. When you create a branch, it will automatically be placed correctly. A context menu is available to perform operations on a particular branch. They are fairly self-explanatory. See Fig. 3 for a diagram of the context menu.

Fig. 3 – Branches Context Menu


-The Branches window can be moved and resized however you see fit.


Commentary Window

Fig. 4 – Commentary Window


The Commentary window holds any thoughts, ideas, theories, rants, raves and any other comments you want to make on a particular board position. Every move on every branch has it’s own space for commentary. If you make a change to the current commentary, it will automatically be saved when you make another move or select a different branch.


-The Commentary window can be moved and resized however you see fit.




Command Line Options


A number of command line options are availble to ChessTree:


  -c FILE or --config FILE         Use specified configuration file

  -v or --version                         Display version and copyright information and exit

  -h or --help                              Display help and then exit


Reporting Bugs


If you want to report a bug, I’d prefer it if you didn’t email me directly. Instead go here:


Then click on “Bugs” and then “Submit New”. This will let me track the bug and provide feedback in an orderly manner. You can also submit feature requests here.


Asking Questions


The easiest way to get help is to go here and post a new message:


You might find that your question has already been asked and answered. In addition, if your question is new, it will let other users see it.


Getting in touch with me


If you have a question, comment or suggestion and don’t feel like going through Sourceforge, feel free to email me directly:


bakreule <at> SPAMNOusers <dot> sourceforge <dot> net


Of course, remove the “SPAMNO” and replace the <at> with ‘@’ and the <dot> with ‘.’ to get the real address. I hate spammers.....




A lot of time and effort went into making ChessTree, and I sincerely hope you get a lot of use out of it. I’m not Bill Gates and thus I want to make my software available to everyone who wants to use it. As a consequence, I’m not Bill Gates and am not that rich. J If you would like to make a donation to ChessTree, please follow this link: