Skip to content

Draft Deck Feature Implementation#339

Open
Lucalaure wants to merge 10 commits intoarkham-build:mainfrom
Lucalaure:main
Open

Draft Deck Feature Implementation#339
Lucalaure wants to merge 10 commits intoarkham-build:mainfrom
Lucalaure:main

Conversation

@Lucalaure
Copy link
Copy Markdown

Overview

This PR introduces a comprehensive draft deck feature to arkham.build, allowing users to create and upgrade draft decks with extensive customization options. The feature includes support for customizable cards, researched cards, parallel investigators, taboo lists, card pools, and sealed deck formats.

Key Features

🎲 Draft Setup & Configuration

  • Flexible Draft Configuration: Mirror the same config setup used for normal decks, including deckbuilding restrictions that update dynamically based on cards added
  • Investigator Selection: Support for selecting parallel versions of investigators (front/back) before starting the draft
  • Deck Customization:
    • Ability to name the deck before starting
    • Select taboo list for the draft
    • Choose specific card pool (packs/cycles)
    • Configure cards per pick via slider
    • Set number of skips allowed

🔄 Upgrade Functionality

  • Draft Deck Upgrades: Full upgrade functionality for draft decks, allowing XP spending and card upgrades
  • Remaining XP Tracking: Proper handling of remaining XP when restarting upgrade drafts
  • Customizable Card Upgrades: During upgrade drafts, legal customizable options are automatically added to the card pool
  • Upgrade Modal Integration: Updated upgrade modal to work seamlessly with draft decks

🎴 Advanced Card Support

  • Customizable Cards:
    • Custom component to view and add customizable options to draft card pool
    • Random legal customizable options added for each legal customizable card during upgrade drafts
  • Researched Cards: Functionality for adding "Researched" cards (level 0 cards) to the upgrade pool
  • Myriad Cards: Support for adding 1 copy or 3 copies of myriad cards during draft

🎨 UI/UX Improvements

  • Draft Setup Editor: Comprehensive setup page with intuitive controls
  • Draft Picker: Interactive card selection interface
  • Draft Editor: Full-featured draft editing experience
  • Customization Sheet Component: Improved UI/UX for customizable card selection
  • Deck Display Integration: Draft decks properly displayed with draft tags

Technical Implementation

New Components

  • deck-draft.tsx - Main draft deck page (850+ lines)
  • draft-setup-editor.tsx - Draft configuration interface (352 lines)
  • draft-editor.tsx - Draft editing interface (175 lines)
  • draft-picker.tsx - Card selection component (301 lines)
  • customization-upgrade-card.tsx - Customizable card upgrade handling (220 lines)

State Management

  • New draft slice in Redux store (1000+ lines)
  • Comprehensive draft selectors (1020+ lines)
  • Draft state types and interfaces
  • Integration with existing deck meta system

Metadata Extensions

  • meta.is_draft - Marks decks created via draft
  • meta.draft - Draft-specific metadata storage
  • Integration with existing sealed deck and card pool systems

Files Changed

  • 29 files changed
  • 5,226 insertions, 63 deletions

Migration Notes

  • Existing decks are unaffected
  • Draft decks are marked with meta.is_draft flag
  • Draft functionality integrates seamlessly with existing deck viewing and editing workflows

- Deckbuilding restrictions can now be updated based on the cards you add to the deck
- Changed the draft-setup to mirror the same config setup for normal decks
- Added ability to select parallel versions of investigators before the draft
- Added ability to name deck before starting draft
- Added ability to select a taboo list for the draft
- Added ability to select a specific card pool
- Added draft field/tag to decks
- Added upgrade functionality to draft decks
- Updated Upgrade Modal to work with draft decks
- Added new custom component to view and add customizable option to the draft card pool (using cutomizable-sheets)
- During an upgrade draft, for each legal customizable card an investigator could add to their deck, a random legal customizable option will be added to the card pool
- If the user picks this customizable option, a copy of the customizable card will be added to their if possible
- Refactored some frontend logic to ensure that these upgrades can be viewed from the deck preview while upgrading
- Added signature picking in draft setup page
- Added functionality to add 1 copy or 3 copies of a myriad card
- Added functionality for customizable number skips while drafting
- Make cards per draft a slider
- UI/UX fixes with customizable sheet component
- Reset number of skips used when restarting draft
- Added functionality for adding "Researched" cards to the upgrade pool of cards
@Lucalaure
Copy link
Copy Markdown
Author

Lucalaure commented Jan 20, 2026

  • Ban Adaptable
  • Ancestral Knowledge shows up only if you have 10 skill cards
  • Implement Parallel skids, Agnes and Jim (side decks)
  • Test/implement Joe Diamond, Lola and Suzi
  • Test/implement Exiled cards

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants