1
0
Fork 0
mirror of https://github.com/shlomif/PySolFC.git synced 2025-04-05 00:02:29 -04:00

Compare commits

..

No commits in common. "master" and "android-3.1.1" have entirely different histories.

171 changed files with 702 additions and 2178 deletions

View file

@ -2,7 +2,7 @@
image: Visual Studio 2022
environment:
matrix:
- PYTHON: "C:\\Python313"
- PYTHON: "C:\\Python312"
# Shamelessly taken from https://github.com/plicease/Dist-Zilla-PluginBundle-Author-Plicease/blob/master/.appveyor.yml
# Thanks!
install:

View file

@ -7,7 +7,7 @@ on:
jobs:
build:
runs-on: macos-14
runs-on: macos-12
steps:
- uses: actions/checkout@v2

View file

@ -1,11 +1,5 @@
[[news]]
=== News
* _11 January, 2025:_ There is a new stable release
https://sourceforge.net/projects/pysolfc/files/PySolFC/PySolFC-3.2.0/[PySolFC
v3.2.0]. New in this release:
** New fullscreen mode, accessible by pressing F11.
** Easy option to clear advanced search options.
** Lots of bugfixes and enhancements.
* _19 October, 2024:_ There is a new stable release
https://sourceforge.net/projects/pysolfc/files/PySolFC/PySolFC-3.1.0/[PySolFC
v3.1.0]. New in this release:

View file

@ -9,7 +9,7 @@ else
fi
# current android version mumber.
version="3.2.0"
version="3.1.1"
sversion=$(echo $version | sed -E "s:(.*)\..*:\1:")
tuple=$(echo $version | sed -E "s:(.*)\.(.*)\.(.*):(\1, \2, \3):")

View file

@ -103,7 +103,7 @@ android.permissions = WRITE_EXTERNAL_STORAGE, MANAGE_EXTERNAL_STORAGE
#android.features = android.hardware.usb.host
# (int) Target Android API, should be as high as possible.
android.api = 34
android.api = 33
# (int) Minimum API your APK / AAB will support.
#android.minapi = 21

View file

@ -6,7 +6,7 @@ then
exit 1
fi
python3 -m venv FINIT
virtualenv FINIT
source FINIT/bin/activate
pip3 install attrs
@ -43,7 +43,7 @@ sed -r "s:#? ?source\.exclude_patterns =.*:source.exclude_patterns = README.*,AU
sed -r "s:#? ?android\.skip_update =.*:android.skip_update = True:" -i buildozer.spec
sed -r "s:#? ?android\.accept_sdk_license =.*:android.accept_sdk_license = False:" -i buildozer.spec
sed -r "s:#? ?log_level =.*:log_level = 2:" -i buildozer.spec
sed -r "s:#? ?warn_on_root =.*:warn_on_root = 0:" -i buildozer.spec
echo '### end init'

View file

@ -11,8 +11,8 @@
"type": "SINGLE",
"filters": [],
"attributes": [],
"versionCode": 102130200,
"versionName": "3.2.0",
"versionCode": 102130101,
"versionName": "3.1.1",
"outputFile": "pysolfc-release.apk"
}
],

View file

@ -3,20 +3,6 @@ Cardset Customization Tutorial
:Author: Eric Rausch
:Email: <neelix570@gmail.com>
Setting up a Cardset
--------------------
The easiest way to create a cardset would be to copy an existing cardset folder of the same type in your cardsets directory. All cardsets need a number of files to work.
* An image for each card - these images should be the same format and the same size, as defined in the config.txt file (described below). These files should be named something like 01s.png for the ace of spades. The first two (or more) digits represent the rank, and the letter after represents the suit. The suits are labeled hcds in French decks or decks that use French suits (i.e. Hex A or Tarock decks), and the suits are alphabetical for other decks. The suit letter z is used for jokers or trumps.
* A shade file - shade.png, for example.
* At least one back image, as defined in the config.txt file below.
* A config.txt file, the format described below.
* A copyright file, containing copyright info.
The following optional files may also be added, but are only used under certain circumstances.
* Bottom images. A number of images for the bottoms of stacks. These are not used unless your PySol install does not support generating stack bottoms, or you enable them manually (currently only possible through editing the options.cfg file). Which bottoms are used depend on the cardset type. Each bottom has a version with a suffix of -n, indicating the negative bottom that gets used if the appropriate option is enabled.
* Shadow images. These will only be used if your PySol install does not support auto-generated shadows.
config.txt template
-------------------

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.3 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 5.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 6.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 68 KiB

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.3 KiB

After

Width:  |  Height:  |  Size: 9.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.9 KiB

After

Width:  |  Height:  |  Size: 4.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 350 B

After

Width:  |  Height:  |  Size: 351 B

View file

@ -1,3 +0,0 @@
- added a tools menu entry to adjust font size.
- bug fixes.

View file

@ -1,3 +0,0 @@
- menu entry to select random games.
- enhancements and bug fixes (see https://pysolfc.sourceforge.io)

View file

@ -1,25 +1,4 @@
<h1>Cardset Customization Tutorial</h1>
<h2>Setting up a Cardset</h2>
<p>The easiest way to create a cardset would be to copy an existing cardset folder
of the same type in your cardsets directory. All cardsets need a number of files to work.
<ul>
<li>An image for each card - these images should be the same format and the same size, as defined in the config.txt file (described below).
These files should be named something like 01s.png for the ace of spades. The first two (or more) digits represent the rank, and the letter
after represents the suit. The suits are labeled hcds in French decks or decks that use French suits (i.e. Hex A or Tarock decks), and
the suits are alphabetical for other decks. The suit letter z is used for jokers or trumps.</li>
<li>A shade file - shade.png, for example.</li>
<li>At least one back image, as defined in the config.txt file below.</li>
<li>A config.txt file, the format described below.</li>
<li>A copyright file, containing copyright info.</li>
</ul>
<p>The following optional files may also be added, but are only used under certain circumstances.
<ul>
<li>Bottom images. A number of images for the bottoms of stacks. These are not used unless your PySol install
does not support generating stack bottoms, or you enable them manually (currently only possible through editing the
options.cfg file). Which bottoms are used depend on the cardset type. Each bottom has a version with a suffix of
-n, indicating the negative bottom that gets used if the appropriate option is enabled.</li>
<li>Shadow images. These will only be used if your PySol install does not support auto-generated shadows.</li>
</ul>
<h2>config.txt template</h2>
<pre>PySolFC solitaire cardset;$A;$FMT;$B;$C;$D,$E;$F;$G;$H
&lt;internal_name&gt;;&lt;cardset_name&gt;
@ -38,18 +17,42 @@ back01.ext;back02.ext;back03.ext</pre>
<p><b>$B:</b> The type of the cardset (see types below)</p>
<h3>Cardsets Types:</h3>
<ul>
<li>French = 1</li>
<li>Hanafuda = 2</li>
<li>Tarock = 3</li>
<li>Mahjongg = 4</li>
<li>Hex A Deck = 5</li>
<li>Mughal Ganjifa = 6</li>
<li>Navagraha Ganjiga = 7</li>
<li>Dashavatara Ganjifa = 8</li>
<li>Trumps Only = 9</li>
<li>Matching = 10</li>
<li>Puzzle = 11</li>
<li>Ishido = 12</li>
<li>
<p>French = 1</p>
</li>
<li>
<p>Hanafuda = 2</p>
</li>
<li>
<p>Tarock = 3</p>
</li>
<li>
<p>Mahjongg = 4</p>
</li>
<li>
<p>Hex A Deck = 5</p>
</li>
<li>
<p>Mughal Ganjifa = 6</p>
</li>
<li>
<p>Navagraha Ganjiga = 7</p>
</li>
<li>
<p>Dashavatara Ganjifa = 8</p>
</li>
<li>
<p>Trumps Only = 9</p>
</li>
<li>
<p>Matching = 10</p>
</li>
<li>
<p>Puzzle = 11</p>
</li>
<li>
<p>Ishido = 12</p>
</li>
</ul>
<p><b>$C:</b> The number of cards in the cardset, generally 42,
48, 52, 68, 78, 96 or 120</p>
@ -57,70 +60,190 @@ back01.ext;back02.ext;back03.ext</pre>
or more comma separated values)</p>
<h3>Cardsets Styles:</h3>
<ul>
<li>Abstract = 35</li>
<li>Adult = 1</li>
<li>Animals = 2</li>
<li>Anime = 3</li>
<li>Art = 4</li>
<li>Cartoons = 5</li>
<li>Children = 6</li>
<li>Classic Look = 7</li>
<li>Collectors = 8</li>
<li>Computers = 9</li>
<li>Divination = 36</li>
<li>Engines = 10</li>
<li>Fantasy = 11</li>
<li>Four Color = 37</li>
<li>Ganjifa= 30</li>
<li>Hanafuda = 12</li>
<li>Hex A Deck = 29</li>
<li>Holiday = 13</li>
<li>Ishido = 34</li>
<li>Mahjongg = 28</li>
<li>Matching = 32</li>
<li>Monochrome = 38</li>
<li>Movies = 14</li>
<li>Matrix = 31</li>
<li>Music = 15</li>
<li>Nature = 16</li>
<li>Operating Systems = 17</li>
<li>People = 19</li>
<li>Places = 20</li>
<li>Plain = 21</li>
<li>Products = 22</li>
<li>Puzzle = 33</li>
<li>Round Cardsets = 18</li>
<li>Science Fiction = 23</li>
<li>Sports = 24</li>
<li>Tarock = 27</li>
<li>Vehicles = 25</li>
<li>Video Games = 26</li>
<li>
<p>Abstract = 35</p>
</li>
<li>
<p>Adult = 1</p>
</li>
<li>
<p>Animals = 2</p>
</li>
<li>
<p>Anime = 3</p>
</li>
<li>
<p>Art = 4</p>
</li>
<li>
<p>Cartoons = 5</p>
</li>
<li>
<p>Children = 6</p>
</li>
<li>
<p>Classic Look = 7</p>
</li>
<li>
<p>Collectors = 8</p>
</li>
<li>
<p>Computers = 9</p>
</li>
<li>
<p>Divination = 36</p>
</li>
<li>
<p>Engines = 10</p>
</li>
<li>
<p>Fantasy = 11</p>
</li>
<li>
<p>Four Color = 37</p>
</li>
<li>
<p>Ganjifa= 30</p>
</li>
<li>
<p>Hanafuda = 12</p>
</li>
<li>
<p>Hex A Deck = 29</p>
</li>
<li>
<p>Holiday = 13</p>
</li>
<li>
<p>Ishido = 34</p>
</li>
<li>
<p>Mahjongg = 28</p>
</li>
<li>
<p>Matching = 32</p>
</li>
<li>
<p>Monochrome = 38</p>
</li>
<li>
<p>Movies = 14</p>
</li>
<li>
<p>Matrix = 31</p>
</li>
<li>
<p>Music = 15</p>
</li>
<li>
<p>Nature = 16</p>
</li>
<li>
<p>Operating Systems = 17</p>
</li>
<li>
<p>People = 19</p>
</li>
<li>
<p>Places = 20</p>
</li>
<li>
<p>Plain = 21</p>
</li>
<li>
<p>Products = 22</p>
</li>
<li>
<p>Puzzle = 33</p>
</li>
<li>
<p>Round Cardsets = 18</p>
</li>
<li>
<p>Science Fiction = 23</p>
</li>
<li>
<p>Sports = 24</p>
</li>
<li>
<p>Tarock = 27</p>
</li>
<li>
<p>Vehicles = 25</p>
</li>
<li>
<p>Video Games = 26</p>
</li>
</ul>
<p><b>$E:</b> The origin (country) of the cardset</p>
<h3>Cardsets Origins:</h3>
<ul>
<li>Australia = 1021</li>
<li>Austria = 1001</li>
<li>Belgium = 1019</li>
<li>Canada = 1010</li>
<li>China = 1011</li>
<li>Czech Republic = 1012</li>
<li>Denmark = 1013</li>
<li>England = 1003</li>
<li>France = 1004</li>
<li>Germany = 1006</li>
<li>Great Britain = 1014</li>
<li>Hungary = 1015</li>
<li>India = 1020</li>
<li>Italy = 1005</li>
<li>Japan = 1016</li>
<li>Netherlands = 1002</li>
<li>Portugal = 1022</li>
<li>Russia = 1007</li>
<li>Spain = 1008</li>
<li>Sweden = 1017</li>
<li>Switzerland = 1009</li>
<li>USA = 1018</li>
<li>
<p>Australia = 1021</p>
</li>
<li>
<p>Austria = 1001</p>
</li>
<li>
<p>Belgium = 1019</p>
</li>
<li>
<p>Canada = 1010</p>
</li>
<li>
<p>China = 1011</p>
</li>
<li>
<p>Czech Republic = 1012</p>
</li>
<li>
<p>Denmark = 1013</p>
</li>
<li>
<p>England = 1003</p>
</li>
<li>
<p>France = 1004</p>
</li>
<li>
<p>Germany = 1006</p>
</li>
<li>
<p>Great Britain = 1014</p>
</li>
<li>
<p>Hungary = 1015</p>
</li>
<li>
<p>India = 1020</p>
</li>
<li>
<p>Italy = 1005</p>
</li>
<li>
<p>Japan = 1016</p>
</li>
<li>
<p>Netherlands = 1002</p>
</li>
<li>
<p>Portugal = 1022</p>
</li>
<li>
<p>Russia = 1007</p>
</li>
<li>
<p>Spain = 1008</p>
</li>
<li>
<p>Sweden = 1017</p>
</li>
<li>
<p>Switzerland = 1009</p>
</li>
<li>
<p>USA = 1018</p>
</li>
</ul>
<p><b>$F:</b> The Year the cardset was created (in the range 1000
to 2299)</p>
@ -140,16 +263,31 @@ back01.ext;back02.ext;back03.ext</pre>
will be truncated.</p>
<h2>Line 3</h2>
<ul>
<li><b>X:</b> The cards' width (the card image width)</li>
<li><b>Y:</b> The cards' height (the card image height)</li>
<li><b>D:</b> The color depth (mostly 8)</li>
<li>
<p><b>X:</b> The cards' width (the card image width)</p>
</li>
<li>
<p><b>Y:</b> The cards' height (the card image height)</p>
</li>
<li>
<p><b>D:</b> The color depth (mostly 8)</p>
</li>
</ul>
<h2>Line 4</h2>
<ul>
<li><b>XOFF:</b> The horizontal offset of the cards</li>
<li><b>YOFF:</b> The vertical offset of the cards</li>
<li><b>SXOFF:</b> The offset of the horizontal shadow (mostly 7)</li>
<li><b>SYOFF:</b> The offset of the vertical shadow (mostly 7)</li>
<li>
<p><b>XOFF:</b> The horizontal offset of the cards</p>
</li>
<li>
<p><b>YOFF:</b> The vertical offset of the cards</p>
</li>
<li>
<p><b>SXOFF:</b> The offset of the horizontal shadow (mostly
7)</p>
</li>
<li>
<p><b>SYOFF:</b> The offset of the vertical shadow (mostly 7)</p>
</li>
</ul>
<h2>Line 5</h2>
<p><code>back01.ext</code>: The name of the default back image (where <code>ext</code> means the file extension e.g: <code>png</code> or <code>gif</code>.)</p>
@ -171,9 +309,7 @@ back01.ext;back02.ext;back03.ext</pre>
<a href="https://github.com/shlomif/shlomif-computer-settings/blob/master/shlomif-settings/git/commit-messages/cc0-copyright-disclaimer.txt">CC0/Public Domain/MIT License/GPL terms</a></p>
<h3>Credits:</h3>
<p>Credits go to:</p>
<ul>
<li><a href="mailto:andsa@web.de">Andreas Sauer</a> for clarifying certain
points</li>
<li><a href="https://www.shlomifish.org/">Shlomi Fish</a> for making some
improvements to this tutorial</li>
</ul>
<p><a href="mailto:andsa@web.de">Andreas Sauer</a> for clarifying certain
points<br></p>
<p><a href="https://www.shlomifish.org/">Shlomi Fish</a> for making some
improvements to this tutorial</p>

View file

@ -1,64 +0,0 @@
<h1>FAQ</h1>
<h2>The animation is too slow...</h2>
<p>
Unfortunately the Tcl/Tk toolkit lacks a sprite concept, so
there is a lot of (invisible double-buffered) redraw going on
when dragging cards around.
<p>
Disabling <i>Card shadow</i>, <i>Shade legal moves</i>,
background table tiles and sound will somewhat improve the display speed.
<h2>The table tiles look strange</h2>
<p>
Background table tiles should only be enabled when using
a true-color video mode - otherwise they may look bad
because of dithering.
<p>
BTW, you can add your own background tiles by copying the images
to the main <i>data/tiles</i> or your home <i>~/.PySolFC/tiles</i> directory.
<!-- They must be in GIF or PPM format. -->
<h2>My antivirus app says the Windows installer contains a virus.</h2>
<p>
We have been asked about the fact that some anti viruses, including those
on <a href="https://www.virustotal.com/">VirusTotal</a>, have identified the Microsoft
Windows downloads as containing malware. What we know is that they are generated from
the <a href="https://en.wikipedia.org/wiki/Free_and_open-source_software">open source</a>
source code by <a href="https://www.appveyor.com/">AppVeyor</a>, are checked using
VirusTotal before they are uploaded, and at that point were considered to be malware clean.
<p>
However, as time passes, they seem to accumulate classifyings as containing malware
in what appears to be <a href="https://en.wikipedia.org/wiki/False_positives_and_false_negatives">false positives</a>. So we believe the downloads are nonetheless safe and free of
malware.
<p>
Furthermore, note that we believe that many anti-malware applications are harmful
by themselves, and that they are all an incomplete (non-)solution to an
issue that does not exist in <a href="https://en.wikipedia.org/wiki/Linux#Desktop">Linux</a> and the <a href="https://en.wikipedia.org/wiki/List_of_BSD_operating_systems">BSDs operating systems</a>.
<p>
For more information, see:
<ol>
<li><a href="https://sourceforge.net/p/pysolfc/discussion/503709/thread/d841b6a1/">Forum discussion</a></li>
<li><a href="http://linuxmafia.com/~rick/faq/">Viruses on Linux</a></li>
<li><a href="https://www.mail-archive.com/wikimedia-l@lists.wikimedia.org/msg30001.html">Discussion about anti-viruses.</a></li>
</ol>
<h2>I received an error that there is no module named "formatter".</h2>
<p>
This error occurs if you're trying to run an older version of PySolFC
with Python 3.10. If you are using Python 3.10 or later, please upgrade your
version of PySolFC to 2.14.0 or later - older versions are not compatible with
Python 3.10.
<p>
If you are getting your copy from your Linux distribution's package manager,
please contact the people who maintain the packages for your distribution.
You can always get the latest version from the PySolFC website or from
Flathub.
<h2>It won't let me deal more cards in Spider.</h2>
<p>
When playing Spider, you are not allowed to deal more cards if there are any
empty piles. If there aren't enough cards left to put one in each pile, the
game is lost. Part of the game is planning ahead when to deal more cards to
avoid this situation.
<p>
If you want a variation without this rule, you can play Relaxed Spider instead.

View file

@ -46,7 +46,6 @@ fix_gettext()
files = [
('credits.html', 'PySol Credits'),
('credits_old.html', 'PySol Credits'),
('faq.html', 'PySol - FAQ'),
('ganjifa.html', 'PySol - General Ganjifa Card Rules'),
('general_rules.html', 'PySol - General Rules'),
('glossary.html', 'PySol - Glossary'),

View file

@ -323,15 +323,6 @@ the deck.</p>
Hearts, and Diamonds.</p>
</dd>
<dt><b>SUPER MOVE</b></dt>
<dd>
<p>A special move where you move a sequence of cards at once, in a game
that does not normally allow it. However, if there are enough open
reserves and empty stacks to perform the move by moving cards between
them one at a time, you can make it as a single move as a shortcut.</p>
</dd>
<dt><b>TABLEAU</b></dt>
<dd>

View file

@ -55,6 +55,27 @@ disable certain features as they would be trivial otherwise.
The logic involved is not too clever on purpose (i.e. it does not consult the hint system).
</ul>
<h2>The animation is too slow...</h2>
<p>
Unfortunately the Tcl/Tk toolkit lacks a sprite concept, so
there is a lot of (invisible double-buffered) redraw going on
when dragging cards around.
<p>
Disabling <i>Card shadow</i>, <i>Shade legal moves</i>,
background table tiles and sound will somewhat improve the display speed.
<h2>The table tiles look strange</h2>
<p>
Background table tiles should only be enabled when using
a true-color video mode - otherwise they may look bad
because of dithering.
<p>
BTW, you can add your own background tiles by copying the images
to the main <i>data/tiles</i> or your home <i>~/.PySolFC/tiles</i> directory.
<!-- They must be in GIF or PPM format. -->
<h2>Some notes about scoring</h2>
<p>
<ul type="disc">

View file

@ -19,10 +19,9 @@
<li> <a href="cardset_customization.html">Cardset Customization</a>
<li> <a href="plugins.html">Plugins</a>
</ul>
<h2>About</h2>
<h2>Misc</h2>
<ul>
<li> <a href="news.html">What's new?</a>
<li> <a href="faq.html">FAQ</a>
<li> <a href="report_bug.html">Report a Bug</a>
<li> <a href="license.html">PySol license terms</a>
<li> <a href="credits.html">PySol credits</a>

View file

@ -5,7 +5,7 @@ The answer is simple...
<h3>PySol highlights</h3>
<ul>
<li> currently supports more than 1,200 distinct solitaire games
<li> currently supports more than 1000 distinct solitaire games
<li> based upon an extensible solitaire engine
<li> lots of classic games like Forty Thieves, FreeCell, Klondike and Spider
<li> special games like Ganjifa, Hanafuda, Poker and Tarock type games
@ -24,7 +24,7 @@ The answer is simple...
<li> integrated HTML help browser
<li> lots of documentation
<li> portable across Windows, Mac, and Linux
<li> completely ad-free, now and forever
<li> completely ad-free
<li> written in 100% pure Python
<li> distributed under the terms of the GNU General Public License
<li> <i>Commercial Quality Freeware</i>

View file

@ -1,28 +1,6 @@
<h1>What's New?</h1>
<ul>
<li>
<p><em>11 January, 2025:</em> There is a new stable release
<a href="https://sourceforge.net/projects/pysolfc/files/PySolFC/PySolFC-3.2.0/">PySolFC
v3.2.0</a>. New in this release:</p>
<ul>
<li>
<p>
New fullscreen mode, accessible by pressing F11.
</p>
</li>
<li>
<p>
Easy option to clear advanced search options.
</p>
</li>
<li>
<p>
Lots of bugfixes and enhancements.
</p>
</li>
</ul>
</li>
<li>
<p><em>19 October, 2024:</em> There is a new stable release
<a href="https://sourceforge.net/projects/pysolfc/files/PySolFC/PySolFC-3.1.0/">PySolFC
v3.1.0</a>. New in this release:</p>

View file

@ -1,9 +1,10 @@
<h1>Report a Bug</h1>
<p>
Before you report a bug, please verify that you are running
the latest version of PySolFC. Also, check the
<a href="faq.html">FAQ</a>, and issues previously reported
on GitHub, to ensure that the bug was not previously reported.
the latest version of PySolFC, and also check the PySolFC site's
<a href="https://pysolfc.sourceforge.io/faq.html">FAQ page</a>,
and issues previously reported on GitHub, to ensure that the bug
was not previously reported.
<p>
If you found a bug in PySolFC, the best place to report it
is on GitHub. To do so, create an issue at

View file

@ -14,9 +14,3 @@ the card that is further to the left (in PySol, this is the card that is
further from the deck) may be moved on top of the other.
<p>
The game is won when only one card remains.
<h3>Notes</h3>
<p>
Accordion, and its related games, can be played with cards dealt manually
by the player one at a time, or all cards dealt at once. This option
can be set in the options menu.

View file

@ -15,7 +15,7 @@ This card must be the last remaining card in order to win the game.
<h3>Notes</h3>
<p>
Accordion's Revenge is unwinnable if the first or second card is
declared. As such, PySol will never select either of those cards as
the target.
declared. As such, PySol will reselect the declared card if it
is chosen.
<p>
The concept of Accordion's Revenge was invented by Mark Masten.

View file

@ -18,5 +18,5 @@ are no moves left, you can deal a card from the talon to each pile.
<p>
The single foundation is started with the ace of hearts. After the
ace of hearts is played, it is built up by rank, regardless of suit,
turning the corner from king to ace as needed. The game is won if
turning the corner from king to ace as neede. The game is won if
all cards are moved to this one foundation.

View file

@ -1,26 +1,16 @@
<h1>Balarama</h1>
<p>
Dashavatara Ganjifa type. One deck. No redeal.
<h3>Object</h3>
<p>
Move all cards to the foundations.
<h3>Quick description</h3>
<p>
The cards build down by rank in alternate colors on the tableau, no more
than twelve to a row. Any card or sequence may be played on an empty row.
<h3>Rules</h3>
<p>
All cards are dealt to the sixteen rows when the games begins. Cards
on the tableau build down in rank in alternating colors. See the general
<a href="../ganjifa.html">Ganjifa</a>
card rules for information on that. The foundations build up by suit.
<p>
card rules for information on that. The foundations build up by suit.
Any card or sequence may be played on an empty row. The four reserve
stacks hold one card each.
<h3>Strategy</h3>
<p>
An empty row is more useful than the reserve stacks. Try for an empty row.

View file

@ -1,4 +1,4 @@
<h1>Big Braid (Der gro&szlig;e Zopf)</h1>
<h1>Big Braid</h1>
<p>
Napoleon type. 3 decks. 2 redeals.

View file

@ -1,13 +0,0 @@
<h1>Big Storeroom</h1>
<p>
Hex A Deck type. 2 decks. 1 redeal.
<h3>Object</h3>
<p>
Move all cards to the foundations.
<h3>Rules</h3>
<p>
Like <a href="wizardsstoreroom.html">Wizard's Storeroom</a>
but with two decks and nine piles.

View file

@ -1,15 +0,0 @@
<h1>Colours</h1>
<p>
Numerica type. 1 deck. No redeal.
<h3>Object</h3>
<p>
Move all cards to the foundations.
<h3>Quick Description</h3>
<p>
Like <a href="ladybetty.html">Lady Betty</a>,
but the foundations are built up by same color, and
wrap from king to ace. At the start of the game, a
two through five are dealt to the foundations, in
alternating colors.

View file

@ -4,7 +4,7 @@ Cribbage type. 1 deck. No redeal.
<h3>Object</h3>
<p>
Deal five cribbage hands to get a total score of 80 points or more.
Deal five cribbage hands to get a total score of 61 points or more.
<h3>Rules</h3>
<p>
@ -16,8 +16,7 @@ Points are awarded for the 2 Cribbage hands: the remaining four cards, plus
the four cards in the crib.
<p>
After each hand, repeat the process four more times to deal a total of five
hands. You win if after all five hands, your score reaches 80 points.
hands. You win if after all five hands, your score reaches 61 points.
<h3>Cribbage Scoring</h3>
<p>
Cribbage hands are scored as follows - each hand is worth the total value

View file

@ -1,18 +0,0 @@
<h1>Cribbage Patience II</h1>
<p>
Cribbage type. 1 deck. No redeal.
<h3>Object</h3>
<p>
Deal four cribbage hands to get a total score of 80 points or more.
<h3>Quick Description</h3>
<p>
Like <a href="cribbagepatience.html">Cribbage Patience</a>,
but two cards are not dealt face-down to the crib. After moving two
cards from the hand to the crib, a second six-card hand is dealt, and
you move two cards from that hand to finish the crib. Then, all
three hands are scored.
<p>
Due to the increased number of cards per hand, only four hands are dealt
per game.

View file

@ -15,11 +15,3 @@ is won if all cards are removed.
<p>
In PySol, a sequence is removed by selecting the first and last
card of the sequence.
Royal Marriage, and its related games, can be played with cards dealt
manually by the player one at a time, or all cards dealt at once. This
<h3>Notes</h3>
<p>
Decade, and its related games, can be played with cards dealt manually
by the player one at a time, or all cards dealt at once. This option
can be set in the options menu.

View file

@ -9,4 +9,4 @@ Move all cards to the foundations.
<h3>Quick Description</h3>
<p>
Like <a href="bisley.html">Bisley</a>,
but two decks and twenty-four playing piles.
but two decks and twenty four playing piles.

View file

@ -1,27 +0,0 @@
<h1>Families</h1>
<p>
Memory game type. 32 cards. No redeal.
<h3>Object</h3>
<p>
Remove all groups of jack-queen-king of the same suit.
<h3>Rules</h3>
<p>
Families is played with eight sets of Jack, Queen, and King - two of
each suit, along with six black jokers and two red jokers.
<p>
Flip three cards. If you flip a sequence of Jack, Queen, and King of
the same suit, the cards are removed. If not, they are flipped face-down.
<p>
If a red joker is flipped, all of the remaining unmatched cards that were
not flipped are reshuffled and redealt (after you've flipped all three
cards).
<p>
If a pair of black jokers is flipped, the game is lost. If all eight
sequences are removed before this happens, the game is won.
<h3>Notes</h3>
<p>
<i>Undo</i>, <i>Bookmarks</i>, <i>Autodrop</i> and <i>Quickplay</i>
are disabled for this game.

View file

@ -12,7 +12,7 @@ with twelve rows and two redeals.
Refer to the description of the deal in Lara's Game. The differences
are that the cards are dealt to thirteen piles instead of fourteen
and if a dealt card is of rank Pradhan or over one card is dealt to the
talon. Otherwise, the dealing rules are the same.
talon. Otherwise the dealing rules are the same.
<p>
Play is the same as Lara's Game except that there are two redeals. When
the talon is empty after each round the cards are gathered up from the

View file

@ -13,7 +13,7 @@ which will hold two cards.
Refer to the description of the deal in Lara's Game. The differences
are that the cards are dealt to thirteen piles instead of fourteen
and if a dealt card is of rank Pradhan or over one card is dealt to the
talon. Otherwise, the dealing rules are the same.
talon. Otherwise the dealing rules are the same.
<p>
Play is the same as Lara's Game except that there are two redeals. When
the talon is empty after each round the cards are gathered up from the

View file

@ -1,22 +0,0 @@
<h1>Flamboyant</h1>
<p>
Fan game type. 1 deck. No redeal.
<h3>Object</h3>
<p>
Move all cards to the foundations.
<h3>Rules</h3>
<p>
The tableau piles are built in seventeen sets of three cards, with
two in the back row face-down, and a third face-up card overlapping
them. The final card is dealt separately.
<p>
The tableau piles are built down by alternate color, with any face-up card
or valid sequence of cards being movable. Once the top card is moved,
the two below it can be flipped face-up and played. Empty piles cannot
be filled, except for the final single card, where a king or sequence of
cards starting with a king can be played.
<p>
Foundations are built up in suit from Ace to King. The game is won
when all cards are moved to the foundations.

View file

@ -1,6 +1,6 @@
<h1>FreeCell (2 Reserves)</h1>
<p>
FreeCell type. 1 deck. No redeal.
FreeCell type. 1 decks. No redeal.
<h3>Object</h3>
<p>

View file

@ -1,6 +1,6 @@
<h1>FreeCell (No Reserve)</h1>
<p>
FreeCell type. 1 deck. No redeal.
FreeCell type. 1 decks. No redeal.
<h3>Object</h3>
<p>

View file

@ -16,7 +16,7 @@ on Iris 2, and Pine 3 plays on Phoenix 3. Gaji is wild. It can play
on any card in the tableau and any card can play on Gaji. Any card
can also be played on the canvas. Gaji will only play in its proper
position on the foundation. Cards play on the tableau by suit in
descending rank order. There can be no more than twelve cards in a row.
decending rank order. There can be no more than twelve cards in a row.
Once a card is played on a foundation stack it can't be taken off
except by undoing the move.

View file

@ -19,7 +19,7 @@ that row may become unmovable. The Wizards have ranks like the suit cards
corresponding to Ace through Four. If a Wizard is played in it's proper rank
position the row can still be moved. The rank can be determined by the height
of the hat. The Ace Wizard has the tallest hat. A stack with two Wizards can
be moved only if they are both in their rank position and they are not adjacent
be moved only if they are both in their rank position and they are not ajacent
to each other. The Wizards will not move off of the tableau until all the other
cards have been moved to the foundations.

View file

@ -9,7 +9,7 @@ Move all cards to the foundation.
<h3>Rules</h3>
<p>As you draw cards from the talon, one at a time, declare a card rank
in sequence (ace to king, then start over from ace). If the drawn card
matches the declared rank, that is a "Hit", and the card may be moved to
matches the declard rank, that is a "Hit", and the card may be moved to
the foundation. Otherwise, it is a "Miss". You can continue to redeal
as many times as you need, until you go through the entire deck twice in
a row without getting a single "Hit".

View file

@ -1,6 +1,6 @@
<h1>Hurricane</h1>
<p>
Pairing type. 1 deck. No redeal.
Pairing game type. 1 deck. No redeal.
<h3>Object</h3>
<p>

View file

@ -1,12 +0,0 @@
<h1>Ides of March</h1>
<p>
Pairing type. 1 deck. No redeal.
<h3>Object</h3>
<p>
Move all cards to the single foundation.
<h3>Quick Description</h3>
<p>
Like <a href="hurricane.html">Hurricane</a>,
but remove pairs whose ranks total 15, or pairs of aces.

View file

@ -24,7 +24,7 @@ added to each of the playing piles.
<p>
<i>Autodrop</i> is disabled for this game.
<h3>History</h3>
<h3>Histoy</h3>
<p>
This is a two-deck variation of
<a href="auldlangsyne.html">Auld Lang Syne</a>.

View file

@ -12,7 +12,7 @@ with twelve rows and two redeals.
Refer to the description of the deal in Lara's Game. The differences
are that the cards are dealt to thirteen piles instead of fourteen
and if a dealt card is of rank Pradhan or over one card is dealt to the
talon. Only one 120 card Dashavatara deck is used. Otherwise, the
talon. Only one 120 card Dashavatara deck is used. Otherwise the
dealing rules are the same.
<p>
Play is the same as Lara's Game except that there are two redeals. When

View file

@ -12,7 +12,7 @@ with twelve rows, three redeals and a reserve stack.
Refer to the description of the deal in Lara's Game. The differences
are that the cards are dealt to thirteen piles instead of fourteen
and if a dealt card is of rank Pradhan or over one card is dealt to the
talon. Only one 120 card Dashavatara deck is used. Otherwise, the
talon. Only one 120 card Dashavatara deck is used. Otherwise the
dealing rules are the same.
<p>
Play is the same as Lara's Game except that there are three redeals. When

View file

@ -13,7 +13,7 @@ which will hold two cards.
Refer to the description of the deal in Lara's Game. The differences
are that the cards are dealt to thirteen piles instead of fourteen
and if a dealt card is of rank Pradhan or over one card is dealt to the
talon. Only one 120 card Dashavatara deck is used. Otherwise, the
talon. Only one 120 card Dashavatara deck is used. Otherwise the
dealing rules are the same.
<p>
Play is the same as Lara's Game except that there are two redeals. When

View file

@ -10,9 +10,9 @@ with twenty two rows and one redeal, using the Tarock deck.
<h3>Rules</h3>
Refer to the description of the deal in Lara's Game. The differences
are that the cards are dealt to twenty-three piles instead of fourteen
are that the cards are dealt to twenty three piles instead of fourteen
and if a dealt card is of rank Page or over one card is dealt to the
talon. Otherwise, the dealing rules are the same.
talon. Otherwise the dealing rules are the same.
<p>
Play is the same as Lara's Game except that there is one redeal. When
the talon is empty after the first round the cards are gathered up from

View file

@ -12,9 +12,9 @@ using four decks.
<h3>Rules</h3>
Refer to the description of the deal in Lara's Game. The differences
are that the cards are dealt to twenty-three piles instead of fourteen
are that the cards are dealt to twenty three piles instead of fourteen
and if a dealt card is of rank Page or over one card is dealt to the
talon. Otherwise, the dealing rules are the same.
talon. Otherwise the dealing rules are the same.
<p>
Play is the same as Lara's Game with two exceptions. The first exception
is that there are two redeals. When the talon is empty after the one

View file

@ -12,9 +12,9 @@ with a reserve stack.
<h3>Rules</h3>
Refer to the description of the deal in Lara's Game. The differences
are that the cards are dealt to twenty-three piles instead of fourteen
are that the cards are dealt to twenty three piles instead of fourteen
and if a dealt card is of rank Page or over one card is dealt to the
talon. Otherwise, the dealing rules are the same.
talon. Otherwise the dealing rules are the same.
<p>
Play is the same as Lara's Game with two exceptions. The first exception
is that there is one redeal. When the talon is empty after the first

View file

@ -8,7 +8,7 @@ Move all cards to the foundations.
<h3>Rules</h3>
<p>
The foundations build up by rank ignoring suit.
The foundations build up by rank igonoring suit.
<p>
The reserve piles can hold a single card and
are automatically filled from the waste or talon.

View file

@ -10,7 +10,7 @@ Play is similar to
The rows build down by suit and rank.
<h3>Rules</h3>
The cards on the tableau build down in rank of the same suit. The
The cards on the tableau build down in rank of the same suit. The
foundations build up in rank by suit starting with the Ace. The cards
are dealt from the talon one at a time. Any card or movable pile may
be played on an empty row. Cards may be played from the foundations.

View file

@ -10,8 +10,8 @@ with four decks, two redeals and a reserve stack.
<h3>Rules</h3>
Refer to the description of the deal in Lara's Game. The differences
are the use of four decks instead of two, two redeals, and a reserve stack.
Otherwise, the play and dealing rules are the same.
are the use of four decks instead of two two redeals and a reserve stack.
Otherwise the play and dealing rules are the same.
<p>
When the talon is empty after each round the cards are gathered up from
the tableau and dealt to the rows without being shuffled using the same

View file

@ -10,8 +10,8 @@ with a redeal and a reserve stack.
<h3>Rules</h3>
Refer to the description of the deal in Lara's Game. The differences
are the use of a redeals, and a reserve stack. Otherwise, the play and
dealing rules are the same.
are the use of four decks instead of two two redeals and a reserve stack.
Otherwise the play and dealing rules are the same.
<p>
When the talon is empty after each round the cards are gathered up from
the tableau and dealt to the rows without being shuffled using the same

View file

@ -1,12 +0,0 @@
<h1>Little Ishido</h1>
<p>
Ishido game type. 2 decks. No redeal.
<h3>Object</h3>
<p>
Move all tiles to the playing area.
<h3>Quick Description</h3>
<p>
Like <a href='ishido.html'>Ishido</a>, but with four colors and symbols,
and a 6X8 grid. The initial tiles are placed in the four corners only.

View file

@ -1,14 +0,0 @@
<h1>Little Ishido Relaxed</h1>
<p>
Ishido game type. 2 decks. No redeal.
<h3>Object</h3>
<p>
Move all tiles to the playing area.
<h3>Quick Description</h3>
<p>
Like <a href='ishido.html'>Ishido</a>, but with four colors and symbols,
and a 6X8 grid. The initial tiles are placed in the four corners only.
Also, there are no restrictions when placing a tile next to two or more
other tiles - they just have to match the color or symbol of each.

View file

@ -1,19 +0,0 @@
<h1>Louis</h1>
<p>
Two-Deck game type. 2 decks. 2 redeals.
<h3>Object</h3>
<p>
Move all the cards to the foundations.
<h3>Quick Description</h3>
<p>
Like <a href="sthelena.html">St. Helena</a>,
but at the start of the game, a card is dealt to each of the
twelve tableau piles. During this round, an empty tableau pile
will be immediately filled from the talon. When no moves are left,
the rest of the deck can be dealt.
<p>
Also, there are no restrictions as to which tableau piles
cards can be moved to foundations from, and tableau piles are
built up or down by same suit.

View file

@ -1,27 +0,0 @@
<h1>Microbe</h1>
<p>
Spider type. 2 decks. No redeal.
<h3>Object</h3>
<p>
Group all the cards in sets of 13 cards in descending sequence
by alternate color from King to Ace and move such sets to the foundations.
<h3>Rules</h3>
<p>
The decks are separated. From one deck, four cards are dealt to each of
eleven tableau piles, with alternating cards face-up and face-down (the
bottom and third from the bottom cards are face-down). The remaining
eight cards from that deck are combined with the other deck to form the
talon.
<p>
Tableau piles are built down by alternate color, and any card or valid
sequence of cards can be moved between tableau piles. Any valid card or
sequence can fill empty piles.
<p>
The object is to group the cards in sets of 13 cards, from King to Ace
in an alternating color sequence. Such groups can be moved to the foundations.
<p>
When there are no moves left, you can deal one card from the talon to
each tableau pile. The game is won if all cards are grouped into sequences
and moved to the foundations.

View file

@ -6,6 +6,7 @@ Gypsy type. 2 decks. No redeal.
<p>
Move all cards to the foundations.
<h3>Quick Description</h3>
<p>
Like <a href="gypsy.html">Gypsy</a>, but only a single card

View file

@ -1,23 +1,18 @@
<h1>Mughal Circles</h1>
<p>
Mughal Ganjifa type. One deck. No redeal.
<h3>Object</h3>
<p>
Move all cards to the foundations.
<h3>Quick description</h3>
<p>
The cards build down by rank and by suit on the tableau. Any card may be
played on an empty row. Only one card may be moved at a time.
<h3>Rules</h3>
<p>
All cards are dealt to the twenty four rows when the games begins. Cards
on the tableau build down by suit in descending rank order. The foundations
build up by suit. Any card may be played on an empty row. The reserve stacks
hold one card each. Only one card at a time may be moved.
<h3>Strategy</h3>
<p>
Try to keep a reserve stack open. Play higher ranked cards on empty rows.

View file

@ -1,27 +0,0 @@
<h1>Noumea</h1>
<p>
One-Deck game type. 1 decks. 2 redeals.
<h3>Object</h3>
<p>
Move all cards to the foundations.
<h3>Rules</h3>
<p>
The four aces are dealt to the foundations, and 20 cards
are dealt to reserve piles. The reserve piles can hold a
single card and are automatically filled from the waste or
talon when empty.
<p>
There is no building on the tableau piles, so you can
only move cards to the foundations.
<p>
When there are no moves left, you can deal cards three at
a time from the talon, and move them to an appropriate
foundation. Two redeals are allowed, so you can go through
the deck three times. The game is won if all cards are
moved to the foundations.
<h3>Notes</h3>
<p>
<i>Autodrop</i> is disabled for this game.

View file

@ -1,12 +0,0 @@
<h1>Outback Patience</h1>
<p>
Yukon type. 2 decks. No redeal.
<h3>Object</h3>
<p>
Move all cards to the foundations.
<h3>Quick Description</h3>
<p>
Like <a href="austalianpatience.html">Australian Patience</a>,
but with two decks, and eight piles of seven cards each.

View file

@ -1,22 +0,0 @@
<h1>Pyramid Thirteen</h1>
<p>
Pairing game type. 1 deck. No redeal.
<h3>Object</h3>
<p>
Move all cards to the single foundation.
<h3>Quick Description</h3>
<p>
Like <a href="pyramid.html">Pyramid</a>, but all but the
front row of the pyramid are dealt face-down, and no redeals
are allowed.
<h3>Notes</h3>
<p>
This difficult variant of Pyramid is based on the Gnome AisleRiot
rules. It is called "Thirteen" there, but renamed Pyramid Thirteen
here to avoid confusion with the game
<a href="thirteens.html">Thirteens</a>.
<p>
<i>Quickplay</i> is disabled for this game.

View file

@ -1,12 +0,0 @@
<h1>Relaxed Cruel</h1>
<p>
Baker's Dozen type. 1 deck. Unlimited redeals.
<h3>Object</h3>
<p>
Move all cards to the foundations.
<h3>Quick Description</h3>
<p>
Just like <a href="cruel.html">Cruel</a>,
but the number of cards you can move as a sequence is not restricted.

View file

@ -11,15 +11,9 @@ To remove all cards between the king and queen of hearts
The queen of hearts is placed on top of the deck and the king
on the bottom.
<p>
Cards are dealt from the stock in a sequence. If there are one
or two cards between two cards of the same rank or suit, those cards
may be removed.
Three cards are dealt from the stock, but additional cards may be
dealt at any time. If there are one or two cards between two cards
of the same rank or suit, those cards may be removed.
<p>
The game is won when the king of hearts is brought to his "bride",
the queen, as in, all cards between them have been removed.
<h3>Notes</h3>
<p>
Royal Marriage, and its related games, can be played with cards dealt
manually by the player one at a time, or all cards dealt at once. This
option can be set in the options menu.

View file

@ -1,6 +1,6 @@
<h1>Saratoga</h1>
<p>
Klondike type. 1 deck. Unlimited redeals.
Klondike type. 1 deck. Unlimited redeal.
<h3>Object</h3>
<p>

View file

@ -18,10 +18,6 @@ card of the sequence.
<h3>Notes</h3>
<p>
Seven Up, and its related games, can be played with cards dealt manually by
the player one at a time, or all cards dealt at once. This option can be set in
the options menu.
<p>
The average rank of the cards in a deck is 7, and the total of all cards of
each suit is 91, which is a multiple of 7. Thus, the total of all cards in the
entire deck is 364, also a multiple of 7.

View file

@ -12,7 +12,7 @@ Foundations are built up from Ace to King, regardless of suit. One
must move an entire Ace-to-King sequence to a foundation as one move.
<p>
The playing piles build down by rank, regardless of suit. A king may
be played on an ace. An empty pile can receive any card, or
be played on an ace.. An empty pile can receive any card, or
sequence.
<p>
When no more moves are possible, click on the talon. One card will be

View file

@ -18,5 +18,5 @@ of the same suit can be moved together. The reserve cards can be
moved to appropriate tableau or foundation piles at any time.
<p>
The foundations are built up by same suit, starting with the ace.
Then, the seven is played on the ace, which is then built up to king.
Then, the seven is played on the ace and it is built up to king.
The game is won if all cards are moved to the foundations.

View file

@ -9,7 +9,7 @@ Move all the cards to the foundations.
<h3>Quick Description</h3>
<p>
Like <a href="vague.html">Vague</a>,
but with two decks, and thirty-two tableau cards (as
but with two decks, and thirty two tableau cards (as
the game's name suggests). Additionally, one set of
foundations is built down from king to ace while the
other is built up from ace to king.

View file

@ -1,13 +0,0 @@
<h1>Wasp II</h1>
<p>
Spider type. 1 deck. No redeal.
<h3>Object</h3>
<p>
Move all cards to the foundations.
<h3>Quick Description</h3>
<p>
Like <a href="wasp.html">Wasp</a>,
but only three of the tableau piles contain
face-down cards (similar to <a href="scorpionii.html">Scorpion II</a>).

View file

@ -1,15 +0,0 @@
<h1>Wizard's Castle</h1>
<p>
Hex A Deck type. 1 deck. No redeal.
<h3>Object</h3>
<p>
Move all cards to the foundations.
<h3>Rules</h3>
<p>
Rows build down in rank in alternating color. Wizards are wild,
so any card can be played on one, and a wizard can be played on
any card. Only one card can be moved at a time. Foundations build
up in rank by suit. Any card can be played on an empty row. Cards
can be played from the foundations.

View file

@ -1,23 +0,0 @@
<h1>Wizard's Storeroom</h1>
<p>
Hex A Deck type. 1 deck. 1 redeal.
<h3>Object</h3>
<p>
Move all cards to the foundations.
<h3>Rules</h3>
<p>
The tableau consists of one reserve stack and five row stacks.
Fourteen cards are dealt to the reserve stack and one card each to the
row stacks. When a row stack is emptied it must be filled from the reserve
stack first. When the reserve stack is empty any card can be played on an
empty row stack. Wizards are wild - any card can be played on them, and they
can be played on any card. The Wizards have ranks like the suit cards
corresponding to Ace through Four. If a Wizard is played in it's proper rank
position the row can still be moved, otherwise, the full sequence can't be moved.
The row stacks build down in rank by alternate colors.
<p>
The foundations build up in rank by suit. The Wizards will not move off of the
tableau until all the other cards have been moved to the foundations.
The game is won when all cards are moved to the foundations.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View file

@ -3,7 +3,7 @@ msgstr ""
"Project-Id-Version: PySol 0.0.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-12-10 10:19-0500\n"
"PO-Revision-Date: 2025-03-14 19:16-0400\n"
"PO-Revision-Date: 2024-11-16 11:21-0500\n"
"Last-Translator: H. Schaekel <Holger.Schaekel@web.de>\n"
"Language-Team: German\n"
"Language: de\n"
@ -679,7 +679,7 @@ msgid ""
"Copyright (C) 1998 - 2003 Markus F.X.J. Oberhumer.\n"
"Copyright (C) 2003 Mt. Hood Playing Card Co.\n"
"Copyright (C) 2005 - 2009 Skomoroh.\n"
"Copyright (C) 2020 - 2025 PySolFC.\n"
"Copyright (C) 2020 - 2024 PySolFC.\n"
"All Rights Reserved.\n"
"\n"
"PySol is free software distributed under the terms\n"
@ -2549,7 +2549,7 @@ msgstr "Hinweise"
#: pysollib/kivy/menubar.py:202 pysollib/kivy/menubar.py:1663
msgid "Options"
msgstr "Einstellungen"
msgstr "Optionen"
#: pysollib/kivy/menubar.py:207 pysollib/kivy/menubar.py:321
#: pysollib/kivy/menubar.py:1671
@ -2564,9 +2564,6 @@ msgstr "Zuletzt gespielte"
msgid "Favorite games"
msgstr "Favoritenliste"
msgid "Random game"
msgstr ""
#: pysollib/kivy/menubar.py:244
msgid "<Add>"
msgstr "<Hinzufügen>"
@ -2653,7 +2650,7 @@ msgid "Automatic play"
msgstr "Automatisierung"
#: pysollib/kivy/menubar.py:513
msgid "Auto face-up"
msgid "Auto face up"
msgstr "Automatisch aufdecken"
#: pysollib/kivy/menubar.py:523
@ -3016,16 +3013,16 @@ msgid "Right"
msgstr "Rechts"
msgid "Other graphics"
msgstr "Graphik Varianten"
msgstr ""
msgid "Demo logo"
msgstr "Demo Logo"
msgstr ""
msgid "Pause text"
msgstr "Pause Text"
msgstr ""
msgid "Redeal icons"
msgstr "Redeal Icons"
msgstr ""
#: pysollib/kivy/menubar.py:1062
msgid "Startup splash screen"
@ -3041,7 +3038,7 @@ msgstr "Inhalt"
#: pysollib/kivy/menubar.py:1094
msgid "How to use PySol"
msgstr "Bedienung"
msgstr ""
#: pysollib/kivy/menubar.py:1098 pysollib/kivy/toolbar.py:204
#: pysollib/tile/toolbar.py:189 pysollib/tk/toolbar.py:189
@ -4189,9 +4186,6 @@ msgstr "Nationalität:"
msgid "Year:"
msgstr "Jahr:"
msgid "Num. cards:"
msgstr ""
msgid "Compatible with current game"
msgstr ""
@ -4373,9 +4367,6 @@ msgstr "Aktuelle Sitzung"
msgid "Log"
msgstr "Protokoll"
msgid "Demo Log"
msgstr ""
#: pysollib/tile/tkstats.py:523 data/pysolfc.glade:1404
msgid "Full log"
msgstr "Volles Protokoll"
@ -4980,10 +4971,10 @@ msgstr "Karte suchen"
msgid "Full picture"
msgstr ""
msgid "Icon style"
msgid "Icon Style"
msgstr ""
msgid "Icon size"
msgid "Icon Size"
msgstr ""
msgid "Small icons"
@ -5177,9 +5168,6 @@ msgstr "Kommentare..."
msgid "Log..."
msgstr ""
msgid "Demo log..."
msgstr ""
#: pysollib/ui/tktile/menubar.py:427
msgid "D&emo statistics..."
msgstr "D&emo Statistiken..."
@ -5365,7 +5353,7 @@ msgstr ""
msgid "&Hamming"
msgstr ""
msgid "Game la&yout"
msgid "Card la&yout"
msgstr ""
msgid "&Spread stacks"
@ -5510,9 +5498,6 @@ msgstr ""
msgid "Save games &geometry"
msgstr "Spielgeometrie speichern"
msgid "&Keep dialogs on top"
msgstr ""
msgid "Othe&r graphics"
msgstr ""
@ -5558,7 +5543,7 @@ msgstr "&Regeln dieses Spiels"
msgid "What's &new?"
msgstr ""
msgid "R&eport a bug"
msgid "R&eport a Bug"
msgstr ""
#: pysollib/ui/tktile/menubar.py:660

View file

@ -8,7 +8,7 @@ msgstr ""
"Project-Id-Version: 1.02\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-12-10 10:19-0500\n"
"PO-Revision-Date: 2025-03-14 19:16-0400\n"
"PO-Revision-Date: 2024-11-16 11:21-0500\n"
"Last-Translator: Eric Rausch <neelix570@gmail.com>\n"
"Language-Team: French\n"
"Language: fr\n"
@ -685,7 +685,7 @@ msgid ""
"Copyright (C) 1998 - 2003 Markus F.X.J. Oberhumer.\n"
"Copyright (C) 2003 Mt. Hood Playing Card Co.\n"
"Copyright (C) 2005 - 2009 Skomoroh.\n"
"Copyright (C) 2020 - 2025 PySolFC.\n"
"Copyright (C) 2020 - 2024 PySolFC.\n"
"All Rights Reserved.\n"
"\n"
"PySol is free software distributed under the terms\n"
@ -700,7 +700,7 @@ msgstr ""
"Copyright (C) 1998 - 2003 Markus F.X.J. Oberhumer.\n"
"Copyright (C) 2003 Mt. Hood Playing Card Co.\n"
"Copyright (C) 2005 - 2009 Skomoroh.\n"
"Copyright (C) 2020 - 2025 PySolFC.\n"
"Copyright (C) 2020 - 2024 PySolFC.\n"
"Tous droits réservés.\n"
"\n"
"PySol est un logiciel libre distribué sous la licence\n"
@ -2605,9 +2605,6 @@ msgstr "Jeux récents"
msgid "Favorite games"
msgstr "Jeux favoris"
msgid "Random game"
msgstr ""
#: pysollib/kivy/menubar.py:244
msgid "<Add>"
msgstr "<Ajouter>"
@ -2694,7 +2691,7 @@ msgid "Automatic play"
msgstr "Jouer auto"
#: pysollib/kivy/menubar.py:513
msgid "Auto face-up"
msgid "Auto face up"
msgstr "Retourner auto"
#: pysollib/kivy/menubar.py:523
@ -4240,9 +4237,6 @@ msgstr "Origine:"
msgid "Year:"
msgstr "Année:"
msgid "Num. cards:"
msgstr ""
msgid "Compatible with current game"
msgstr ""
@ -4424,9 +4418,6 @@ msgstr "Session en cours"
msgid "Log"
msgstr "Journal"
msgid "Demo Log"
msgstr ""
#: pysollib/tile/tkstats.py:523 data/pysolfc.glade:1404
msgid "Full log"
msgstr "Journal complet"
@ -5031,10 +5022,10 @@ msgstr "Trouver carte"
msgid "Full picture"
msgstr ""
msgid "Icon style"
msgid "Icon Style"
msgstr ""
msgid "Icon size"
msgid "Icon Size"
msgstr ""
msgid "Small icons"
@ -5228,9 +5219,6 @@ msgstr "&Commentaires..."
msgid "Log..."
msgstr "Journal..."
msgid "Demo log..."
msgstr ""
#: pysollib/ui/tktile/menubar.py:427
msgid "D&emo statistics..."
msgstr "Statistiques d&émo..."
@ -5411,7 +5399,7 @@ msgstr ""
msgid "&Hamming"
msgstr ""
msgid "Game la&yout"
msgid "Card la&yout"
msgstr ""
msgid "&Spread stacks"
@ -5556,9 +5544,6 @@ msgstr "Barre d'&aide"
msgid "Save games &geometry"
msgstr "Enregistrer la &géométrie du jeu"
msgid "&Keep dialogs on top"
msgstr ""
msgid "Othe&r graphics"
msgstr ""
@ -5606,7 +5591,7 @@ msgstr "&Règles de ce jeu"
msgid "What's &new?"
msgstr ""
msgid "R&eport a bug"
msgid "R&eport a Bug"
msgstr ""
#: pysollib/ui/tktile/menubar.py:660

View file

@ -12,7 +12,7 @@ msgstr ""
"Project-Id-Version: it_pysol\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-12-10 10:19-0500\n"
"PO-Revision-Date: 2025-03-14 19:15-0400\n"
"PO-Revision-Date: 2024-11-16 11:21-0500\n"
"Last-Translator: Giuliano Colla <giuliano.colla@gmail.com>\n"
"Language-Team: Italiano <it@li.org>\n"
"Language: it\n"
@ -691,7 +691,7 @@ msgid ""
"Copyright (C) 1998 - 2003 Markus F.X.J. Oberhumer.\n"
"Copyright (C) 2003 Mt. Hood Playing Card Co.\n"
"Copyright (C) 2005 - 2009 Skomoroh.\n"
"Copyright (C) 2020 - 2025 PySolFC.\n"
"Copyright (C) 2020 - 2024 PySolFC.\n"
"All Rights Reserved.\n"
"\n"
"PySol is free software distributed under the terms\n"
@ -706,7 +706,7 @@ msgstr ""
"Copyright (C) 1998 - 2003 Markus F.X.J. Oberhumer.\n"
"Copyright (C) 2003 Mt. Hood Playing Card Co.\n"
"Copyright (C) 2005 - 2009 Skomoroh.\n"
"Copyright (C) 2020 - 2025 PySolFC.\n"
"Copyright (C) 2020 - 2024 PySolFC.\n"
"Tutti i diritti riservati.\n"
"\n"
"PySol è software libero distribuito alle condizioni\n"
@ -2614,9 +2614,6 @@ msgstr "Giochi recenti"
msgid "Favorite games"
msgstr "Giochi preferiti"
msgid "Random game"
msgstr ""
#: pysollib/kivy/menubar.py:244
msgid "<Add>"
msgstr ""
@ -2707,7 +2704,7 @@ msgstr "Gioco automatico"
#: pysollib/kivy/menubar.py:513
#, fuzzy
msgid "Auto face-up"
msgid "Auto face up"
msgstr "Auto &scopri"
#: pysollib/kivy/menubar.py:523
@ -4303,9 +4300,6 @@ msgstr "Nazionalità:"
msgid "Year:"
msgstr "Anno:"
msgid "Num. cards:"
msgstr ""
msgid "Compatible with current game"
msgstr ""
@ -4488,9 +4482,6 @@ msgstr "Questa sessione"
msgid "Log"
msgstr "Log"
msgid "Demo Log"
msgstr ""
#: pysollib/tile/tkstats.py:523 data/pysolfc.glade:1404
msgid "Full log"
msgstr "Log completo"
@ -5097,10 +5088,10 @@ msgstr "Trova carta"
msgid "Full picture"
msgstr ""
msgid "Icon style"
msgid "Icon Style"
msgstr ""
msgid "Icon size"
msgid "Icon Size"
msgstr ""
msgid "Small icons"
@ -5294,9 +5285,6 @@ msgstr "&Commenti..."
msgid "Log..."
msgstr "Log..."
msgid "Demo log..."
msgstr ""
#: pysollib/ui/tktile/menubar.py:427
msgid "D&emo statistics..."
msgstr "Statistiche d&emo..."
@ -5476,7 +5464,7 @@ msgstr ""
msgid "&Hamming"
msgstr ""
msgid "Game la&yout"
msgid "Card la&yout"
msgstr ""
msgid "&Spread stacks"
@ -5621,9 +5609,6 @@ msgstr "Mostra barra di a&iuto"
msgid "Save games &geometry"
msgstr "Salva gioco e &geometria"
msgid "&Keep dialogs on top"
msgstr ""
msgid "Othe&r graphics"
msgstr ""
@ -5671,7 +5656,7 @@ msgstr "&Regole di questo gioco"
msgid "What's &new?"
msgstr ""
msgid "R&eport a bug"
msgid "R&eport a Bug"
msgstr ""
#: pysollib/ui/tktile/menubar.py:660

View file

@ -8,7 +8,7 @@ msgstr ""
"Project-Id-Version: PySolFC\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-12-10 10:19-0500\n"
"PO-Revision-Date: 2025-03-14 19:15-0400\n"
"PO-Revision-Date: 2024-11-16 11:22-0500\n"
"Last-Translator: Jerzy Trzeciak <artusek@wp.pl>\n"
"Language-Team: Polish <pl@li.org>\n"
"Language: pl\n"
@ -683,7 +683,7 @@ msgid ""
"Copyright (C) 1998 - 2003 Markus F.X.J. Oberhumer.\n"
"Copyright (C) 2003 Mt. Hood Playing Card Co.\n"
"Copyright (C) 2005 - 2009 Skomoroh.\n"
"Copyright (C) 2020 - 2025 PySolFC.\n"
"Copyright (C) 2020 - 2024 PySolFC.\n"
"All Rights Reserved.\n"
"\n"
"PySol is free software distributed under the terms\n"
@ -698,7 +698,7 @@ msgstr ""
"Copyright (C) 1998 - 2003 Markus F.X.J. Oberhumer.\n"
"Copyright (C) 2003 Mt. Hood Playing Card Co.\n"
"Copyright (C) 2005 - 2009 Skomoroh.\n"
"Copyright (C) 2020 - 2025 PySolFC.\n"
"Copyright (C) 2020 - 2024 PySolFC.\n"
"All Rights Reserved.\n"
"\n"
"PySol jest wolnym oprogramowaniem rozprowadzanym\n"
@ -2618,9 +2618,6 @@ msgstr "Ostatni&e gry"
msgid "Favorite games"
msgstr "Ulubione gry"
msgid "Random game"
msgstr ""
#: pysollib/kivy/menubar.py:244
msgid "<Add>"
msgstr "<Dodaj>"
@ -2707,7 +2704,7 @@ msgid "Automatic play"
msgstr "Gra &automatyczna"
#: pysollib/kivy/menubar.py:513
msgid "Auto face-up"
msgid "Auto face up"
msgstr "Odkrywaj automatycznie"
#: pysollib/kivy/menubar.py:523
@ -4257,9 +4254,6 @@ msgstr "Narodowość:"
msgid "Year:"
msgstr "Rok:"
msgid "Num. cards:"
msgstr ""
msgid "Compatible with current game"
msgstr ""
@ -4441,9 +4435,6 @@ msgstr "Bieżąca sesja"
msgid "Log"
msgstr "Log"
msgid "Demo Log"
msgstr ""
#: pysollib/tile/tkstats.py:523 data/pysolfc.glade:1404
msgid "Full log"
msgstr "Kompletny log"
@ -5051,10 +5042,10 @@ msgstr "Znajdź kartę"
msgid "Full picture"
msgstr ""
msgid "Icon style"
msgid "Icon Style"
msgstr "Wygląd ikon"
msgid "Icon size"
msgid "Icon Size"
msgstr "Rozmiar ikon"
msgid "Small icons"
@ -5248,9 +5239,6 @@ msgstr "Komentarze..."
msgid "Log..."
msgstr "Log..."
msgid "Demo log..."
msgstr ""
#: pysollib/ui/tktile/menubar.py:427
msgid "D&emo statistics..."
msgstr "D&emo statystyk..."
@ -5427,7 +5415,7 @@ msgstr ""
msgid "&Hamming"
msgstr ""
msgid "Game la&yout"
msgid "Card la&yout"
msgstr ""
msgid "&Spread stacks"
@ -5572,9 +5560,6 @@ msgstr "Pokaż pasek pomocy"
msgid "Save games &geometry"
msgstr "Zapisz układ &gier"
msgid "&Keep dialogs on top"
msgstr ""
msgid "Othe&r graphics"
msgstr ""
@ -5620,7 +5605,7 @@ msgstr "Zasady tej g&ry"
msgid "What's &new?"
msgstr "Co &nowego?"
msgid "R&eport a bug"
msgid "R&eport a Bug"
msgstr "Zgłoś błąd"
#: pysollib/ui/tktile/menubar.py:660

View file

@ -8,7 +8,7 @@ msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-12-10 10:19-0500\n"
"PO-Revision-Date: 2025-03-14 19:15-0400\n"
"PO-Revision-Date: 2024-11-16 11:23-0500\n"
"Last-Translator: Matheus Knack <mtknack555@gmail.com>\n"
"Language-Team: \n"
"Language: pt_BR\n"
@ -682,7 +682,7 @@ msgid ""
"Copyright (C) 1998 - 2003 Markus F.X.J. Oberhumer.\n"
"Copyright (C) 2003 Mt. Hood Playing Card Co.\n"
"Copyright (C) 2005 - 2009 Skomoroh.\n"
"Copyright (C) 2020 - 2025 PySolFC.\n"
"Copyright (C) 2020 - 2024 PySolFC.\n"
"All Rights Reserved.\n"
"\n"
"PySol is free software distributed under the terms\n"
@ -697,7 +697,7 @@ msgstr ""
"Copyright (C) 1998 - 2003 Markus F.X.J. Oberhumer.\n"
"Copyright (C) 2003 Mt. Hood Playing Card Co.\n"
"Copyright (C) 2005 - 2009 Skomoroh.\n"
"Copyright (C) 2020 - 2025 PySolFC.\n"
"Copyright (C) 2020 - 2024 PySolFC.\n"
"Todos os direitos reservados.\n"
"\n"
"PySol é um software livre distribuído sob os termos\n"
@ -2626,9 +2626,6 @@ msgstr "Jogos recentes"
msgid "Favorite games"
msgstr "Jogos favoritos"
msgid "Random game"
msgstr ""
#: pysollib/kivy/menubar.py:244
msgid "<Add>"
msgstr "<Adicionar>"
@ -2715,7 +2712,7 @@ msgid "Automatic play"
msgstr "Jogar automaticamente"
#: pysollib/kivy/menubar.py:513
msgid "Auto face-up"
msgid "Auto face up"
msgstr "Virar pra cima automaticamente"
#: pysollib/kivy/menubar.py:523
@ -4263,9 +4260,6 @@ msgstr "Nacionalidade:"
msgid "Year:"
msgstr "Ano:"
msgid "Num. cards:"
msgstr ""
msgid "Compatible with current game"
msgstr ""
@ -4447,9 +4441,6 @@ msgstr "Sessão atual"
msgid "Log"
msgstr "registro"
msgid "Demo Log"
msgstr ""
#: pysollib/tile/tkstats.py:523 data/pysolfc.glade:1404
msgid "Full log"
msgstr "Registro completo"
@ -5053,10 +5044,10 @@ msgstr "Encontrar carta"
msgid "Full picture"
msgstr ""
msgid "Icon style"
msgid "Icon Style"
msgstr ""
msgid "Icon size"
msgid "Icon Size"
msgstr ""
msgid "Small icons"
@ -5250,9 +5241,6 @@ msgstr "&Comentários..."
msgid "Log..."
msgstr "Registro"
msgid "Demo log..."
msgstr ""
#: pysollib/ui/tktile/menubar.py:427
msgid "D&emo statistics..."
msgstr "Estatísticas de D&emo..."
@ -5433,7 +5421,7 @@ msgstr ""
msgid "&Hamming"
msgstr ""
msgid "Game la&yout"
msgid "Card la&yout"
msgstr ""
msgid "&Spread stacks"
@ -5578,9 +5566,6 @@ msgstr "Mostra &barra de ajuda"
msgid "Save games &geometry"
msgstr "Salvar jogos &geometria"
msgid "&Keep dialogs on top"
msgstr ""
msgid "Othe&r graphics"
msgstr ""
@ -5628,8 +5613,8 @@ msgstr "&Regras desse jogo"
msgid "What's &new?"
msgstr "&Novidades"
msgid "R&eport a bug"
msgstr "R&eportar um bug"
msgid "R&eport a Bug"
msgstr "R&eportar um Bug"
#: pysollib/ui/tktile/menubar.py:660
msgid "&License terms"

View file

@ -657,7 +657,7 @@ msgid ""
"Copyright (C) 1998 - 2003 Markus F.X.J. Oberhumer.\n"
"Copyright (C) 2003 Mt. Hood Playing Card Co.\n"
"Copyright (C) 2005 - 2009 Skomoroh.\n"
"Copyright (C) 2020 - 2025 PySolFC.\n"
"Copyright (C) 2020 - 2024 PySolFC.\n"
"All Rights Reserved.\n"
"\n"
"PySol is free software distributed under the terms\n"
@ -2435,9 +2435,6 @@ msgstr ""
msgid "Favorite games"
msgstr ""
msgid "Random game"
msgstr ""
#: pysollib/kivy/menubar.py:244
msgid "<Add>"
msgstr ""
@ -2524,7 +2521,7 @@ msgid "Automatic play"
msgstr ""
#: pysollib/kivy/menubar.py:513
msgid "Auto face-up"
msgid "Auto face up"
msgstr ""
#: pysollib/kivy/menubar.py:523
@ -4045,9 +4042,6 @@ msgstr ""
msgid "Year:"
msgstr ""
msgid "Num. cards:"
msgstr ""
msgid "Compatible with current game"
msgstr ""
@ -4227,9 +4221,6 @@ msgstr ""
msgid "Log"
msgstr ""
msgid "Demo Log"
msgstr ""
#: pysollib/tile/tkstats.py:523 data/pysolfc.glade:1404
msgid "Full log"
msgstr ""
@ -4783,10 +4774,10 @@ msgstr ""
msgid "Full picture"
msgstr ""
msgid "Icon style"
msgid "Icon Style"
msgstr ""
msgid "Icon size"
msgid "Icon Size"
msgstr ""
msgid "Small icons"
@ -4980,9 +4971,6 @@ msgstr ""
msgid "Log..."
msgstr ""
msgid "Demo log..."
msgstr ""
#: pysollib/ui/tktile/menubar.py:427
msgid "D&emo statistics..."
msgstr ""
@ -5159,7 +5147,7 @@ msgstr ""
msgid "&Hamming"
msgstr ""
msgid "Game la&yout"
msgid "Card la&yout"
msgstr ""
msgid "&Spread stacks"
@ -5304,9 +5292,6 @@ msgstr ""
msgid "Save games &geometry"
msgstr ""
msgid "&Keep dialogs on top"
msgstr ""
msgid "Othe&r graphics"
msgstr ""
@ -5352,7 +5337,7 @@ msgstr ""
msgid "What's &new?"
msgstr ""
msgid "R&eport a bug"
msgid "R&eport a Bug"
msgstr ""
#: pysollib/ui/tktile/menubar.py:660

Some files were not shown because too many files have changed in this diff Show more