PATCH NOTES
Version 1.1.4 (Build 93) | March 25, 2026
HIGHLIGHTS
- Solo Self-Found Mode - Start SSF runs where trading is disabled and leaderboards are separate — prove your skill with only what you find
- New Soundtrack - 7 brand-new ambient tracks replace the old default music with a dynamic shuffled playlist and seamless crossfades
- Aether Deck Overhaul - Hide cards you don't want to see, view tag composition at a glance, and get smarter card recommendations with cross-element penalty
- Trade Safety & Run Binding - Marketplace listings and currency orders are now bound to the run that created them, preventing cross-run exploits
- Loot Filter Improvements - Hide rules now properly suppress items from the loot panel, and the wizard/editor got usability polish
NEW FEATURES
Solo Self-Found (SSF) Mode
Create runs in SSF mode where all trading is disabled. You can only use items and currency you find yourself.
- New Trade / SSF toggle when creating a run
- SSF runs display a gold "SSF" badge on the leaderboard
- Separate SSF leaderboard filtering — compete against other SSF players
- World record announcements in chat distinguish SSF records
- Full server-side enforcement via new database migration
Dynamic Music Playlist
The single looping default track has been replaced with a 7-track shuffled playlist of new ambient music with Middle Eastern and desert-inspired themes.
- Tracks shuffle on each session — no two play-throughs sound the same
- Seamless crossfade transitions between tracks (1.5s overlap)
- Automatic skip on load failure — a broken track never stalls the playlist
- Battle music still crossfades in/out when entering and leaving combat
Card Hiding in Deck Builder
Right-click any card in your collection to hide it from the deck builder grid.
- Hidden cards appear dimmed with a "HIDDEN" badge when revealed
- "Show Hidden (count)" toggle to temporarily view hidden cards
- Persists per-character across sessions
- Quickly declutter your collection without losing anything
Deck Builder Tag Composition Panel
The deck builder now shows a live breakdown of your equipped deck's tag composition — see how many Fire, Healing, Melee (etc.) cards you're running and whether tag-based card conditions are met.
- Hovering an equipped card highlights its condition tag in the composition panel
- Tag condition thresholds show met/unmet status
- Rarity legend with inline symbols (Common, Uncommon, Rare, Mythic Rare)
Salvage All
New "Salvage All" button in the salvage dropdown for mass-salvaging inventory.
- Double-click confirmation to prevent accidents (3-second timeout)
- Unique and Legendary items are automatically excluded — they can never be mass-salvaged
Payment Collection per Run
New Collect Payments flow is now scoped to your active run, preventing cross-run payment collection exploits.
BALANCE CHANGES
Underleveled XP Catch-Up Bonus
Players who are 5+ levels below the monsters they're fighting now receive a scaling XP multiplier, up to 5x at 50+ levels behind. The bonus uses a power curve that ramps quickly at first then tapers, helping underleveled characters catch up without trivializing early content.
Card Recommendation: Cross-Element Penalty
The deck builder's recommendation engine now penalizes cards whose element tags don't align with your hero's preferred elements. Off-element cards are scored lower and show an "Off-element" reason, making it easier to build focused decks.
Party Travel Cohesion
Party movement during travel between packs now uses an elastic-band system instead of hard positional snapping.
- Units ahead of the group gradually slow (down to 0.65x speed)
- Units behind get a boost (up to 1.45x speed)
- Nearest-neighbor tether prevents party splitting
- Better stall detection allows ranged units to kite naturally (160ms threshold)
QUALITY OF LIFE
- Item Tooltip Localization — Item type labels (weapon families, armor slots, accessory types) are now fully translatable. Added Trinket as a new gear slot category.
- Loot Filter: Hide Rule Panel Behavior — Setting a rule to "Hide" now automatically disables "Show in Loot Panel" and relabels it to "Keep Hidden in Loot Panel" with a tooltip explaining the behavior.
- Stash Socket Visibility — Stash items now show sockets by default so you can identify socketed gear at a glance. Added an "Always Show Stash Sockets" setting if you prefer the old hover-only behavior.
- Forge Studio Regex Filter — Forge Studio now includes a regex stash filter with live match counts and invalid-pattern feedback, making it much faster to find crafting targets.
- Trade Cancellation Feedback — Cancel buttons now show a lock icon and "Open the originating run to cancel" message when viewing listings from a different run, instead of silently failing.
- Trade UI: Server-Confirmed Updates — Cancelling a listing now waits for server confirmation before updating the UI, preventing desync if the cancellation fails.
- Chat Polling Optimization — Announcement polling interval increased from 8s to 120s (realtime subscription handles live updates). Background channel loads are staggered to reduce connection pressure.
- New App Icon — Updated application icon and all platform variants (favicon, Android Chrome, Apple Touch).
BUG FIXES
- Fixed music playlist stalling when a track fails to load — now automatically skips to the next track
- Fixed Forge Studio items remaining held after a dungeon run ends in victory or defeat — held items are now returned automatically
- Fixed chat announcement polling exhausting the connection pool under heavy load
- Fixed dungeon rotation values in custom dungeon base template
- Fixed loot filter worker roundtrip for rules authored in the studio
- Fixed one-handed quick-equip behavior so weapons can still be swapped into main hand even when an empty off-hand slot is available
BEHIND THE SCENES
- SSF database migration with separate leaderboard tracking and RPC-level filtering
- New leaderboard E2E test harness for SSF scenarios
- Loot filter E2E coverage: player-authored rules, source/locale, organic filter creation
- Trade service auth recovery and SSF guard test coverage
- Diagnostic dungeon run script for automated runtime inspection