sjsafranek / mtghordesurvival

Web app that simulates the MTG Horde Survival. Uses the deck list from https://www.quietspeculation.com/2011/09/horde-magic-a-new-way-to-play-magic-and-survive-zombie-invasions/
MIT License
2 stars 0 forks source link

spec for deck list file format #14

Open sjsafranek opened 4 years ago

sjsafranek commented 4 years ago

spec for deck list file format

sjsafranek commented 4 years ago

File format needs the following:

sjsafranek commented 4 years ago

File format can have the following:

lancesafranek commented 4 years ago

I would argue that creatures having haste by default has more to do with the gamemode than the decklist.

I like the idea of specifying tokens explicitly in the decklist (avoids a lot of scryfall api calls to infer what tokens will likely be used). Ignoring things that would modify the game mode, I imagine all information will be in the form of:

type of thing (e.g. commander) 1 thing1 another type of thing (e.g. traditional decklist) 2 another thing 99 yet another thing

My vote is for a format like the following: Commander 1 Yarok, The Desecrated Tokens 1 Angel 1 Zombie 1 Insect Decklist 99 Agent of Treachery

sjsafranek commented 4 years ago

It appears that some of the default card searches for scry fall find the incorrect card. This is due to multiple cards having the same name (applies to mainly tokens). We can do direct lookups via the scryfall_id field so this attribute should be easily parsed when needed

sjsafranek commented 4 years ago

Currently the decklists are being stored as CSV files:

count,name,scryfall_id 1,Archfiend of Spite 1,"Rakdos, the Showstopper" 1,Archfiend of Depravity 1,Archfiend of Despair 7,Cabal Evangel 1,Demonic Taskmaster 1,Doomed Dissenter 1,Lord of the Void 1,"Ob Nixilis, Unshackled" 1,Rakdos the Defiler 1,"Seizan, Perverter of Truth" 12,Shadowborn Apostle 1,Sire of Insanity 1,Xathrid Demon 1,Xathrid Necromancer 1,Yixlid Jailer 1,Liliana's Contract 1,Mirror March 2,Rest in Peace 1,Master of the Feast 1,Damnation 1,Plague Wind 4,Angel,96f407ef-2b08-45e9-a45e-128cf0a63839 6,Beast,381854e2-7369-473e-a604-4dd7c010fc89 50,Human Soldier 1,Westvale Abbey

sjsafranek commented 4 years ago

What about a tab separated variant? Some cards have commas in the name so tabs would be better. A '//' would help signify a new section?

// Commander 1\tYarok, The Desecrated\ta1001d43-e11b-4e5e-acd4-4a50ef89977f