This Python command-line app parses Magic: The Gathering Arena logs (with detailed logs enabled). It shows card previews, abilities, board states, hand states, and can even control your mouse to sync in-app commands with in-game actions. Currently, values are hardcoded for my specific account, but this readme will help when it's eventually opened up to everyone.
- Log Parsing: Reads MTGA log files for detailed data on the game state.
- Card Previews: Displays card art, text, and stats right in the terminal.
- Board & Hand State: Shows real-time updates of what’s on the battlefield and in your hand.
- Mouse Control: Integrates with in-game actions by issuing mouse events from the app.
- Deck Parsing: Includes a deck list tab for quick reference and editing.
- Enable Detailed Logs in MTGA options.
- Point this script to your Arena log file (Steam version default path is likely different from standalone).
- Launch the script in a terminal—use Python 3.
- Follow on-screen prompts to navigate menus and preview cards, deck lists, etc.
- Hardcoded Values: User/account-specific paths and IDs are locked to my setup for now.
- Limited Error Handling: Some logs or incomplete data might crash or freeze the app.
- Basic UI: This is all textual, so no fancy graphical interface yet.
- Config File: Making the app more flexible for other users and account setups.
- UI Improvements: Streamlining the TUI for clarity and faster navigation.
- Enhanced Mouse Control: More robust in-game action mapping.
- Bug Fixes & Stability: Ongoing improvements to parsing edge cases in the logs.
- Clone the repo or download the source.
- Install required Python libraries (check
requirements.txt). - Run:
or with textual and its dev console
python -m app.main
in one terminal, andtextual console
textual run --dev -c "python -m app.main" - Follow the interactive menu to manage your decks, view card details, or play matches.