Awesome
The Freecell Solver Repository Root README
Freecell Solver is an open source (distributed under the MIT/Expat licence) library, written in C, for attempting to solve several variants of card Solitaire/Patience, including Freecell , Baker’s Game , Seahaven Towers , and Simple Simon . Also contained are several command-line programs that use it, and the original project also span some other code for testing and for support.
Screenshots
Videos
Repository structure
fc-solve/source/
This contains the source of the solver itself. One can use CMake to build it.
cpan/Games-Solitaire-Verify/Games-Solitaire-Verify
This is the Games-Solitaire-Verify CPAN module. For more information see:
Task-FreecellSolver-Testing
This is a CPAN module for installing the various test dependencies that are found on CPAN.
cpan/Task-FreecellSolver-Testing-MultiConfig
This is a CPAN module for installing the various test dependencies that are found on CPAN. More comprehensive.
fc-solve/arch_doc
The Freecell Solver Architecture Document. Somewhat out-of-date, but may be studied for general enlightenment.
fc-solve/presets
Some code that is used in order to calculate the built-in command-line presets, like “-l good-intentions” or “-l maliciously-obscure”. Not very documented. This code is written in parts in Perl, Bash and Mono.NET.
fc-solve/rejects
Contains code that is no longer used.
fc-solve/docs
Contains various documents that are not part of the main source distribution. Mostly specifications and planning documents.
fc-solve/benchmarks
Logs of various benchmarks of the code.
How to use the library
The external API, which is provided by freecell-solver/fcs_user.h , freecell-solver/fcs_cl.h and some other headers, is not documented, but it corresponds to the command line interface that is documented in the USAGE and the README documents, has some examples in the code, and should not be hard to use.
Related repositories and links
-
Impossible 4-freecells and 5-freecells deals in Freecell Pro
-
patsolve - a different Solitaire solver with interdependencies on this one.
-
PySol - an open source Solitaire game collection