Changelog - v1.9.0 - Marble & Steel
✨ New Systems
- Helmets — a new equipment slot with four helmet classes, each with its own always-on combat feel.
- Armor v1 — defensive equipment now rolls deterministic affixes, resolved through a central defensive layer with global mitigation caps to keep fights fair.
- Spectare — a public champion feed with tipping, comments, notifications and dedicated champion cards.
- Featured Duels — curated marquee matches with their own resolution flow and expanded QTE word pool.
- Arena Registry — a dedicated page and history layer for a house's landmark fights, including discipline snapshots and replay links.
🎨 Redesign & UI Polish
- New Roster V2 dossier with an RPG-style paper-doll loadout canvas and dynamic portrait dimming that scales with equipped tier.
- Empty equipment slots now show themed placeholder icons instead of truncated labels.
- Staff cards on the Roster page finally show the correct staff art.
- Fresh arena backdrop on the Roster stage.
- Auth V2/V3 split-screen with dedicated Embers artwork, aligned with the new Landing and Start screens.
- New PersistentGameLayout for smoother transitions between authenticated pages.
- Landing page refresh with new intro section, trailer button/modal and live community stats.
- 2A dialog migration wave: Vilicia Surgery confirm, Edit Lanista Bio, Gladiator Portrait Picker and more overlays brought onto the Roman-border, Cinzel, sharp-corner design language.
- Style Lab expanded with new DD components (Stage, HUD, Sidebar, StatBar, Frame, Atmosphere) as a living reference.
⚔️ Combat & Presentation
- New combat stack: CombatStageShell, TopRail, CenterHUD, CombatantStageCard, VerdictScreen and PrefightDisciplineIndicator.
- Combat FX pass: readable stone-panel backing behind DODGE / BLOCK / PARRY / CRIT / HIT numbers so damage no longer washes out over portraits.
- Expanded QTE word pools with fresh Roman and gladiator-themed terms for both standard QTE and Featured Duels — keyboard-layout friendly across QWERTY, QWERTZ and AZERTY.
🛡️ Balance & Server Hardening
- Additional gameplay flows moved to server-authoritative resolution.
- Further lockdown on economy and stat fields against direct client writes.
- Helmet morale bonus applied atomically on fight resolution.
- Elite training path fully closed against stat-cap bypasses.
🛠️ Admin & Ops
- Public Changelog flow with RSS feed and per-entry hero image generation.
- Fresh Sands admin reset (chunked and resumable) and admin fight-lifecycle tools.
- Training audit log for balance tracing.
- Landing-stats and challenge leaderboard functions hardened.
🐛 Bug Fixes
- Manually abandoned runs are now archived to Legacy instead of being wiped.
- Arena navigation cleanup — removed the duplicated "Arena Contracts" submenu; the main entry links directly.
- Landing and auth session fallbacks improved to avoid stuck loading states.
- Various portrait, replay and opponent-HP consistency fixes.

