返回 Skill 列表
extension
分类: 内容与媒体无需 API Key

mtga-draft-helper

使用17Lands数据和特定套牌的抓牌指南的MTG Arena抓牌助手。当用户请求帮助进行MTG Arena抓牌、分析抓牌选择、评估限用卡牌、获取17Lands卡牌评分、读取Arena Player.log以了解当前抓牌状态、建议选择哪张卡牌、显示卡牌图片、在抓牌后构建或建议一副套牌,或是与万智牌:竞技场抓牌及限用赛制相关的任何事情时使用。包括特定套牌的原型指南和选择顺序等级列表(例如:洛温暗影 / ECL, 通过预兆之路 / 蜘蛛侠 / OM1)。触发词包括:抓牌、17Lands、MTGA、选择、包、限用、密封、套牌建议、抓牌助手、卡牌评分、GIHWR、胜率、ECL、洛温暗影、OM1、通过预兆之路、蜘蛛侠。

person作者: jakexiaohubgithub

MTGA Draft Helper

Assist users during MTG Arena drafts by combining 17Lands statistical data with real-time Arena log parsing.

Core Workflow

  1. Acquire card data — Fetch card ratings and color win rates from the 17Lands API. See references/17lands-api.md.
  2. Read draft state — Parse the Arena Player.log to detect the active draft, current pack/pick, and taken cards. See references/arena-log-parsing.md.
  3. Evaluate picks — Use win-rate metrics (GIHWR, OHWR, IWD, ALSA, etc.) and color signals to recommend the best pick. See references/card-evaluation.md.
  4. Show card images — Display Scryfall card images from URLs stored in the dataset.
  5. Suggest a deck — When the draft is complete (all picks made), build an optimal 40-card deck from the pool. See references/deck-building.md.

Live Draft Tracking (Active Draft Mode)

To assist during a live draft in progress, the agent monitors the Arena log in real time. Full details in references/live-draft-tracking.md.

Quick Start

  1. Start watcher — Run live_watcher.py (from the reference) as a background process. It tails Player.log and emits JSON-line events to stdout.
  2. Poll for events — Periodically check the background terminal output for new lines.
  3. React to each event:
    • draft_start → fetch 17Lands data for the detected set, load set guide.
    • pack → resolve card IDs, evaluate, present ranked pick suggestion with card images.
    • pick_made → record the pick, update colours and curve, confirm to user.
  4. Draft complete (42 picks) → auto-build a 40-card deck and present it.

Fallback: Manual Poll

If a background watcher is not available, run this on demand when the user asks:

Get-Content "$env:LOCALAPPDATA\Low\Wizards Of The Coast\MTGA\Player.log" -Tail 200 |
  Select-String "Draft\.Notify|Event_Join|Event_PlayerDraftMakePick|BotDraft_DraftStatus|CardsInPack"

Parse the output for the latest pack/pick data and respond with a suggestion.

Quick Reference

17Lands Card Ratings URL

https://www.17lands.com/card_ratings/data?expansion={SET}&format={FORMAT}&start_date={START}&end_date={END}

Optional: &user_group={top|middle|bottom}, &colors={WU|BG|...}

17Lands Color Ratings URL

https://www.17lands.com/color_ratings/data?expansion={SET}&event_type={FORMAT}&start_date={START}&end_date={END}&combine_splash=true

Card Image URLs

Each card's dataset entry contains an image array with Scryfall URLs:

https://cards.scryfall.io/large/front/{hash}.jpg

For split/DFC cards, a second URL may be present for the back face.

Arena Player.log Location

| OS | Path | |---|---| | Windows | C:/Users/{USER}/AppData/LocalLow/Wizards Of The Coast/MTGA/Player.log | | macOS | ~/Library/Logs/Wizards of the Coast/MTGA/Player.log | | Linux (Steam) | ~/.local/share/Steam/steamapps/compatdata/2141910/pfx/drive_c/users/steamuser/AppData/LocalLow/Wizards Of The Coast/MTGA/Player.log |

Key Draft Detection Strings in the Log

| Purpose | Log prefix | |---|---| | Premier/Trad draft start | [UnityCrossThreadLogger]==> Event_Join | | Quick draft start | [UnityCrossThreadLogger]==> BotDraft_DraftStatus | | Premier pack data | [UnityCrossThreadLogger]Draft.Notify | | Premier pick made | [UnityCrossThreadLogger]==> Event_PlayerDraftMakePick | | Quick draft pack | DraftPack within BotDraft_DraftStatus | | Quick draft pick | [UnityCrossThreadLogger]==> BotDraft_DraftPick |

Key Data Fields

| Abbreviation | Full Name | Meaning | |---|---|---| | GIHWR | Games In Hand Win Rate | Win rate when card is drawn — primary pick metric | | OHWR | Opening Hand Win Rate | Win rate when card is in opening hand | | GPWR | Games Played Win Rate | Win rate in games where card is in the deck | | ALSA | Average Last Seen At | Average pick position where card is last seen | | ATA | Average Taken At | Average pick position where card is taken | | IWD | Improvement When Drawn | Win-rate delta between drawn and not-drawn | | GIH | Games In Hand (count) | Sample size for GIHWR |

Draft Suggestion Prompt Template

When making pick suggestions, provide for each pack card:

{Name} | Colors: {W/U/B/R/G} | CMC: {N} | Mana Cost: {cost} | Rarity: {R} | Types: {types} | GIH WR: {X.X}%

Recommend the pick considering:

  1. Raw GIHWR (higher is better, >56% is strong, >60% is a bomb)
  2. Color alignment with already-drafted cards
  3. Mana curve needs (creature distribution across CMC slots)
  4. Archetype synergies for the set
  5. Wheel probability (cards with high ALSA may come back)

Deck Building Summary

After all picks, build a 40-card deck:

  • Target ~17 lands, ~15 creatures, ~8 non-creature spells
  • Identify the 2 strongest colors from the pool using color affinity (sum of above-average GIHWR per color)
  • Sort cards by GIHWR within the chosen colors, fill creature curve first, then add non-creatures
  • Calculate land distribution proportional to mana symbols in the deck
  • Output in Arena-importable format: {count} {Card Name}

Detailed References

Set-Specific Guides