5.8 KiB
5.8 KiB
Development Status (Central)
Active Plans
- Enhance 3D Game View: Active. Transforming the battlefield into a fully immersive 3D environment.
- Deck Tester Feature: Completed. Implemented a dedicated view to parse custom decks and instantly launch the 3D game sandbox.
- Game Context Menu & Immersion: Completed. Implemented custom right-click menus and game-feel enhancements.
Recent Completions
- Game Battlefield & Manual Mode: Completed.
- Helm Chart Config: Completed.
- CSV Import Robustness: Completed. Enhanced CSV parser to dynamically map columns from headers, supporting custom user imports.
- Fix Socket Mixed Content: Completed. Resolved mixed content error in production by making socket connection URL environment-aware.
- Draft Rules & Pick Logic: Completed. Enforced 4-player minimum and "Pick 2" rule for 4-player drafts.
- Fix Pack Duplication: Completed. Enforced deep cloning and unique IDs for all draft packs to prevent opening identical packs.
- Reconnection & Auto-Pick: Completed. Implemented session persistence, seamless reconnection, and 30s auto-pick on disconnect.
- Draft Interface UI Polish: Completed. Redesigned the draft view for a cleaner, immersive, game-like experience with no unnecessary scrolls.
- Resizable Draft Interface: Completed. Implemented user-resizable pool panel and card sizes with persistence.
- Draft UI Zoom Zone: Completed. Implemented dedicated zoom zone for card preview.
- Host Disconnect Pause: Completed. Specific logic to pause game when host leaves.
- 2025-12-16-215000_anti_tampering.md: Implemented server-side validation for game actions.
- 2025-12-16-220000_session_persistence.md: Plan for session persistence and safer room exit logic.
- 2025-12-16-221000_lobby_improvements.md: Plan for kick functionality and exit button relocation.
- Fix Draft UI Layout: Completed. Fixed "Waiting for next pack" layout to be consistently full-screen.
- Draft Timer Enforcement: Completed. Implemented server-side 60s timer per pick, AFK auto-pick, and global draft timer loop.
- Pack Generation Update: Completed. Implemented new 15-slot Play Booster algorithm with lands, tokens, and wildcards.
- Card Metadata Enhancement: Completed. Extended Scryfall fetching and
DraftCardinterfaces to include full metadata (CMC, Oracle Text, etc.). - Rich Metadata Expansion: Completed. Further expanded metadata to include legalities, finishes, artist, frame effects, and produced mana.
- Persist Metadata: Completed. Implemented IndexedDB persistence for Scryfall metadata to ensure offline availability and reduce API calls.
- Bulk Parse Feedback: Completed. Updated
CubeManagerto handle metadata generation properly and provide feedback on missing cards. - Full Metadata Passthrough: Completed.
DraftCardnow includes adefinitionproperty containing the complete, raw Scryfall object for future-proofing and advanced algorithm usage. - Server-Side Caching: Completed. Implemented logic to cache images and metadata on the server upon bulk parsing, and updated client to use local assets.
- Peasant Algorithm Implementation: Completed. Implemented Peasant-specific pack generation rules including slot logic for commons, uncommons, lands, and wildcards.
- Multi-Expansion Selection: Completed. Implemented searchable multi-select interface for "From Expansion" pack generation, allowing mixed-set drafts.
- Game Type Filter: Completed. Added Paper/Digital filter to the expansion selection list.
- Incremental Caching: Completed. Refactored data fetching to cache cards to the server incrementally per set, preventing PayloadTooLarge errors.
- Server Graceful Shutdown Fix: Completed. Implemented signal handling to ensure clean process exit on Ctrl+C.
- Cube Sticky Sidebar: Completed. Made the Cube Manager left sidebar sticky to improve usability with long pack lists.
- Cube Full Width Layout: Completed. Updated Cube Manager to use the full screen width.
- Cube Archidekt View: Completed. Implemented column-based stacked view for packs.
- Cube Mobile UI Fixes: Completed. Fixed overlapping elements and disabled hover previews on mobile.