Freecell Solver 2.8.13 review

by on

Freecell Solver is a program that automatically solves games of Freecell and similar Solitaire variants such as Eight Off, Forecell a

License: Public Domain
File size: 0K
Developer: Shlomi Fish
0 stars award from

Freecell Solver is a program that automatically solves games of Freecell and similar Solitaire variants such as Eight Off, Forecell and Seahaven Towers, as well as Simple Simon boards.

Freecell Solver is free software distributed under the public domain. Freecell Solver is written in ANSI C and requires a C compiler to be built. Nevertheless, binaries for Windows 32-bit are available.

Included with the archive is source code for programs that can automatically feed it with the boards of several popular Solitaire Implementations.

Freecell Solver can also be built as a library for use within your own Solitaire implementations.

Here are some key features of "Freecell Solver":
Usability Options

The stacks and freecells retain their position throughout the presented solution.
Can present either the intermediate states (stepping at one move or sequence move) or the moves that are required for the solution.
On UNIX: accepts some user signal combinations that turn some run-time debugging information on and off.
Some configurations are very fast: can solve the Microsoft 32,000 in 22 minutes on a Pentium III 667 MHz machine.
Option to use atomic moves which guarantee an accurate verdict. (non-atomic scans may report a false negative)
Ability to read command line arguments from a file, or from a preset collection. Makes command lines much less verbose.

Development Features

Available as a library for use within third-party applications. The license is Public Domain, which means it can be used without any restrictions everywhere.
The core library and program is written entirely in a portable ANSI C code.
Compile-Time option for using either states of flat stacks ("Compact States") and states in which the stacks are stored as pointers, while each stack formation is allocated only once. The former is faster, but the latter consumes less memory.
Full compatiblity between dynamically-linked third-party applications to the version of the library that is used.

Scan Options

Supports the DFS (= Depth-First Search), Randomized DFS and A* scans. Which one can be specified at run-time.
The order of the tests to be conducted on a given state can be specified at the beginning of the scan. It is also possible to include only a subset of the available tests.
With the A* scan, one can specify the weights of the different state evalutaion parameters.
One can limit the scan to a certain number of checked states.
It is possible to resume a scan from a pre-empted position.
After a solution path was found it can be optimized using a BFS (= Breadth-First Search) scan on the intermediate states.
There is an option to reparent states during a scan if their depth in the solution tree is higher than the one with which they were reached. This also tends to shorten the solution length.
The Randomized DFS scan accepts a user-defined seed.
Several scans can be played on the same states' collection (while switching from scan to scan) giving on average a faster solving time.
It is possible to specify a static prelude of quotas to be played before the perpetual loop.

Game Types

Can solve games whose sequences are built by suit, by alternate colour or by rank regardless of colour.
Can solve games whose sequence move is limited by the number of Freecells, or unlimited.
Can solve games whose vacant stacks can be filled by any card, by kings only, or by no card whatsoever.
Run-time choice of the number of Freecells and Stacks. (limited by a compile-time directive)
Supports games of one and two decks.
List of PySol variants that can be solved:
Baker's Dozen
Baker's Game
Beleaguered Castle
Der Katzenschwanz
Die Schlange
Eight Off
Good Measure
Kings' Only Baker's Game
Relaxed Freecell
Relaxed Seahaven Towers
Seahaven Towers
Simple Simon
Streets and Alleys
More user-invented variants can be specified on the command-line using command-line options.

What's New in This Release:
This release initializes all the fields in fcs_state_with_locations to make Valgrind happy and possibly eliminate some bugs.

Freecell Solver 2.8.13 keywords