Skip to content

Instantly share code, notes, and snippets.

@donaldpminer
Last active August 29, 2015 14:03
Show Gist options
  • Save donaldpminer/88031380ba802d6c8cf8 to your computer and use it in GitHub Desktop.
Save donaldpminer/88031380ba802d6c8cf8 to your computer and use it in GitHub Desktop.
EDHREC FAQ
http://www.reddit.com/user/edhrec
*** How do I summon it?
Currently the only format I support is tappedout.net. Submit to
/r/edh and put a tappedout link to your deck either in the link
portion or in the text portion. The format looks like:
http://tappedout.net/mtg-decks/mydeckname/
I plan on adding support for other websites soon.
*** I want to use edhrec without posting on r/edh. How?
I started a subreddit /r/edhrec for solely interacting with the
bot and not spamming r/edh.
*** Hey! edhrec just made some awful recommendations. What gives?
Be careful of the wording: "other decks like yours..." not "recommend".
All the bot is doing is looking for decks like yours and telling
you what were the more common cards seen. This can go wrong in a
couple of ways. Here are some that I've seen:
- Using a brand new commanders or cards causes problems because there aren't many
decks in my historical database to build from and analyze
- Using a slightly modified precon deck simply suggests other precon cards that
you've already cut. This happens because other slightly modified precon decks
are the decks that are most similar to yours! I have identified a way to fix this
but it'll take some work.
- It gets things wrong if the majority of people are wrong. Let's say you've played
deck XYZ for 100s of hours and you know that card ABC sucks in the deck. But, for
whatever reason the masses think it is good because they are naive. Edhrec will
suggest it because it doesn't know any better.
- It suggests cards off color. Sometimes this happens when it's more common to run
a deck you are trying to do in different colors. For example, I've seen this happen
with mono-black vampires. It'll start recommending red/black vampires, too, just becase
some decks that are very similar are two-color.
- It suggessts cards off flavor. THE MORE UNIQUE YOUR DECK IS, THE WORSE THE RECOMMENDATIONS
WILL BE! This is because there are fewer decks like yours for edhrec to learn from.
For example, if you want to only have cards that have a tree in it and no other decks
have done that before... there is no way edhrec will figure that out. Other more common
examples of this include pauper EDH and French banlist EDH. I have some ideas on how
to fix it but honestly this issue is low priority for me.
*** What does the name mean and how do you pronounce it?
The name just means EDH Recommender. I started calling him 'ed-ric',
sounding like Haedrig. Now I just call him Ed.
*** How does Ed make its recommendations?
It uses a recommendation engine approach called collaborative
filtering, which is used by many companies to recommend products,
services, or whatever to you.
The way it works is:
First, it finds some number of similar decks to your deck in my
database of decks (more on the database later). Currently, that
number is 15 decks because that seemed to work pretty well in
practice. Similarity is mostly based on how many cards two decks
have in common. So, if you are playing a bunch of ramp spells,
you'll be more similar to another deck with a bunch of the same
ramp spells. This also naturally makes decks find other decks
that are the same colors or the same archetype.
Second, it goes through the 15 similar decks and tallies up the
cards that are seen the most that are not in your deck. So, if
14/15 of the similar decks are playing Rampant Growth, you can
bet that it is going to be a recommendation. Ed will respond
with the top 10 recommendations.
*** How is Ed implemented?
Ed uses PRAW (https://praw.readthedocs.org/en/v2.1.16/), a Reddit
API for Python. It doesn't use any other fancy libraries.
*** What decks are in Ed's database?
Ed collects decks from numerous places on the internet and
periodically adds them to its corpus. Currently he stores around
6000 EDH decks, but I'm looking to add more, perhaps up to 10,000.
*** How do I submit feedback?
Just respond to an of Ed's posts or send Ed a message.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment