Boray Gammon

In a few shameless words: The very best backgammon game for Commodore Vic-20. If you have tried the competition, you probably know what I mean ;-)


  • Plays a fairly intelligent backgammon.

  • You can play against the computer, play with a friend or let the computer play against itself.

  • You can either use the internal random generator for dice, or use external ones (which is useful if you want to make it play against other programs).

  • Score counting

  • Three levels of difficulty

  • Save current game function (works on both tape and disk)

    Lack of features

  • No doubling cube

    How to play?

    Never played backgammon before? Don't worry, I'll teach you!

    You are black (or rather hollow) and Vic is white. In the picture above, you have thrown the dice 6 and 1. You use the keyboard to move. All the keys you can press are highlighted in green. Now just move one checker with each dice by pressing the key on the keyboard corresponding to the letter at the checker you want to move. The dice to the left is used first. You can swap the dice with each other by pressing "P". If you made a mistake, press "<-" to undo. When ready, press return. That's basically it. If you have never played backgammon before, you'll probably need a little more information though:

    You move according to the green arrows:

    Your first goal is to get all of your checkers into the area marked A. When that is done, you can move them out to B. The player getting all of his checkers out first will win.

    That would be easy enough if you didn't have an opponent moving in the opposite direction, able to hit your checkers that are alone/single. When a checker get hit, it's put on the "bar" (marked "I"), and you have to play it into the game again from the start before you are able to move any other checker (yellow dotted line). To enter a checker into the game again, you press "I" (for IN).

    If you were in the middle of the end play and taking out checkers from "A" to "B" when you got hit, you can't take out any checkers to "B" until the hit checker has entered the game again, gone around the board and reached "A" again.

    A checker lying by itself is vulnerable and can be hit by the opponent. More than one checker on the same point means they are safe. But not only that, the opponent can't land on that point at all. So having two (or more) checkers on 6 points in a row means the opponent can't pass at all.


    If nothing happens when you try to move a checker, there could be a number of reasons why:

    1. The point where the checker is to land, is blocked by the opponent. Try switching dice by pressing "P".

    2. You have a checker on the bar that has to enter the game before you can move anything else. Press "I" to enter it. You may have to press "P" first as well to switch dice.

    3. The checker you try to move is in your own home board and there is simply nowhere to go because all of your checkers have to reach "A" before you can take them out.

    4. You are trying to move your opponents checker or there is no checker by the letter you press.

    Have the sound turned on. It gives you information about what happens, when you get hit, when all dices are blocked etc.

    In case you don't find the undo key in your emulator, it's the key located below Esc in VICE.

    If you have started a game where Vic plays against Vic and don't want to wait until the end, you can simply restart the game by pressing Run/Stop+Restore and then RUN.

    Difficulty Levels

    There are three different "players" you can choose to play against (or if you let them play against each other):

    The bars to the right illustrates how strong the players are. In other words: Clever Vic is about twice as good as Beginner Bo while Reckless Ray is somewhere in between. That Clever Vic is twice as good as Beginner Bo does not mean it always will win, but rather that if they play a 100 point match, Clever Vic will win and Bo will get around 50 points. (Yes, I've done that many times, running the VICE emulator at 3000% speed). The players have their own personalities. Bo is cautious like the beginner he is, while Reckless Ray is more... well... reckless.

    And now?

    Just start Boray Gammon up and begin to explore it! You will get the hang of it. There are a lot more to backgammon than I've written in these few words, but I felt it would be nice with a little shortcut into the game for you. If you want to study the game a bit more carefully, I would recommend this site.

    One way to learn, is to watch Boray Gammon play against itself for a while:

    Boray Gammon vs one of the top gammon AIs in the world

    GNU Gammon is ranked as the number two top gammon artificial intelligence in the world today (beaten by Extreme gammon, mostly in speed). GNU gammon also has the ability to analyse the game and rank the player. So how does it rank Boray Gammon? Well, judge for yourself. This is the first and only game I've run with Boray Gammon V1.52:

    Only one move marked as "doubtful" by gnu. No bad ones. No "very bad" ones. And here is the whole game noted:

    Also see:
    Boray Gammon Development pictures and notes - The nicest place around for playing backgammon with family and friends over the net.

    Back to

  • Download:
    Boray Gammon.prg (V2.00)
    (Latest version)

    Boray Gammon 168.prg (V1.68)
    (Previous version)
    (Vic-20 program plus Windows environment: VICE emulator + help program for playing with an opponent over a network/shared folder. Double click start.exe to start. No installation needed.) Even though this solution works for playing with someone over the net, I prefer using for that purpose.

    Vic-20 with 16K expansion RAM (or more).

    Free. Feel free to show your appreciation by buying my music here.

    By Anders Persson 2015.
    All rights reserved.

    News in V2.00:
  • The AI is 22% stronger. When playing 7-point matches against the previous version, the new version wins 1.8 times as many matches. (This test however indicates that the improvement is even bigger.)
  • New winning and losing effects.
  • And some more...

    Even if the game looks about the same to you, there was a lot of work and testing put into this version. Test games generating over 84000 game points were run and documented. In the project folder, there are 203 program and test versions saved since 1.68. Compared to the development of the previous release (1.52->1.68) there were just 23 versions saved.

    Because of the many changes to the AI, I had to test this version's improvement in a different way. I copied the whole main AI routine of V1.68 into the V2.00 source code and let one of the players use that. I also reduced the element of luck by repeating the same random sequence (for the dices) for two rounds in a row and switching who begins. For example:

    In game 1: White gets random sequence A and begins while black gets random sequence B.
    In game 2: Black gets random sequence A and begins while white gets random sequence B.
    In game 3: White gets random sequence C and begins while black gets random sequence D.
    In game 4: Black gets random sequence C and begins while white gets random sequence D.
    ...and so on. I would think this is more fair than using totally random numbers.

    I thought about keeping this method as a playing option, but came to the conclusion that humans would have the advantage of being able to remember a couple of the starting moves of the previous round while the AI wouldn't, so I skipped it.

    News in V1.68:
  • The running home algorithm was improved a bit more.
  • Bugfix 1: The AI got stuck at a certain board configuration. The bug must have been there since the speed improvements in V1.21.
  • Bugfix 2: Running forever could have resulted in a stack overflow error (bug introduced in V1.52).
  • A few visual changes.

    News in V1.52:
  • The AI routine for racing home ("run") was improved, resulting in 15% more points won in the long run against V1.45.
  • When someone wins, it now shows which AI player you played against as well as the program version number. This so that you can take a picture and show off your high score. Pictures from previous versions doesn't tell much in this aspect.

    News in V1.45:
  • Keys for possible moves (with the selected dice) are now highlighted (idea by Nippur72). All other possible keys are also highlighted (return, P etc.)
  • The improved AI wins 8% more points when playing against the previous version.
  • If you have a checker on the bar and the first dice is blocked, then the dices are now switched automatically so that you can enter it more easily.

    News in V1.32:
    Bugfix, or rather an esthetical correction: A few letters from "PRESS PLAY ON TAPE" was left on the screen when loading a saved game from tape.

    News in V1.31:
  • "Clever Vic" wins at least 20% more points when playing against the previous version.
  • You can now save the game to continue later.
  • Bugfix: The same player always started.

    News in V1.21:
  • Faster: The AI is about twice as fast. The average thinking time is now around 5 seconds instead of 10 seconds.
  • Smarter: The AI wins about 20% more points when playing against the previous version (in the long run). This version has actually won a 7 point match over me (with the score 7-5). I'm not sure if I should be proud or embarrased. ;-)

    News in V1.15:
  • Improved AI
  • Three different players (difficulty levels)
  • Bug fixes