Sunday, April 12, 2015

Magic: the Gathering and Computer Automation

I am an avid Magic: The Gathering (MTG) player.  A few days ago, a friend pointed me to an interesting article that combines MTG and math, and relatedly computers, which is what really interests me.

The article describes a process for generating a deck list based on all the best deck lists of a given type.  The idea is to use the crowd of the best examples to make a deck that is even better.  Check it out if you're into that sort of thing:

Magic Math – A New Way to Determine an Aggregate Deck List: RG Dragons by Frank Karsten

One cool thing about Frank's process is that it can be automated, and that's the part that really gets me going (and some people in the comments of the article have already done so, in fact).  That's because although I think his process is a neat idea, as with anything new, it can be refined and made better.

Automation can help with this refining.  Once automated, you can play with some of the rules of Frank's process (let's call it Process #1).  One such rule is a rule for breaking ties if you have two cards competing for a spot in the deck.  Frank states in his article that he just picked something easy to break these ties, which is to choose the card that comes first alphabetically.  Changing this rule is a refinement to the process, and creates Process #2.  For example, say you change the tie-break condition to be whichever card has a lower casting cost.  It's an arbitrary rule, and probably not a great one, but possibly better than the alphabetical rule.

And now we have a new process, Process #2, to compare against Process #1.  Since both are automated, we can use them to quickly make many new decks to compare and contrast against each other.  All that's left is to figure out which one is better, admittedly not always an easy task, but still we're one step closer to the best deck in the land (cue evil laugh)!

Automation is so great.

No comments:

Post a Comment