Tuesday, November 30, 2010

Utopia: Crushed

Not dead. Dreaming.

So, seemingly just to spite my pledge, it turns out that even if you somehow implement every rule of Magic perfectly, with every obscure corner case handled, there must always be card-specific code. That is because there is a card that basically has card-specific rules, the comprules.doc equivalent of card-specific code.I'm talking about Rasputin Dreamweaver. I'm pretty sure it is the only card in MtG history to make use of the state based action:
704.5s If a permanent with an ability that says it can’t have more than N counters of a certain kind on it has more than N counters of that kind on it, all but N of those counters are removed from it.
So an MTG-implementation can't yet be truly without card-specific code because MtG itself has basically card-specific rules.
And before you point out Shahrazad as another card that is alone in the use of a rule, let me be nitpicky and point out Enter the Dungeon.
Just a curious thought.