Fix four tag gaps and a contradiction found by the full-database audit
Cross-checked all 150 jokers' tags against JOKER_EFFECTS.md and the dump: - Drop the Vampire + Marble clash: Vampire gains xMult from any non-base scoring card (card.lua:3907), Stones included, so Marble feeds it -- the same shape as the Midas Mask pair. The data even scored the duo as a combo while warning against it. Stone-build harm stays covered by the Vampire + Stone Joker line. - Delayed Gratification wants discards_up: it pays per unused discard, same shape as Banner. - The Idol wants suit_flex: it checks is_suit (card.lua:3530), so Smeared doubles its eligible cards, like Ancient Joker. - 8 Ball wants retrig_scoring: the 1-in-4 rolls per scored 8 in the individual pass (card.lua:3507), so retriggers re-roll it. - Reword the suit give phrasings: nothing vanilla turns cards into a suit, so 'turns cards into Spades' was a lie whenever Blackboard sat across from a one-sided giver like Wrathful or Arrowhead. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -12,7 +12,7 @@ does not get redone from scratch every session.
|
||||
|---|---|
|
||||
| Jokers in the database | 150 |
|
||||
| Famous pairs | 36 |
|
||||
| Clashes | 25 |
|
||||
| Clashes | 24 |
|
||||
| Cautions | 15 |
|
||||
| Themes | 31 |
|
||||
| Jokers in no famous pair | 102 |
|
||||
@@ -74,7 +74,7 @@ A tag with two is fragile: drop either joker and the theme dies.
|
||||
| `clubs` | 3 | 4 | 4 | yes |
|
||||
| `copy_target` | 10 | 3 | 13 | yes |
|
||||
| `diamonds` | 2 | 2 | **2** | yes |
|
||||
| `discards_up` | 2 | 8 | 10 | yes |
|
||||
| `discards_up` | 2 | 9 | 11 | yes |
|
||||
| `enhance_gen` | 2 | 2 | 4 | yes |
|
||||
| `faces` | 1 | 9 | 10 | yes |
|
||||
| `flush` | 5 | 4 | 6 | yes |
|
||||
@@ -91,13 +91,13 @@ A tag with two is fragile: drop either joker and the theme dies.
|
||||
| `retrig_faces` | 1 | 10 | 11 | yes |
|
||||
| `retrig_held` | 1 | 4 | 5 | yes |
|
||||
| `retrig_low` | 1 | 11 | 12 | yes |
|
||||
| `retrig_scoring` | 4 | 16 | 20 | yes |
|
||||
| `retrig_scoring` | 4 | 17 | 21 | yes |
|
||||
| `sell_value` | 2 | 2 | 4 | yes |
|
||||
| `spades` | 2 | 3 | 3 | yes |
|
||||
| `spectral_gen` | 2 | 2 | **2** | yes |
|
||||
| `stone_gen` | 1 | 1 | **2** | yes |
|
||||
| `straight` | 7 | 6 | 8 | yes |
|
||||
| `suit_flex` | 1 | 11 | 12 | yes |
|
||||
| `suit_flex` | 1 | 12 | 13 | yes |
|
||||
| `tarot_gen` | 6 | 2 | 7 | yes |
|
||||
| `three_kind` | 4 | 3 | 4 | yes |
|
||||
| `two_pair` | 3 | 3 | 3 | yes |
|
||||
@@ -109,11 +109,11 @@ mis-tagged, the error is spread across the whole database.
|
||||
|
||||
| joker | partners scoring >= 2 |
|
||||
|---|---|
|
||||
| `j_dusk` | 16 |
|
||||
| `j_hanging_chad` | 16 |
|
||||
| `j_selzer` | 16 |
|
||||
| `j_smeared` | 16 |
|
||||
| `j_splash` | 16 |
|
||||
| `j_dusk` | 17 |
|
||||
| `j_hanging_chad` | 17 |
|
||||
| `j_selzer` | 17 |
|
||||
| `j_smeared` | 17 |
|
||||
| `j_splash` | 17 |
|
||||
| `j_to_the_moon` | 16 |
|
||||
| `j_bootstraps` | 15 |
|
||||
| `j_bull` | 15 |
|
||||
|
||||
+15
-8
@@ -54,7 +54,7 @@ j('j_half', {'mult'})
|
||||
j('j_credit_card', {})
|
||||
j('j_banner', {'chips'}, {'discards_up'})
|
||||
j('j_mystic_summit', {'mult'})
|
||||
j('j_8_ball', {'tarot_gen'}, {'probability'})
|
||||
j('j_8_ball', {'tarot_gen'}, {'probability','retrig_scoring'})
|
||||
j('j_misprint', {'mult'})
|
||||
j('j_raised_fist', {'mult'}, {'retrig_held','hand_size'})
|
||||
j('j_chaos', {})
|
||||
@@ -62,7 +62,7 @@ j('j_scary_face', {'chips'}, {'faces','retrig_scoring',
|
||||
-- Abstract Joker's Mult is the joker count (`#G.jokers.cards`, card.lua:4119), so
|
||||
-- anything that hands you spare Jokers feeds it. Riff-Raff is +6 Mult on its own.
|
||||
j('j_abstract', {'mult'}, {'joker_gen'})
|
||||
j('j_delayed_grat', {'money'})
|
||||
j('j_delayed_grat', {'money'}, {'discards_up'})
|
||||
j('j_gros_michel', {'mult'})
|
||||
j('j_even_steven', {'mult'}, {'retrig_scoring','retrig_low'})
|
||||
j('j_odd_todd', {'chips'}, {'retrig_scoring','retrig_low'})
|
||||
@@ -171,7 +171,7 @@ j('j_ring_master', {})
|
||||
j('j_flower_pot', {'xmult'}, {'suit_flex'})
|
||||
j('j_merry_andy', {'discards_up'})
|
||||
j('j_oops', {'probability'})
|
||||
j('j_idol', {'xmult','copy_target'}, {'retrig_scoring','retrig_low','retrig_faces'})
|
||||
j('j_idol', {'xmult','copy_target'}, {'retrig_scoring','retrig_low','retrig_faces','suit_flex'})
|
||||
j('j_seeing_double', {'xmult','clubs'}, {'clubs','suit_flex'})
|
||||
j('j_matador', {'money'})
|
||||
j('j_hit_the_road', {'xmult'}, {'discards_up'})
|
||||
@@ -295,7 +295,11 @@ local CLASHES = {
|
||||
{'j_vampire', 'j_glass', 'strips Glass before it shatters'},
|
||||
{'j_vampire', 'j_drivers_license', 'strips the 16 enhanced cards'},
|
||||
{'j_vampire', 'j_stone', 'eats the Stone cards it counts'},
|
||||
{'j_vampire', 'j_marble', 'eats the Stones Marble adds'},
|
||||
-- j_vampire + j_marble is NOT here on purpose: Vampire gains xMult from any
|
||||
-- non-base scoring card (card.lua:3907), Stones included, so Marble is a
|
||||
-- renewable supply for it -- the same shape as the Midas Mask pair. The
|
||||
-- harm only appears via a third joker (Stone Joker), which carries its own
|
||||
-- clash line; third-party harm is not a clash (see the Card Sharp verdict).
|
||||
|
||||
-- Joker Stencil's xMult is the count of EMPTY joker slots.
|
||||
{'j_stencil', 'j_riff_raff', 'fills the slots Stencil needs'},
|
||||
@@ -389,14 +393,17 @@ local TAG_TEXT = {
|
||||
give = 'makes Straights easier', want = 'rewards Straights'},
|
||||
flush = {both = 'both reward Flushes',
|
||||
give = 'makes Flushes easier', want = 'rewards Flushes'},
|
||||
-- No vanilla joker converts cards to a suit; every suit "giver" is a payoff
|
||||
-- in the same cluster. The give phrasing must stay true for those (it shows
|
||||
-- when the wanter is one-sided, e.g. Blackboard vs Wrathful/Arrowhead).
|
||||
hearts = {both = 'both love Hearts',
|
||||
give = 'turns cards into Hearts', want = 'rewards Hearts'},
|
||||
give = 'also builds around Hearts', want = 'rewards Hearts'},
|
||||
diamonds = {both = 'both love Diamonds',
|
||||
give = 'turns cards into Diamonds', want = 'rewards Diamonds'},
|
||||
give = 'also builds around Diamonds', want = 'rewards Diamonds'},
|
||||
spades = {both = 'both love Spades',
|
||||
give = 'turns cards into Spades', want = 'rewards Spades'},
|
||||
give = 'also builds around Spades', want = 'rewards Spades'},
|
||||
clubs = {both = 'both love Clubs',
|
||||
give = 'turns cards into Clubs', want = 'rewards Clubs'},
|
||||
give = 'also builds around Clubs', want = 'rewards Clubs'},
|
||||
}
|
||||
|
||||
-- Order in which tags are considered when picking the one reason to show;
|
||||
|
||||
Reference in New Issue
Block a user