axxroytovu / magic-search-engine

Search engine for Magic cards
MIT License
0 stars 0 forks source link

Add subpack objects #1

Open axxroytovu opened 1 year ago

axxroytovu commented 1 year ago

Plan to add nonstandard "pack" and "deck" objects to facilitate https://github.com/axxroytovu/MTG-Median-Analysis. These include:

@taw I assume not, but do you want me to pull these back up into the main repo?

taw commented 1 year ago

For 19+random Jumpstarts, I'm currently using human-readable annotations like this.

Technically this could be modelled as dmu-jumpstart.yaml with 20 variants, each with 19 unique sheets, but I don't know if this is a good way to present this data.

For other booster types, could you remind me what they are?

axxroytovu commented 1 year ago

The way I was going to handle jumpstart boosters was to have a separate (as an example) "Arcane Mystic Sealed Booster" object, which contains the dmu/Arcane Myschief.txt deck and a dmu-blue-rare-mythic.yaml "pack", since both decks and boosters are stored in the same format for my uses.

taw commented 1 year ago

I don't think I'd want "boosters" of 1-2 cards right now.

Are theme boosters randomized or preconstructed? Either way, they should be OK?

For other randomized products, if we have reliable information about them, and they fit the current system, I guess they could be represented. I know there were some nonstandard faction boosters for prereleases and other weird things as well. For a while most prereleases did this.

By the way I could imagine some future system where there's "product" object which contains a bunch of preconstructed and randomized subproducts, and it would make sense to have those micro-boosters there, but right now I think we should pass on that. (by the way there's this from mtgjson, but I never really integrated it with anything)

We could do something like this:

name: "Streets of New Capenna Commander Deck Obscura Operation"
contents:
- precon:
  - set: ncc
  - name: "Obscura Operation"
- boosters:
  - code: "ncc-collector-sampler"
  - count: 1
name: "March of the Machine Draft Booster Box"
contents:
- boosters:
  - code:  mom
  - count: 36
# buyabox promo
- card:
  - set: mom
  - number: 387
  - foil: true
name: "Return to Ravnica Prerelease Pack Azorius"
contents:
- boosters
  - code: rtr
  - count: 5
- boosters:
  - code: rtr-prerelease-azorius
  - count: 1
- card:
   # Archon of the Triumvirate
  - set: prtr
  - number: "142★"

etc.

I don't think I'd have time for this right now, but I think the concept could work.

axxroytovu commented 1 year ago

I'm using that list from MTGJson as my starting point, and building out the "contents" of each sealed product as I go.

I'm going to be working on this in my own fork, and I'll push over whatever makes the most sense to distribute. Feel free to reject things that don't make sense to load.