This contains an interface to card winning stats that depend
on having up to two other cards available in the supply. It also
ranks cards and determines how much a cards quality changes as
a function of having other cards available.
Interpretting the stats
This let's you see how cards perform when others are available to
be gained. When a card is conditioned upon, it simply restricts
the statistics to games in which that card was available in the
supply. The conditioned upon card does not ever have to be gained.
- Availability: The number of games in which the card is
present, multiplied by the number of players in each game.
It represents the number of "decks" that could have purchased
- %+: Percentage of times the named card was gained at
- Per Gain: This is win rate on the card on a per gain basis.
If player 1 bought the card 5 times and won, and player 2 bought the
card 3 times and lost, then this would count as 5 wins and 3 losses
in two player games, giving a win rate of 5 * 2 / (5 + 3) =
10 / 8 = 1.25.
- Any Gain: This is a win rate that does not include multiple
gains of a card in the same game. In the above 5 winning vs 3 losing
example, the card would have a win rate of 1, because both players
- Num Gained: The average number of the times the card was
gained when it was available, per player.
- Quality: This is a measure of card quality that tries to
recover the excellent
community card rankings using only the statistics about the
cards and information about the cards themselves. Currently
the ranking function
recovers almost 90% of the community ordered pairs,
using only the following signals:
- the win rate given any gain
- the chance of a card being gained
- the number plus actions
- whether it has vp
- whether it's a reaction
- Δ Qual: The change in quality given the conditioned
cards are available.
Post comments, questions, and insights on this
thread on the DominionStrategy forum
Tips on using the card filters
List different card names or card filters separated by a comma.
against every card. The expression is evaluated with attributes
of the card filled as local variables. If this sounds confusing,
don't worry. Here are some examples:
- Expansion=="Dominion" || Expansion=="Intrigue"
- Cost==7 returns Bank, Expand, Forge, and King's Court
- Cost == "P2" returns Apothecary, Scrying Pool, and University
- (""+Cost).indexOf("P")>=0 returns all cards with Potion in cost
- Actions >= 2 returns all cards that provide 2 or more Actions
- Cards < 2 returns all cards that draw either 0 or 1 Card when played
- Coins == "?" returns Bank, Philosopher's Stone, Pirate Ship, Salvager, Secret Chamber, Trade Route, Tribute, and Vault
- Buys == 1 returns all cards that provide +1 Buy
- VP >= 6 returns Province and Colony
- Trash == 4 returns Chapel
- Action && Victory returns Great Hall, Islands, and Nobles
- Treasure && Victory returns Harem
- Attack returns all Attack cards
- Duration returns all Duration cards
- Reaction returns all reaction cards