Warning, /games/kpat/src/patsolve/Parameters is written in an unsupported language. File is not indexed.
0001 Special Freecell Automove rule: 0002 0003 Sometimes, we don't want to take a card out, even though we can. For 0004 example, if this is the 3S, and either the 2D or 2H are still around, then 0005 the 3S could be considered active. There are two rules that have been 0006 proposed, Horne's and Raymond's. We use the latter, since it has better 0007 average performance. 0008 0009 Horne: All 'A's play home immediately, all '2's play home if the same-suit 0010 'A' is already there, an 'N' plays home if the same-suit 'N-1' and both 0011 'N-1's of the opposite color are already home. 0012 0013 Raymond: 0014 N plays home if: 0015 same-suit N-1 is already home 0016 AND 0017 {both opposite-color (N-1)s are already home 0018 OR 0019 {both opposite-color (N-2)s are already home 0020 AND 0021 same-color other-suit (N-3) is already home} 0022 } 0023 0024 Horne's rule: 0025 if (!Same_suit) { 0026 for (i = 1 - (o & 1); i < 4; i += 2) { 0027 if (O[i] < rank(card) - 1) { 0028 w_can_out[w] = 0; 0029 break; 0030 } 0031 } 0032 } 0033 0034 Xparam[] 0035 0 removing a card from a pile containing a needed card 0036 1 additional priority if the needed card is being uncovered 0037 2 penalty for covering a needed card 0038 3 W -> empty W 0039 4 W -> non-empty W 0040 5 T -> non-empty W 0041 6 T -> empty W 0042 7 W -> T 0043 8 irreducible move 0044 9 boolean; negative => newer piles first 0045 0046 Some possible additional parameters (from Atkinson and Holstege's paper): 0047 king from either T or W -> empty W (in both -k and -a variants) 0048 (while W -> empty W might have a negative weight, this could 0049 be positive; it might help in some cases) 0050 king -> non-empty W 0051 removing a card from a column with one card in it