QuickCell is an implementation of the single-player card game FreeCell. QuickCell places the focus on the actual strategy of the game by automating tedious moves, requiring minimal input, and providing a highlighting system.
- Smart Highlighting: Cards that are needed to advance will be highlit for quick spotting.
- Minimal Keystrokes: Moves are made with 2 to 3 keystrokes, do not require the enter key, and are easy to string together on a numpad.
- Extended Automoving: A more aggressive but still safe-for-play system will automatically move cards to the foundations.
- Distilled Display: The game state is presented as simply as possible to keep the focus on quick, strategic play.
- Linux
- Install python3, which comes with the required "curses" library.
- Download or clone this repository.
- Move to the src/ directory.
- Run the program.
python3 quickcell.pyto play a random dealpython3 quickcell.py 399677to play, for example, game 399677 (this can be used to replay deals)
- Windows
- QuickCell hasn't been officially tested on Windows, but it should work if you install python3 and the curses library.
- This page should help: Curses Programming with Python
- (You can also, instead, use a Linux LiveCD/USB or virtual machine.)
This project was created by Brandon Simmons.
Thank you Michael Keller for creating the FreeCell FAQ. The last question of section 2, about cards automatically moving home, was particularly helpful.
Thank you Dan Fletcher for writing the article Freecell PowerMoves Explained. The formula for determining the longest movable card sequence is implemented here.
- 0.5.0
- Be able to save and load games
- Be able to use backspace to edit a partially entered move command
- Be able to redo a move
- The previous move command is part of the undo history
- 0.6.0
- Notify user if the current deal is unwinnable
- 0.6.1
- To prevent crashes in tiny windows, add error handling to window.addstr()