Changelog - v1.3.0 - Echoes of the Arena
A major update introducing the Combat Replay system, social sharing infrastructure, and critical game integrity fixes.
Combat Replay System
- Replay Viewer: Watch deterministic, frame-perfect playbacks of past arena battles
- Playback Controls: Adjust speed (1x, 2x, 4x), step through rounds, and toggle combat sounds
- Crowd Ambience: Looping arena soundscape synchronized with playback state
- Outcome Sounds: Victory and defeat sounds play at the end of every replay
- Replay Manager: New admin dashboard to monitor and review all player replays
Sharing & Social Integration
- Dynamic Previews: Shared replay links show fight-specific titles, results, and custom preview images on Discord, Twitter, and Facebook
- Edge Function Proxy: New
replay-metafunction handles social crawler requests and redirects real users to the app - Auto-Public Sharing: Replays are automatically marked as public when copying a share link
- Clean URLs: Professional share links using
play.ludus-magna.com/replay/{token}format
Game Integrity
- Anti-Refresh Exploit: Fixed critical bug where users could retry losing fights by refreshing the page
- Result Persistence: Refreshing after a fight now correctly displays the final result screen instead of restarting the encounter
- Server-Side Guards: Added database checks to
executeFightandsaveQTEFightResultto prevent double-execution
Technical Improvements
- Extended Combat Logging: Fights now record snapshots of all combatant stats, equipment, and game config values
- Database Schema: New
fight_replaystable with UUID share tokens and RLS security policies - Public Replay RLS: Row-Level Security policies allow anyone with a valid share token to view public replays
