Right-click any card to lock it: golden padlock, can't-play feedback, auto-skip when all cards are locked. Plus animated EVO badges, NEW/xN owned-count, COMPOSITION mana curve panel, 12-language support.
EVO badge now detects 3-component evolutions (e.g. Phieraggi recipe: Phiera Der Tuphello + Eight The Sparrow + Tirajisú). The game's recipe description uses an internal name ("Tirimasu") that doesn't match the actual card asset name ("Tirajisú"), so the previous exact-text matcher failed and the EVO badge never appeared on the third component. CheckCombo now tolerates such "orphan" component names by mapping them to an unused deck card that doesn't conflict with another comp and isn't independently referenced as a comp by any other recipe. Reported by shinjidf on NexusMods.
v1.3.0
New
Card Lock — right-click any card (in combat hand, draw pile, or discard pile) to lock it. A golden padlock replaces the mana cost orb and the game treats the card as unaffordable, so any play attempt (mouse click, drag, space/enter) triggers the natural "can't afford" shake + sound feedback instead of playing it.
Designed primarily for Destruction cards (one-shot consumed on play) when you want to keep them in hand until a combo / fusion altar opportunity arises.
Alternative shortcut: . / Suppr on the numeric keypad while hovering a card.
Auto-skip — if every card in hand is locked or unaffordable, the turn auto-ends (when the game's "End turn automatically" setting is on).
Persistence — locks survive game restarts via BepInEx/config/BetterCards.locks.txt (stored per-card GUID, stable across sessions).
Modal visualisation — the padlock also appears on cards in the draw pile / discard pile modal. Right-click toggles the lock there too. Two copies of the same card are tracked independently (per-instance via stable rank mapping).
WILD cards — the cost text TMP is hidden permanently on Wild cards because the orb sprite already shows the W graphically (was rendering W twice).
Custom procedural lock badge (golden ring + padlock pixel-art sprite, fade-in zoom animation) and three short SFX (lock / unlock / blocked) bundled inside the DLL as embedded resources — no extra files to drop next to the plugin.
Toggle to disable the whole feature: CardLock.Enabled in BepInEx/config/com.tovak.vc.bettercards.cfg.
v1.2.2
New
X bucket in the COMPOSITION panel for cards whose cost is variable (X Mana gem). Rendered as a normal orb labelled "X", placed right after the Wild bucket and before the numeric costs.
Fixes
Cost-text parsing is now strict: only 0..9, W/U, and X are recognised. The previous "any non-numeric text → WILD" rule wrongly bucketed X Mana cards and certain draw-pile placeholders as wild, producing things like "W x6" for a deck with zero wild cards. Other texts now fall through to the numeric fallbacks (GetCardCostTypeManaCost → cfg.manaCost).
v1.2.1
Fixes
COMPOSITION panel rendered with white squares (no orb sprites) and no gold frame when the draw pile modal was opened with the deck still fully in hand. Orb sprites are now also pulled from hand CardViews during the _allCards iteration, and the gold frame is read directly from the DeckBox modal's own [frame] GameObject (always present in the modal prefab) instead of being derived from a card.
v1.2.0
New
EVO badge redesign — the gold medallion is replaced by an animated chromatic ring that cycles HSV hues around the circle, with a light streak sweeping across it for a holographic foil effect. The "EVO" text stays anchored at the centre.
EVO bis — a new smaller silver medallion with a green ✓ in the corner, shown when the offered card would complete a combo but every component is already in your deck. Picking is redundant for that combo; the bis surfaces the information without competing with the primary rainbow EVO.
Fixes
ownedConfigs now includes cards currently being offered, so the redundancy check correctly detects duplicates (e.g. Magic Wand offered while you already own Magic Wand + Tome).
Removed a legacy guard that suppressed EVO checks on cards you already owned, which prevented the bis from triggering on duplicate offers.
v1.1.2
Fixes
Wild orb sprite is now cached even when the only Wild in your deck lives in the hand or in a pile that is not currently visible. Previously the COMPOSITION badge fell back to a plain W on a regular orb in that case; the proper layered Wild rendering is now used as soon as any Wild card has a CardView in the scene.
v1.1.1
Fixes
Fixed a crash in the level-up COMPOSITION overlay when the deck contained a Wild card and the Wild sprite had not been cached yet (i.e. the draw/discard pile had not been opened with a Wild visible). The panel now renders reliably and falls back to a W badge until the Wild sprite is available.
v1.1.0
New features
COMPOSITION panel — opens with the draw pile or discard pile during combat, showing the mana cost distribution of your full deck (draw + hand + discard combined)
Adapts layout: horizontal under the cards for small decks (≤10), vertical side panel for larger decks (11+)
Companion cards are excluded from the count
Localization
Multilingual support for FR / EN / DE / IT / ES / RU / PL / PT-BR / JA / KO / ZH-Hans / ZH-Hant
Panel rebuilds in real time when you change the game language
Fixes
Panel refreshes correctly after altar evolutions and wild card pickups
Correct mana cost shown for evolved cards (e.g. SantaWater → La Borra)
Correct deck size in combat (full deck instead of only the visible draw pile)
v1.0.2
Fix FPS drop — cache FindObjectOfType result
v1.0.1
Fix badges not refreshing on Caprice reroll
v1.0.0
Initial release: EVO / NEW / ×N badges on the level-up card selection screen