All about the craft of making games

Main menu

Monthly Archives: September 2014

I come by my love of Solitaire honestly.

It is fair to say that I am one of the leading experts in the type of card game known as Solitaire (in the US), or Patience (in the UK and elsewhere). I have been working with Thomas Warfield at Goodsol Development for more than a dozen years, and in that capacity I have implemented literally hundreds of different Solitaire games on various platforms, including Windows, Mac OS X, and iPad.

However, one would be very mistaken to assume that I had to learn about Solitaire back then, or even that these were my first Solitaire software products. In fact, I have been a Solitaire enthusiast for more than 40 years (easily predating my first access to a computer), and I have been writing programs for playing Solitaire for 30 years. That is why it was such a good match when Thomas and I started working together; he is also a renown expert, with a very successful Solitaire game, Pretty Good Solitaire, and there is not another company on the planet with more Solitaire expertise from which to draw.

I first learned to play Solitaire from my father when I was about 5 years old. He taught me a traditional form of Klondike (which many people just call, “Solitaire”), and I clearly remember the first time he watched me deal out the tableau on the stone hearth in front of our fireplace. I played that a lot over the years, as well as a few other games I picked up. My neighbor taught me Pyramid, which I really liked, and “Clock” (PGS: Travellers Clock), which had an appeal due to the elegance of play and the physicality of the the cards, but got boring quickly because of the lack of choice. My mother taught me “Idiot’s Delight” (a name used to describe many different Solitaire games), which in this case was a purely mechanical version of Aces Up. When I was sick, rather than comic books, I just wanted a couple decks of playing cards and, perhaps, some word search puzzles. 🙂

In the early years of elementary school, I had a couple of friends with whom I had discussions (and disagreements) about the rules of Klondike. We spent time debating whether one should be able to build Aces to the tableau and, if so, whether Kings could be built on Aces, whether one was allowed to pull cards from the foundations (which I now know is called “winnowing back”), how many cards were dealt from stock to waste, and if there was a limit to redeals. These are the same kind of game design discussions I still have now as we implement more games.

I also spent a great deal of time working on designing my own solitaire games, the rules of which, alas, were never written down and have been lost forever. I recall that much of my focus was on small tableau games, those which could be played, ideally, with just one or two piles, making them easier to play in a car. I also recall at least one with a unique mechanic, based on Go Fish, where the player would declare a selected card, and the play proceeded based on whether (or where?) the nominated rank appeared. Of course, it is fair to assume that none of my inventions were as compelling as the traditional Solitaire games; otherwise, I probably would still be playing them.

During middle school, an acquaintance (friend of a parent) taught me an unnamed Solitaire game, which had two mechanics I had never seen before: movement of card groups regardless of order (as seen in Yukon) and a “hand” of up to 4 arbitrary cards (like the 4 cells in FreeCell). This game had a greater degree of calculation and planning, and was less reliant on the luck of the deal, so it was very appealing to me. Around the same time, I also learned how to do a “bridge” shuffle, so I tried to wear out my hands practicing the two together. A variant of this game is implemented in PGS as Scorpion Head.

By this time, I was already programming computer games, and the idea of playing Solitaire on a computer was never far away. My first proper (read: finished 🙂 ) implementation was a text version of Aces Up on my Commodore VIC-20. The program would shuffle and deal the cards, and one would play with simple keypresses for activating a column (i.e., discarding the top card or moving it into an empty space). As I recall, my friend and I were the only two who ever actually played this game, but we started wondering about the chances of victory with the implemented rules, so I wrote a computer player that would play a hand using a specific heuristic (n.b., not a comprehensive solution search). Once debugged, I ran the program overnight and the consistent result was that victory was achieved in just about 5% of the games. (Clearly, a search would have done better… and taken much longer.)

Many other computer implementations followed. Our friends showed us a game they called “Canasta Solitaire” (similar to Thirteen Packs, which has nothing in common with Canasta), and at their request, I wrote a version of that for the IBM PC (which, incidentally, became the scene of my biggest computer crash disaster 🙁 ). I wrote very nice DOS (EGA) versions of Pyramid and other games around 1990, and I was working on the Windows/DirectX versions of the these near the end of that decade, when I also worked (in a non-Solitaire capacity) with MVP Software on some other card game packages.

In 2001 (one suit of years ago), the Goodsol Development years began. My first project was implementing a comprehensive display library, allowing the original Pretty Good Solitaire [for Windows] more options, including more than 2 decks per game. The second project was Pretty Good MahJongg, which includes 55 original Solitaire games played with MahJongg tiles, followed by Action Solitaire, including (now) 75 Solitaire games played against the clock, and Most Popular Solitaire, my interpretation on the most popular games in PGS, as well as one (Crazy Quilt) that was the first Goodsol version of that game. Add Mac and iPad versions of Pretty Good Solitaire and Most Popular Solitaire and a Mac version of Pretty Good MahJongg, as well as other products: Goodsol Solitaire 101 (Windows/Mac/iPad), FreeCell Plus (Windows/Mac/iPad), and A Little Solitaire (iPad).

Counting only Goodsol products (not different SKUs) on each platform (including bonus games), it appears that I have implemented 2639 Solitaire games! More is definitely yet to come, as Thomas is already up to 840 and counting (with PGS), so I am still trailing by 290 games (on Mac and iPad, as well as an internal Windows project).

Of course, with the implementation of so many games, there is a focus on rules. Due to my love of Solitaire (and games in general), I began collecting books of Solitaire rules. The first game I learned from a book and really loved was La Belle Lucie, which I played with the merci (draw) rule, implemented in PGS as Three Shuffles and a Draw. Since high school, I have amassed around two hundred books of traditional game rules, dozens of which have Solitaire games. An informal survey of my current bookshelves shows 20 books dedicated solely to Solitaire, dating back as far as 1883 (because my copy of Lady Cadogan’s Illustrated Games of Patience is a reprint of the original 1875 book).

So, while Solitaire may be a simple pastime to most, keep in mind that a few of us really know (and appreciate) these games inside and out. When you want to buy a computer Solitaire program lovingly crafted by the leading experts in the field…