Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Non-legal subtypes in CardTypes.json #801

Open
patrickgaskill opened this issue May 27, 2021 · 4 comments
Open

Non-legal subtypes in CardTypes.json #801

patrickgaskill opened this issue May 27, 2021 · 4 comments
Labels
More Information Needed Further information is requested

Comments

@patrickgaskill
Copy link

Version(s) tested against

MTGJSON 5.1.0+20210524

Description of Bug

CardTypes.json contains a number of types that aren't in the Comprehensive Rules:

  • Creature types
    • Chicken -- From Robot Chicken, which is black bordered but Scryfall has as memorabilia: true
    • Head -- From Skull Saucer, a silver-bordered Unsanctioned card
    • Hornet -- From before the grand creature type update?
    • Reveler -- From those Theros challenge decks, I don't see a good way in Scryfall's JSON to filter this as not being a real card
    • Rukh -- From an old promo Rukh token
    • Wasp -- Maybe from old versions of The Hive?
    • Halfling and Ranger appear to come from spoilers which are okay
  • Planeswalker types
    • Abian -- Abian, Luvion Usurper, a Mystery Booster playtest card
    • B.O.B. -- B.O.B. (Bevy of Beebles), a silver-bordered Unsanctioned card
    • Duck -- Personal Decoy, a Mystery Booster playtest card
    • Dungeon and Master -- Dungeon Master, a Heroes of the Realm promo card
    • Inzerva -- Inzerva, Master of Insights, as Heroes of the Realm promo card
    • Urza -- Urza, Academy Headmaster, a silver-bordered Unstable card

Other silver-bordered types like Donkey and Child aren't present, so it seems inconsistent.

This may be related to #485. I wonder if the best solution could be just parsing the actual comprehensive rules text file, and including all the non-rules types from other sources as an extra field in the file.

@patrickgaskill patrickgaskill changed the title Non-legal card types in CardTypes.json Non-legal subtypes in CardTypes.json May 27, 2021
@ZeldaZach
Copy link
Member

I've been thinking about this for a while, and I'm not sure if limiting ourselves to "Real Magic" only is necessarily correct. These types are types given to card(s) in Magic's history, which leads the discussion on why am I to decide what should I arbitrarily support? It's worked the same for so long now, that a change might be undesired by downstream (& upstream) sources.

Maybe I'm wrong here, but I do like how everything is properly listed and someone doesn't have to sort around a bunch of files to realize Urza is infant a planeswalker type, albeit silver border.

@ZeldaZach ZeldaZach added the More Information Needed Further information is requested label Nov 14, 2021
@patrickgaskill
Copy link
Author

Maybe I'm wrong here, but I do like how everything is properly listed and someone doesn't have to sort around a bunch of files to realize Urza is infant a planeswalker type, albeit silver border.

This is sort of my point, that while using just CardTypes.json I can't tell which types are legal in Comprehensive Rules land, and which aren't.

I'm trying to build an app that has some very light rules simulation (imagine a dropdown where you choose a creature type to name for Cavern of Souls) so I'd love to have an easy way to get to game-legal-only types.

How would you feel about adding a version of CardTypes.json, like CompRulesCardTypes.json, that only includes things that are in the Comprehensive Rules?

@ZeldaZach
Copy link
Member

Coming back to this, do you still find such a change/new file warranted? I'm still not necessarily convinced a change is necessary as having a full "enum" set of all potential values across all of MTGJSON does provide value, and removing certain ones or breaking the file interface to indicate some of those are "un" cards or special promos doesn't necessarily feel it's worth the effort.

@patrickgaskill
Copy link
Author

I think so, and I largely stopped using MTGJSON because of it. If I'm presenting a non-acorn game state to the user, I need a list of non-acorn types to populate dropdowns and UI elements. It would definitely simplify my life to use MTGJSON as the source for that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
More Information Needed Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants