Sunday, July 29, 2007

CheckerBoard

Title: CheckerBoard
Author: Martin Fierz
License: Freeware
Website: http://www.fierz.ch/checkerboard.php

It has been a while since I had an entry on an abstract strategy game. With the recent announcement by the Chinook team that checkers is a draw with perfect play, I thought it might be a good time to mention my favorite checkers program: CheckerBoard.

I have to say that I am not much of a checkers player myself. Many years ago, more than I care to admit, I wrote a checkers program in turbo pascal. It was your basic alpha-beta min-max program. It only looked six or ten moves ahead, I forget exactly, but it kicked my butt. Well, I did not know about the endgame databases. Sometimes, games would get down to two kings for the program and one for me. Looking only ten moves ahead it could not see how to win the game, and would move almost randomly. So, from time-to-time I could pull out these 2-to-1 draws.

Enough on my failings. CheckerBoard is a simple, free checkers program with every feature you could want. It has many levels play, ranging from instant to 30 minutes of thought per move. It displays it current search depth and position evaluation. On the 1 second thought per move, it usually thinks about 10 or more moves ahead and beats me soundly. The interface is intuitive and clean. You can take back dumb moves. And, it can analyze games to tell you which moves were dumb.



CheckerBoard comes with an opening book which can be extended. Actually, you can modify it to force CheckerBoard down a particular opening line if desired. At the other end of the game, the endgame database is critical to a good checkers program. CheckerBoard can build a 6-piece endgame database. I highly suggest you do this. The 8-piece database can be downloaded.

One of the interesting advanced features is the concept of an "engine". It turns out that CheckerBoard is just the interface. The brains that decide which move to make are in the engine. These are .dll files that CheckerBoard calls when it is the computer's turn to move. It comes with 4 different engines written by different people. You can choose which one to play against. The weakest engine, SimpleCheckers, usually beats me on the 1second/move for what it is worth, but does not know about endgame databases. You can even play engine vs. engine to see which one is the best. The API for writing an engine is available if you want to write your own engine. The source code for Simple Checkers is available as a starting point.

The only missing feature, and I do not know if this a flaw in CheckerBoard or the Engines, is that it does not learn. Even simple Samuel-style learning can protect an engine against repeatedly falling into the same cooks, not that I found any. That aside, this is a great program. I do not understand why anyone would pay money for another checkers program unless it was Chinook itself.

Now that American checkers has been solved, you might want to try international checkers. Two free programs are Dragon Draughts and Dam.

Friday, July 20, 2007

Step-by-Step

Title: Step-by-Step
Author: Manfred Kopp
License: GNU Public License
Website: http://sourceforge.net/projects/step-by-step

It is probably bad form to review a game which is technically still in beta. I don't care. This is a blog after all; I can do whatever I want. This week's game, Step-by-Step, is still in development, a beta. But, I am going to review it anyways. I am going to say mostly nice things though. It would be really bad form to rip on a beta release.

I was wandering around the puzzle section of SourceForge about two weeks ago and found Step-by-Step. It is similar to Hex-a-Hop and MASRDBE, the former being one of the best games I have ever played. Step-by-Step does not rise to the level of Hex-a-Hop, but it still a damn fine game.

The goal is make each of the stones disappear by walking on then a certain number of times. You control the little pair of shoes. When you walk off a blue stone it disappears. When you walk off a green stone, it becomes blue. When you walk off a yellow stone, it becomes green. You have to plan your path so that each stone is walked on 1, 2, or 3 times depending on its initial color. You also have to plan ahead so that your final step is onto a solid platform.


Step-by-Step adds a few twists. First, there are the arrows. They force your next move; the game makes that move for you automatically. Next there are icy stones, the cloudy looking tiles. If you walk on one, you slide along and walk off on the other side, automatically. Then there are the numbers. You have to walk on all the stones with an i at least once before walking on any higher number stone. Lastly, there are teleporters. That is it, a very simple and clean rule set.

Step-by-Step comes with 99 levels. You can play any level at any time, good design choice! The early levels introduce the various tile rules. Then they start to get harder. The pacing of the levels is pretty good. But, they never got overly hard. I am hoping with the level editor some really tough levels get made. If you do get stuck, solutions to all the levels after 11 are given in a text file.

Step-by-Step is a beta, so it really is not fair for me to knock it, but I do have a couple of complaints. First, this game would be much better if it had an undo button. Second, I am not a fan of the isometric projection. With a top down view, you would not need to tell people what way the arrow keys move the pair of shoes. Lastly, I did not like the numbered tiles. They make levels easier. Take a look at level 15 for example. With the numbers, you just follow your nose and you cannot help but solve it. Without the numbers, that would be a much harder level.

Complaints aside. I had a great time running through the 99 levels. It is free. Go get it and play!

Friday, July 13, 2007

Tripline

Title: Tripline
Author: konjak.org
License: Freeware
Website: http://www.konjak.org/games.htm

I am willing to admit when I am wrong. This is one case where I was wrong. When I first played Tripline sometime last year, I thought it was easy and uninteresting and quickly put it aside. I was somewhat bemused when it made more than one "best of" list at the end of the year. But recently for some reason, I decided to give it another try and was pleasantly surprised.

The goal of each Tripline level is to draw a path through each of the symbols. The starting piont for the path is given. The arrow keys are used to draw the path. The path cannot touch or cross itself. Here is the key point to the puzzles, the path must pass through the symbols in groups of threes. The path can end at any symbol.



The levels are pretty easy until you get to this one, level 10. Here, it is not even clear which symbols need to go together to form the triples. You have to do a little topological thinking in matching up those triangles so as to not isolate other symbols. At this point, Tripline got interesting to me.

I finished off the game in a couple of sitting, but there are some tough puzzles in Tripline. I have to say the interface sucks. There is no undo for one thing. Also, it would be nice if you could draw in any line you want and make them connect up at the end. For a couple of levels, I just printed it out and used paper and pencil. There are two ways to view that comment: the puzzles are that good and the interface is that bad.

There are 31 level if I counted correctly which have to be solved in order. If you get stuck, solution are available in their forums. There is no level editor, which is a shame. I am curious what devious things other people could come up with.

Tripline is certainly worth playing. I feel bad that put it a side for so long. So many games, so little time. I haven't finished the latest DROD yet. It is killing me. Ugh.

Sunday, July 01, 2007

Lemmings

Title: Lemmings
Author: Psygnosis
License: Commercial
Website: no known official site

In June, I went on a Lemmings kick. This was caused in part by the release of Lemmings for the PSP and Nintendo DS. Reading about all of the fun a new generation was having with this classic caused me to pull out my copies from the closet. I started with Lemmings for Windows which is a combination of the original game and the expansion Oh No More Lemmings ported to run under Windows. I actually saw it for sale in a game store about a year ago in England. You still might be able to find it, or it can be downloaded from an abandonware site, not that I support that sort of behavior.

Over the next couple of weeks, I am going to mix in reviews of the various Lemmings games in my collection. I am not going to describe the game play in this version of Lemmings. If there is anyone out there who has not played Lemmings, the wikipedia entry linked to above gives a great description, and there is a DHTML version with a few levels.



Instead, I will just give some impressions. First, it is amazing how well this game stands up 16 years after it first release. Lemmings is still a lot of fun to play and challenging. Take a peak at some of the other video games in 1991. How many of these games would you like to play? Well, Brix isn't too bad.

Second, almost all of the levels have multiple solutions. This is a rare feature in puzzle games. I did not realize how much I missed this. One of the most enjoyable aspects of Lemmings is recovering from a mistake without restarting a level. I actually had to think on my feat, so to speak, several times.

Third, there is a quality to the game which is hard to describe. It is a love of the game which comes through in the details. There is the cute "On No" audio when a lemming blows up. The subtle references in the levels caused me to pay attention to the artwork. The programmers had fun and enjoyed making this game. And it shows.

There were a couple of negatives in Lemmings which I had forgotten about. You have to finished the levels in order. At least in the Windows version, there are no passwords to remember. Many of the levels require some careful placement and quick clicking. I kept wanting a time system like Impulse which allows you to stop time, make a few precise clicks, and then restart time.