Home
   Home  |  Preliminary Docs  |  Design Diagrams  |  Reference  |  Development Docs  |  Download  |  Source Code  |  Final Reports  |
Future Enhancements

Due to time restrictions, Solitaire Pack is not nearly as feature-laden as a real solitaire program would be. A number of extraneous features were left out or simplified in order to allow efforts to be directed to improving the program's necessary features.

The primary restriction in this version of Solitaire Pack is the fact that there are only two types of games, Spider and La Belle Lucie. The previous version had about four additional working games; I decided to limit this version to two in order to focus more on getting them to work correctly. Obviously, future versions of Solitaire Pack would include many more additional games, perhaps even several hundred (which some other solitaire programs out there support).

While designing the Solitaire Pack architecture, there were a number of aspects that I had to simplify greatly. One of these is pile layout. The current version supports only a handful of pile types, such as foundation and spread tableau piles. For the two currently-implemented games, this suffices. However, some games would require much more specialized pile layouts. Future versions of the engine architecture would allow for custom pile layout definitions.

An aspect of Solitaire Pack that I intentionally simplified is that of customizability. For instance, the card images are set in stone and cannot be changed. Future versions would allow the user to select the set of graphics that they want to use as card images. Additionally, there is currently no means to customize the game menu (that is, to re-order the games or hide specific games that you may never play). Again, future versions would address these issues.

A feature that some other solitaire suites have is extensive statistic tracking. Some programs keep track of number of games of each type played, wins and losses, and provide graphs. Some include high score and fastest time lists. These types of bells and whistles would be nice to have in future versions, to bring Solitaire Pack up to par with other programs in its class.

The following is a list of end-user features that were left out of this version, but would be definitely included in the first "real" release of the program:

  • Game libraries can be uninstalled by the user
  • Complete help on Solitaire Pack itself is available from the Help menu
  • Text from the Game Instructions help pane can be selected, copied, or printed
  • The elapsed time can be displayed in the status bar; the game can be paused and resumed
  • The card back (face down) image can be customized
  • You can play in full screen mode
  • Background images can be tiled, centered, or stretched (currently, tiled only)
  • The order of games in the game menu can be changed

The following architectural features would be included in the first "real" release:

  • The ability to create single cards, such as jokers
  • Custom game commands can be modified after creation (text, help text can be changed)
  • A mechanism to allow each type of game to have its own "options," for which the engine would provide a consistent user interface
  • The game can trigger sound events directly
  • Games receive notification of which cards (in addition to which pile), a fragment was dropped over

Whether I will continue to work on Solitaire Pack is unknown. I currently have several other projects that I am motivated to work on, and I definitely need a break from this project for a while. The prospect of creating dozens of individual games, and learning how to play them, is somewhat daunting, so I may simply let this project remain as what it was: an excellent opportunity to perform an independent, organized software development project in the context of MTU.

  May 9, 2002 jmhoersc@mtu.edu