BETAYou're previewing in-progress features. Bugs are expected.Report·Back to stable

Changelog

All notable changes to TableCommander will be documented here.


[2.0] - 2026-05-11

The TableCommander v2 redesign. Every public and authed surface (outside of in-game and admin) has been rebuilt with a new visual language: gold corner-brackets, parchment headlines, surface cards with sharp corners, and a single editorial vocabulary across every page. v1 has been removed from the bundle entirely for migrated surfaces.

Added

  • Full v2 visual redesign across home, blog, deck builder, deck view, decks library, cards, players, profile, friends, account, leaderboard, all auth pages, and every public marketing / SEO landing page
  • New v2 chrome — sticky nav with backdrop blur and gold underline on active routes, public-facing variant with Sign In / Open App CTA, mobile nav unchanged
  • Public deck view + deck builder now mirror their authed counterparts pixel-for-pixel via a publicMode prop on the shared v2 components — single source of truth, no parallel implementations
  • Home page rebuild — new section-numbered editorial layout, 2x2 screenshot showcase, multi-theme thumbnails, supporter banner with perk grid, "What This Is / What It's Not" split, redesigned guides grid
  • v2 auth pages — Login, Register, password reset, magic link, email verification, OAuth callback all sit on a shared AuthShell with floating-orb backdrop, gold-bracketed card, and v2 form vocabulary
  • 6 SEO landing pages ported to v2 (commander-deck-builder, import-mtg-decks, mtg-card-database, mtg-commander-simulator, play-commander-online, play-mtg-online-free) via a shared LandingPageLayout with hero + feature showcase + closing CTA banner
  • Side drawers re-skinned — FriendsDrawer (pill tabs, gold unread badges, btn-gold/btn-outline request actions), ChatDrawer (gold-tinted own bubbles matching LobbyChat), AppearanceModal (gold selection rings on image / pattern / colour pickers, pill-row size toggle)
  • v2 deck card menu — ellipsis affordance on each deck artwork with View / Edit / Duplicate / Delete (yours) and View / Copy to My Decks (public)
  • v2 leaderboard — section-num + h1 header, category pill row, podium-tinted surface rows with medal crowns, gold readout-num stat tiles
  • v2 lobby + game bar + draft panel re-skinned to v2 vocabulary, seat colour identity, deck picker modal with thumbnails

Improved

  • Bundle is materially lighter — v1 component code is gone for migrated routes, uiVersion cookie infrastructure removed, ~13 000 lines of legacy code deleted
  • Blog post floating action bar now follows the reader down the page and intelligently fades when the "Back to all posts" link enters the danger zone (no more overlap)
  • Blog list filter chrome matches the /decks pattern exactly (sticky chrome with backdrop blur, surface search bar, loose filter pills below, View toggle on its own right-aligned row)
  • Public deck view + deck builder look and behave identically to their authed counterparts; single source of truth via a publicMode prop on the shared v2 components
  • Sticky filter strip on deck view now properly clears the commander rail title at all viewport sizes
  • Screenshots dropped from ~9 MB of PNG to ~400 kB of WebP — 22x lighter for the home page showcase
  • AppearanceModal + FriendsDrawer drawer roots get the .tc-v2 class so Save / Cancel buttons + drawer titles inherit v2 button styling

Foundation (under the hood)

  • Tailwind + Radix + shadcn-style primitives installed: Dialog, Drawer, DropdownMenu, Select, Tooltip, Popover, Tabs, Checkbox, Switch, Form (react-hook-form + zod), Button (class-variance-authority variants), Toast (sonner), Spinner. All styled with the existing .tc-v2 CSS vocabulary, no Radix safety-net classes — every primitive inherits the surface / corner-brackets / btn-gold / pill / label vocabulary that defines the v2 look
  • First mechanical AntD sweeps complete: message.*toast.* (67 files), <Spin /><Spinner /> (43 files), <Tooltip><SimpleTooltip> (27 files), <Button> → CVA Button (24 files). Further per-file ports (Modal, Drawer, Select, Form, Dropdown, Input, Card, Typography, Tag, Empty, Alert) will land in upcoming releases. AntD will be uninstalled once admin pages and in-game UI are ported
  • react-hook-form + zod wired up for the v2 Form primitive — auth pages and settings will migrate over to declarative schemas
  • lucide-react added for new icons; @ant-design/icons kept during the transition

Removed

  • 16 v1 page components, the uiVersion cookie / middleware plumbing, and the "Classic UI" footer link. The v2 redesign is the only version of the app from this release forward — visitors with a stored tc_ui=v1 cookie are auto-migrated on their next page view

Not yet in v2

  • In-game UI (the playmat, game session widgets) still uses the v1 AntD chrome. This is the largest single porting surface and is deliberately deferred until the v2 primitives have been battle-tested elsewhere
  • Admin pages (14 internal pages: badges, blog editor, bracket estimator, card database, cookie audit, formats, match integrity, patreon failures, ranks, settings, system messages, system stats, users) still use v1 AntD. Low visibility — these will be ported in a focused pass
  • Recent matches game-log modal — v1 had a clickable match row that opened a game log modal; v2's WinLossChart lost the click handler. Will be restored in a follow-up

[1.49] - 2026-05-03

Added

  • Companion (Ikoria) mechanic — pick a companion when its deckbuilding restriction is met, on web and companion app. The companion sits face-up alongside your commander and can be cast once for 3 generic mana, after which it leaves the slot and behaves like any other card. Honor-system enforcement, with banned companions filtered out of the picker
  • Attach mechanic — right-click an Equipment, Aura, or Fortification on the battlefield to pick a target. Bound cards stack visibly behind the target on hover, an "attachments" badge marks the recipient, and detaching is one click. Auto-detaches when either card leaves the battlefield
  • Featured commander zone — the deck builder now shows your commander(s) in a dedicated featured slot at the top, with replace-in-place picker, hover preview, and an ellipsis menu for swap/remove. Mirrored on the deck view page
  • Partner / partner-with / Friends Forever / Doctor's Companion / Background — full partner pair support in the deck builder with a dedicated partner slot, valid-partners endpoint, and a generic "Choose Partner" picker for multi-pool commanders. Brawl partner gating and Oathbreaker variant included
  • Floating mana column — toggle a vertical mana pool (M key) with per-color dice. Hover a die to reveal +/- controls, click for a popover with direct input and an infinite toggle
  • Mulligan rule selector — pick London or Vancouver mulligan when creating a casual table. London is the default. Vancouver applies its scry-1 on keep, mandatory and labelled in the UI
  • Mutual draw — propose a draw from the sidebar beside Concede. If all living players accept, the game ends with no winner. Draws break streaks but don't count as a win or loss
  • Restart table — spawn a rematch lobby from the end-game modal in one click. First click wins atomically and broadcasts to the room so other seats join the new table
  • Experience counters — track XP-style counters on the player status bar, alongside life and poison
  • Hand reveal actions — reveal your hand to a single player (private, with an echo to you) or to all players (broadcast), from the sidebar Hand actions menu
  • Bracket estimator signals — bracket estimates now factor in alternate win conditions, fast mana, cheap tutors, and free counterspells. Re-estimation runs as a daily cron with admin trigger, and a new admin page shows distribution and flag counts

Improved

  • Counters on face-down cards — counters now render on morph/manifest/disguise cards, so you don't lose track of +1/+1s on a flipped Hooded Hydra
  • Tokens list — token grid drops the name overlay that covered P/T, and now uses the standard hover preview to show the full card
  • Sidebar resize handle — rebuilt as a real knob attached to the menu edge, with a tidy 4-dot grip and a draggable side-by-side breakpoint at 1200px
  • Sidebar tooltips — 0.6s hover delay before tooltips show, and they now pop leftward to avoid clipping
  • Discord notifications — no longer pings seated players when a new player joins their table, only the format role on initial table creation
  • Archidekt import — Archidekt's tagged Text Export is now parsed correctly. Previously it was misread as ambiguous and the alphabetically-first card was picked as commander
  • Companion app — commander preview opens the correct card from deck view, notes FAB matches the styling of other deck view buttons, and partner/companion pickers ship with hover preview, violator badges, and per-companion eligibility hints
  • Lobby copy — "Casual (Any Deck)" table type renamed to "Kitchen Table (any deck)"
  • Card draft polish — set picker on its own row under name search, MV stacked under the type line, oracle text scrolls in its own box on long entries, and the Buy CTA is now a primary gold button on dark backdrops
  • Auth resilience — transient database blips during login now surface as 503 instead of 401, so users aren't told their credentials are wrong when they aren't

Changed

  • Leaderboard categories — current hot streak and best streak tabs removed from the leaderboard
  • Profile match history — drawn matches now show a "Draw" tag instead of "Defeat"
  • Shop links — Shop menu item and DROP 01 merch link removed from the profile support card while shop infrastructure is reworked

Fixed

  • Stale token print ids — token creation now resolves to a current print when the cached print id has been removed from the database, fixing intermittent missing-token errors. Tokens are anchored on oracle id for stability
  • Commander eligibility — type-based commander eligibility now reads the front face only, and legacy "Summon Legend" cards are correctly recognised as commander-eligible
  • Aura commander identity — Commander-granting Auras (Bruna-style) are now detected during card import
  • Drag/drop guard for activated companion — once activated, a companion can't be dragged back into the command zone

[1.48] - 2026-04-26

Added

  • Booster pack scanner — companion app gains a camera-based card scanner. Point at a booster card and it's identified via on-device OCR (ML Kit on Android, Vision on iOS), with corner-bracket framing and a brand-gold sweep. Confirms whether the exact print was matched, and double-faced layouts are supported
  • Whisper chat — send a private message to a specific player from in-game chat, with a broadcast notice in the room so others know a whisper happened
  • Per-deck private notes — attach a personal note to any deck, visible only to you. Lives alongside legality info on the deck view
  • Random commander picker — pick a random eligible commander when creating a new deck, on web and companion. Enlarged preview, hover preview, click-to-flip for double-faced cards
  • Library top card reveal — persistent peek and reveal modes for the top card of your library, with a new ellipsis menu on the library zone and hover preview on the revealed card
  • Draft deckbuilder polish — pick basic lands directly in the deckbuilder with overlay land controls and hover preview. Progress persists across page reloads, decks validate against picks and basic-land caps, and the game starts automatically when all players finish building
  • Format-legal and commander-identity filters — filter deck builder card search to format-legal cards or to your commander's color identity, on web and companion
  • Commander damage breakdown — hover the shield badge to see per-attacker commander damage breakdown for any player
  • Per-player game log filter — filter the in-game log down to a single player from the title bar
  • Duplicate deck — added to the deck card ellipsis menu on My Decks
  • Shop link — new Shop menu item linking to shop.tablecommander.com, plus a DROP 01 merch link in the profile support box

Improved

  • Lobby seats — estimated deck bracket now shown on seats and in the deck picker, with a dark backdrop and colored border for legibility over deck art. Ready state stacks below the deck name + bracket, long deck names truncate with a tooltip
  • Deck view layout — legality and notes split into collapsible cards, stacked vertically
  • Graveyard/exile awareness — opponents are prompted before touching your graveyard or exile, and you're notified when they do
  • Turn advance on elimination — turn advances correctly when the active player is eliminated by life loss, poison, or commander damage
  • Game toasts — duration tightened to 3 seconds, dismiss on hover
  • Sidebar buttons — note and feedback buttons converted to icon-only with tooltips; feedback now uses a bug icon to differentiate from chat
  • Deck builder filter chips — shortened with tooltips and color pips
  • Card-search scroll — adding a card from the deck builder card search no longer resets the list scroll position
  • Discord avatars — broken avatars self-heal on image-load failure, refreshing stale hashes via the bot API
  • In-game feedback — bug reports now include table context for easier triage
  • Table deletion — other players are notified when the creator deletes a lobby table
  • Tips/supporter copy — replaced Ko-fi with Patreon supporter subscriptions in the tips ToS section

Fixed

  • Commander eligibility — legendary artifact creatures correctly recognized as commanders
  • Bulk counter submenu — restored in tabbed and stacked views
  • Cascade preset — no longer stops at lands when revealing
  • Archidekt import — strips category and tag annotations on import
  • Draft rejoin — fixed rejoin flow and land picker

[1.47] - 2026-04-13

Added

  • Set code & collector number imports — collection imports now support set code and collector number for precise card matching (e.g. 1x Lightning Bolt (LEA) 162)
  • Doesn't untap toggle — mark battlefield permanents as "doesn't untap during your next untap step"
  • Colorless color filter — added colorless option to card color filters

Fixed

  • Copy limit cards — cards with specific copy limits (e.g. Nazgul, Seven Dwarves) now handled correctly
  • Counter duplication — counters are now correctly copied when duplicating a card in-game

[1.46] - 2026-04-12

Added

  • Collections on mobile — view and manage your card collections in the companion app, switch between collections with the chip strip
  • Set filter — filter by set when searching cards in the deck builder, card search, and collections
  • Library search filter — search your library by card name during in-game library search, with flexible pick count

Fixed

  • Turn advance on concede — the game now correctly advances when the active player concedes
  • Graveyard ordering — cards in graveyard and exile now display in the correct order

[1.45] - 2026-04-11

Added

  • Private player notes — attach private tags and notes to other players as a personal reminder, visible only to you. Flag icon surfaces on profiles, the Players page, table seats, the leaderboard, and in-game opponent bars. Read more
  • Greyed tag filter — non-supporters can now see the custom card tag filter on deck view (with supporter upsell)

Fixed

  • Life adjustments — clamped to integer range to prevent overflow
  • Practice mode indicator — moved out of the in-game player card area to reduce clutter
  • Card hover preview — clears when the hovered card is moved by another player

Changed

  • Friend profiles — removed the Discord shortcut button from friend profile views

[1.44] - 2026-04-10

Added

  • Card collections — track your owned cards with print and foil tracking, total value display with USD/EUR/GBP currency support
  • Custom card tags — tag individual cards in your decks with custom labels, filter by tag in builder and deck view (supporter feature)
  • Deck card search — filter your deck cards by name, text, type, and colour in both builder and deck view

Improved

  • Deck builder — infinite scroll for card search, sticky search panel and filter bar
  • Deck import — respects set codes, set filter added to art picker
  • Card search results — ordered newest first, then alphabetically

Fixed

  • Commander damage — correctly reduces life total, both commanders always shown
  • Table timestamps — visible on all table states including in-progress games
  • Deck/folder names — limited to 100 characters
  • Basic land detection — uses type line instead of hardcoded name list
  • Opponent graveyard interaction — reanimation and graveyard hate now work: select cards in an opponent's graveyard and move them to your battlefield or to exile

[1.43] - 2026-04-07

Added

  • Card hover preview and modal — hover any card for a large preview, click for full details with flip support. Now consistent across card search, collections, and deck views
  • Collection filter — filter your owned cards by name, colour, and type directly in the My Collections panel

[1.42] - 2026-04-06

Added

  • Card collections — track which cards you own with a dedicated My Collections tab. Create multiple collections, add cards via image grid search with filters, and see a "Collected" badge on cards you own. Supporter feature
  • Deck builder collection filter — filter the deck builder card search to show only cards in a specific collection
  • Draft format (Beta) — Draft is now available to all players. Pick a set, configure packs per player, and play a booster draft game

[1.41] - 2026-04-01

Added

  • Dashboard now shows latest blog posts and promotions
  • Pregame mulligan timeout — 3 minutes per player
  • Tab key cycles to the next player in turn order
  • Streak leaderboard split into current hot streak and best streak tabs
  • Match duration shown on recent matches on player profiles
  • Blog posts support author and draft/published state

Improved

  • Create table, create playgroup, and appearance settings converted to side drawers
  • Voice chat option simplified to a single selector when creating a table
  • Deck editor layout matches deck view — larger colour pie, taller mana curve, inline validation

Fixed

  • Doctor's Companion / Doctor partner pairs failing deck validation
  • Profile page showing your own country flag instead of the profile owner's
  • Promo-only cards missing from deck list
  • Card search filtering out valid cards incorrectly
  • Stuck game when all players are eliminated simultaneously

[1.40] - 2026-03-26

Added

  • Playgroups — create and manage playgroups with friends. Invite members, track a group leaderboard, and create tables visible only to your playgroup (supporter feature)
  • Scheduled tables — schedule a table for later with a live countdown. Players get notified when it's about to start and when it goes live (supporter feature)
  • Country flags — show your country flag on your profile and in game lobbies. Set it in account settings

Improved

  • Game lobby updates are now instant — no more visible page refreshes

[1.39] - 2026-03-24

Added

  • Blog — read dev updates, patch notes, and community content directly in the app. Posts support inline images, likes, comments, and sharing. Latest post shown on your profile sidebar
  • Deck folders — organize your decks into custom folders (supporter feature). Available on desktop and the companion app

Improved

  • Deck cover art shown as seat card background in the table lobby
  • Lobby disconnect detection with automatic cleanup of stale seats
  • Game action logs persist across reconnects for match history
  • Can no longer abandon a table during an active game

[1.38] - 2026-03-22

Added

  • Practice mode — new game mode that lets you play multiplayer games with friends without affecting stats or rankings. Great for teaching new players or trying new strategies. Select "Practice" in the Game Mode selector when creating a table. Practice tables are clearly marked with a purple tag in the lobby and a banner during gameplay.
  • Match integrity admin page — admin tool that analyses player match history for suspicious patterns such as win farming, alt-account play, and stat manipulation. Includes a scoring system that weighs account creation timing, opponent variety, game duration, IP correlation, and more. High-risk players are automatically reported to Discord daily.

Improved

  • Game duration now recorded accurately for match history and analysis

[1.37] - 2026-03-21

Added

  • Idle timeout — tables now detect inactive players. When a player is idle, opponents can vote to concede on their behalf or remove them from the table. Default changed from off to 15 minutes. The timeout can be set to Off, 5 min, or 15 min when creating a table. Players can use the "Take a Break" option to pause the timer when they need to step away.
  • Table settings tags — game mode and idle timeout displayed as tags above chat in the lobby

[1.36] - 2026-03-20

Added

  • Deck listing sort — sort decks by Recently Updated, Name, Most Games, Most Wins, Win Rate, or Bracket
  • Per-deck win/loss stats — color pie chart on the deck view page
  • App store badges on homepage and profile page

Improved

  • Deck listings use format tabs instead of collapsible sections
  • Deck listing cards show game stats (games played, wins, win rate)
  • 4 rows per page on deck listings
  • Cover art on deck listings respects deck art preference setting
  • Leave button concedes before exiting a game

Fixed

  • Cards placed outside battlefield bounds from library search
  • Playtest pregame infinite re-render in tabbed view

[1.35] - 2026-03-19

Added

  • Top Deck Builders leaderboard — a new tab on the Decks page showcasing the most prolific deck builders, with dedicated badge tiers
  • Win streak badges — automatic badge awards for win streaks, with icons on the leaderboard
  • Leaderboard sidebar widget — quick leaderboard view on the Tables page without navigating away
  • Top player badges — automatic "most wins", "most games", and "most decks" badges awarded via badge automation

Improved

  • Leaderboard moved from the nav bar into the Tables sidebar for a cleaner layout
  • Private profiles now appear as anonymized entries on leaderboards instead of being hidden entirely

Fixed

  • Token copies spawning without a position and becoming undraggable or snapping to the wrong location
  • Tokens and cards disappearing when dragged off-screen — positions now clamped to the battlefield
  • Spacecraft/vehicle commanders unable to return to the command zone
  • Sideboard option hidden for Commander format decks
  • Intermittent 429 errors during deck playtest
  • Infinite re-render loop in playtest pregame
  • Badge revocation not removing associated Discord roles

[1.34] - 2026-03-15

Added

  • Commander bracket estimation (Phase 1) — decks in Commander, Brawl, and Oathbreaker formats now get an auto-estimated power bracket (B1 Exhibition through B4 Optimized) based on Game Changers, extra turn cards, mass land denial, and tutors. Card flags are computed during bulk import from Scryfall data. Players can override the estimate in deck settings, with mismatch transparency shown to other players in the lobby
  • Game Changer card indicators — cards flagged as Game Changers by WotC show a lightning bolt badge in the deck builder grid view and a "GC" tag in list view
  • Bracket display — bracket shown in deck builder stats bar, deck view stats bar, deck list cards, and companion app (view, edit, and deck list)

Improved

  • Deck cards restyled across desktop to match the companion app design — clean 4:3 cards with bottom gradient overlay, gold format chip, and subtle meta text instead of stacked shadow layers

Android App

  • Open testing on Google Play

iOS App

  • Awaiting review with Apple

[1.33] - 2026-03-14

Added

  • Deck-level card art preference — choose Default, Latest (including promos/Secret Lair), or Original (first printing) art for all cards in a deck. Per-card art choices still override the deck setting
  • Search Library action — search your library for a card by name, put it into your hand, graveyard, exile, or battlefield, then shuffle. Accessible from the More menu
  • Search Until action — reveal cards from the top of your library until you find a card matching a type (creature, land, etc.), then put it into your chosen zone. For Discover, Cascade, Atla Palani, and similar effects
  • Reveal top card — reveal the top card of your library to all players
  • Discord join notification — players get an @mention in the table's Discord thread and a chime sound when someone sits down

Improved

  • Zone viewer (graveyard/exile) now shows most recent cards first
  • Show from Library gains a Discover/Cascade preset and self-targeting option
  • More menu reorganised with grouped sections and cleaner layout
  • Game bar clears properly when a table ends or is abandoned
  • Mill Until now supports mana value threshold

Companion App

  • Full deck builder with card search, pinch-to-zoom grid, and swipe-to-dismiss search sheet
  • Deck stats overlay (type breakdown, mana curve, color distribution)
  • Deck list filter by card name/type
  • Description, privacy, and card art preference in deck settings
  • Copy public decks to your library
  • Commander star only shown on eligible cards (legendary/planeswalker)

[1.32] - 2026-03-12

Added

  • Play cards from opponent's exile — you can now select and play face-up cards directly from an opponent's exile zone to your battlefield, or send them to the graveyard. For example, if you exile 26 cards from an opponent's library with Kotis, Fangkeeper and want to cast all spells with mana value 13 or less, you can open their exile, filter by max mana value, Select All, and play them all to your battlefield in one action — no more asking your opponent to move cards to the field one by one so you can copy them
  • Mana value filter in zone viewer — a "Max MV" filter alongside the search bar in graveyard and exile zone viewers lets you narrow cards by mana value, useful for effects like Villainous Wealth or reanimation spells with MV restrictions

Improved

  • Show from Library "exile face-up" destination now grants the controller peek access, so they can interact with the exiled cards from the zone viewer just like face-down Gonti-style exiles

[1.31] - 2026-03-11

Added

  • Built-in voice chat (Beta) — audio-only voice chat directly in the browser, no Discord needed. Patrons can enable it when creating a table, and all seated players can join
  • Voice type selection — patrons with linked Discord can choose between TableCommander voice or Discord voice when creating a table
  • Audio output device selector — pick which device plays voice chat audio (headset, speakers, etc.), with your choice remembered

[1.30] - 2026-03-10

Added

  • Deck import from URL — paste a Moxfield or Archidekt link to import a deck automatically, with preview before confirming
  • Archidekt support — import decks directly from Archidekt URLs, with format and commander detection

[1.29] - 2026-03-10

Added

  • Playtest mulligan phase — playtest games now include opening hand selection, with each player's hand shown sequentially

Improved

  • Game notifications stripped to key events only and enabled by default
  • Zone views (graveyard/exile) no longer require opponent permission — opponents are notified instead
  • Notification duration increased from 3s to 6s

Fixed

  • Playtest: couldn't interact with the non-active player's board (tap cards, change life, etc.) without passing the turn first
  • Playtest: game controls (Next Phase, Pass Turn) locked when viewing the non-active player
  • Milled cards showing as hidden to opponents
  • Non-commander formats incorrectly marking cards as commanders during import
  • Notification visual artifacts in light theme

[1.28] - 2026-03-08

Added

  • Companion game control panel — use your phone as a game controller with life tracking, phase/turn controls, draw, dice, scry, mill, untap, and a live game log
  • Companion card search — search and browse cards from your phone with pinch-to-zoom grid (3/2/1 columns)
  • Companion graveyard viewer — browse graveyard and exile zones with search from the companion app
  • Direct messaging — send messages to friends from the friends tray, with notification bell support
  • Win/loss streaks — streaks tracked on player cards and profiles with animated flame effects on hot streaks
  • Search in graveyard/exile viewer — filter cards by name when browsing graveyards and exile zones
  • Streak sorting — sort the players page by current win streak

Improved

  • Take control now requires opponent confirmation — no more accidental steals
  • Stolen cards return to owner when they leave the battlefield, and owners can reclaim via right-click
  • Peek top card now shows the actual card image instead of just the name
  • Friends tray redesigned as a messenger-style tappable list

Fixed

  • Double-faced cards showing the wrong face to other players
  • Plain text import ignoring commander listed at the end of the deck
  • Notification/unread counters reappearing after being read

[1.27] - 2026-03-05

Added

  • Discord voice channel support for tables (supporter feature) — each table gets a temporary voice channel that players can join directly from the lobby/game
  • Transform button on card modal for double-faced cards — quickly flip DFCs from the card detail view

Improved

  • Transform button moved outside the card corner for better visibility
  • Voice channels use a dedicated category for organization

Fixed

  • Bot losing access to its own voice channels after creation
  • Voice channel user permissions not being applied correctly
  • Transform button not showing on card search page
  • Channel creation failing with Missing Permissions error

[1.26] - 2026-03-05

Added

  • Card control system for steal/Gonti mechanics — when a player peeks at an opponent's exiled card (via Gonti, Thief of Sanity, etc.), they can now play it to the battlefield or send it to the graveyard directly from the opponent's exile zone. Controlled cards appear on the controller's board with a red glow border, and all normal interactions (tap, untap, flip, counters, zone moves) work as expected. When a controlled card leaves the battlefield it returns to the owner's zones automatically
  • "Take control" context menu option on opponent's visible battlefield cards for Control Magic / steal permanent effects
  • -1/-1 counter type for infect and wither mechanics
  • Hover card preview in the "Show from Library" modal and zone viewer modals

Improved

  • Card menu button moved to top-left to avoid overlapping counter badges
  • Legendary Vehicles and Spacecraft now allowed as commanders
  • Turn timer persists across reconnects
  • Zone viewer now shows live card state (cards disappear from the modal immediately when moved)

Fixed

  • Bulk counter removal now includes -1/-1 counters

[1.25] - 2026-03-04

Added

  • Idle timeout — opt-in setting when creating a table. When enabled, if the active player takes no action for 15 minutes, any other player can force-concede them. No more games held hostage by AFK players
  • Break system — any player can request a break (20, 30, or 60 min). All alive players must accept for the break to start, and all must ready-up to resume. The idle timer pauses during breaks so nobody gets timed out while away
  • Turn timer — a second timer in the sidebar tracks how long the current turn has lasted. When idle timeout is enabled, the timer text turns orange at ~12 min and red at ~14 min of inactivity as a heads-up
  • Idle player indicators — when a player hits the idle threshold, their quadrant/tab border shifts from the red active-turn glow to an amber pulse, an "IDLE" badge appears next to their name, and a "Force Concede" button replaces their life total
  • Break overlay — a dimming overlay appears during an active break showing elapsed time and which players have readied up, similar to the lobby ready-up flow

[1.24] - 2026-03-03

Added

  • Face-down card play — play any card from your hand face-down for morph, manifest, and disguise mechanics

Improved

  • Deck legality now revalidates automatically when you select a deck in a lobby or view your deck list, so stale "Illegal" tags clear themselves
  • Token search shows your favorites and recently used tokens at the top for quicker access

Fixed

  • Friend request notification badge now clears properly after accepting
  • Cards with unlimited copies (like Relentless Rats) no longer flagged as illegal in singleton formats

[1.23] - 2026-03-03

Added

  • Context menu button on cards — tap the ellipsis icon to open the card menu without right-clicking, improving touchscreen usability
  • Per-card commander tax tracking with auto-increment

Improved

  • Commander tax badge enlarged for readability
  • Context menu positioned to avoid off-screen overflow

[1.22] - 2026-02-28

Added

  • PWA support — install TableCommander as a standalone app for more screen space and faster access
  • Install prompt shown on the profile and tables pages for supported browsers

[1.21] - 2026-02-27

Added

  • Stacked (top/bottom) view mode as an alternative to the quadrant layout
  • Snap-to-grid for battlefield card placement
  • Bulk counter actions for multi-selected cards (increment/decrement all at once)
  • Turn order number badges on player avatars
  • Rotate 180° action (R key) for flip cards
  • Transform double-faced cards directly from hand before playing
  • Idea Smith badge series with bronze, silver, and gold tiers

Improved

  • Collapsible hand and compact header in stacked mode
  • Full-width bottom quadrant for 3-player games
  • Card names now shown in game log for public zone moves
  • Game announcement Discord messages ping the format role
  • Card back design updated with flat 2D logo at 80% opacity
  • Profile badges enlarged to 135px with name/description on hover

Fixed

  • Face-down cards no longer reveal on drag; card backs show logo correctly
  • Flip/transform working in quadrant view
  • Snap grid uses actual card element measurements instead of hardcoded widths
  • Redis game state persistence enabled with noeviction policy

[1.20] - 2026-02-26

Added

  • Multi-select drag — drag a group of selected cards together between zones or across the battlefield

Fixed

  • Transforming a card with custom art now shows the correct matching back face
  • Copy/token cards can now be flipped and transformed
  • Copied cards now match the art of the original instead of defaulting to the base printing
  • Art selector no longer closes when clicking inside and supports click-to-zoom

[1.19] - 2026-02-25

Added

  • Hand card reordering — drag cards left/right within your hand to rearrange them

[1.18] - 2026-02-24

Added

  • Concede button added to all three game views
  • Peek top card — view the top card of your library from the More menu
  • Draw multiple cards button in the sidebar

Improved

  • Buy card links now include affiliate support; UK and Irish players fall back to Manapool when a store isn't configured
  • Card search results and card previews now link directly to the card's Scryfall page

Fixed

  • Draw multiple was only sending 1 card regardless of the selected amount
  • Peek top card was showing cards in the wrong order

[1.17] - 2026-02-23

Added

  • Oathbreaker and Brawl formats with full deck validation
  • Modern, Pioneer, Legacy, Vintage, and Pauper formats enabled

Improved

  • Deck validation errors shown as a readable list instead of a tooltip
  • Self-service username editing with a 1-day cooldown

Fixed

  • Strict format mode was allowing unvalidated decks through
  • Moxfield import ignoring SIDEBOARD/DECK section headers
  • Discord account linking for email-registered users
  • Discord rank roles now sync on login and every 15 minutes

[1.16] - 2026-02-22

Improved

  • Game sidebar is now collapsible and resizable with a drag handle
  • Battlefield zone split bar is draggable; command zone is resizable
  • Background image toggle added to single-player view with picture icon

Fixed

  • Opponent zone layout and command zone drag behaviour

[1.15] - 2026-02-22

Added

  • Patreon supporter integration — link your Patreon via Discord and your supporter badge is awarded automatically
  • Playtest button on the tables page for quick solo sessions
  • New background image options

Improved

  • Tables page split into two-column layout with your active tables always visible
  • Profile page sections use tabs for a cleaner layout
  • Commander zone now restricted to valid commanders (legendary creatures, legendary planeswalkers, backgrounds, or cards with "can be your commander") in Commander formats
  • Some premium features are now supporter-only

Fixed

  • Casual removed as a deck format option — it is a table game type only, not a deck format
  • Tapping multiple selected cards simultaneously no longer causes a race condition
  • Double-faced cards no longer show the face-down option in the context menu; transform action label clarified
  • Tap/untap consolidated into a single toggle item in the context menu

[1.14] - 2026-02-20

Added

  • Casual format for kitchen table magic — skips deck legality checks
  • In-game feedback popover in sidebar
  • 1v1 option when creating a table

Fixed

  • Deck import no longer matches token cards instead of real printings
  • Removed shuffle, next phase, and end turn keyboard shortcuts to prevent accidental triggers

[1.13] - 2026-02-20

Added

  • "Show from library" mechanic — recipient shows top N cards to an opponent who picks from them, with configurable destinations (exile face-down/up, battlefield, hand) and presets for Gonti, Thief of Sanity, and Villainous Wealth

[1.12] - 2026-02-19

Added

  • Manapool affiliate integration with partner branding and GA4 exit tracking

Improved

  • Game action log persists across reconnects via Redis

Fixed

  • Dice roller overlay no longer traps users when WebGL is unavailable (Librewolf/privacy browsers)
  • Promo-only cards no longer excluded from card import
  • Login for email/password accounts
  • Footer text wrapping on public pages

[1.11] - 2026-02-18

Improved

  • Card search ranks results by relevance (exact match > prefix > rest)
  • Vibrant deck card images with gradient overlay

Fixed

  • Color filter uses color_identity so basic lands appear in search results
  • Card import prefers normal printings over Secret Lair/special editions

[1.10] - 2026-02-17

Added

  • Theme engine with dropdown selector
  • Themes: Default, Nord, Catppuccin, Tokyo Night, Solarized Dark

Improved

  • Deck list card images now show at full vibrancy with gradient overlay for text readability

[1.09] - 2026-02-15

Added

  • Mill feature: mill a specific number of cards from any player's library to their graveyard
  • Mill until card type: mill cards until a card of a chosen type (creature, land, etc.) is revealed
  • Floating, resizable game log window (matches chat window behavior)
  • Library Actions row in sidebar with Scry, Mill, and Reveal buttons
  • Coin flip gets its own dedicated button

Improved

  • Sidebar buttons use Ant Design Tooltips consistently instead of native title attributes
  • Commander Damage popup shows full card title with smaller received-from labels
  • RNG buttons sized equally with proper spacing
  • Compact timer layout in sidebar

Fixed

  • Removed redundant tooltips from poison, commander damage, and life score elements
  • Library action buttons no longer overflow the sidebar on narrow screens

[1.08] - 2026-02-08

Improved

  • Deck list API responses slimmed from ~9.6MB to ~21KB, fixing frontend memory issues
  • Public and private deck lists now return server-computed card counts and cover images
  • Deck export fetches full deck data on demand instead of pre-loading all cards

[1.07] - 2026-02-06

Added

  • Support for up to 6-player Commander tables

Fixed

  • Updated reCAPTCHA disclosures to link to internal privacy policy instead of Google policies

[1.06] - 2026-02-04

Fixed

  • Transform cards now show the correct face in hover preview, detail modal, and drag overlay
  • Drag overlay matches card zoom level instead of snapping to 100% size while dragging

Improved

  • Version badge moves below site name on mobile to avoid collision with Discord icon

[1.05] - 2026-01-31

Fixed

  • Lobby chat messages not appearing for seated players
  • Bulk moving cards from exile/graveyard to battlefield now places cards in a spread-out grid instead of stacking off-screen

[1.04] - 2026-01-30

Fixed

  • Playtest win confirmation modal no longer blocks all action when opponent wins (@mastercommodore)

[1.03] - 2026-01-29

Fixed

  • Next Phase button no longer requires 5+ clicks to advance through combat (@Nick1)

[1.02] - 2026-01-29

Improved

  • Card zoom now respects viewport size - max zoom limited on smaller screens to prevent layout overflow

[1.01] - 2026-01-29

Added

  • Card copy feature: search and create copies of any card via the token modal (@cosmos, @Mattymat)
  • Copy opponent's battlefield cards directly to your board (@cosmos, @Mattymat)
  • Version number display in header and game board
  • Bulk card selection and movement in zone viewer (@Mattymat)
  • Card size zoom controls (+/-) in game sidebar (@demi)
Cookie Preferences
We use cookies to enhance your experience. Essential cookies are required for core functionality. You can customize your preferences or accept all cookies.