EasyMSE is a Python package for creating Magic: The Gathering cards from code or the command line. It interfaces with an installation of Magic Set Editor 2 and its built in CLI to make generating custom cards easier.
With Python and PIP installed, open a terminal and enter pip install ezmse
You must have Magic Set Editor 2 installed (or build it from source). Your working directory must contain the .exe and .com versions of MSE as well as its data and resource folder. You must also have the Magic - M15 fonts installed in order for the cards to render properly.
from ezmse import Card
myCard = Card()
myCard.name = "Cheese, The Destroyer"
myCard.color = "red,black"
myCard.castingCost = "2RB"
myCard.type = "Legendary Creature - Cat"
myCard.rarity = "Rare"
myCard.superType = "Legendary"
myCard.power = 5
myCard.toughness = 6
myCard.illustrator = "Kev Walker"
myCard.setCode = "XXX-XX"
myCard.text = r"Indestructible\n<sym>T</sym>: Draw one BILLION cards"
myCard.image = "cheese.jpg"
myCard.export("cheese-the-destroyer.png")
Clone the repository, navigate to the root folder, and enter pip install -e .[dev]
Features that need added:
- A more genericized Card class that can generate other types of cards (Planeswalker, Saga, etc.)
- Flavor text
- More unit tests! (I'm fairly new to them)
- A way to make pyfakefs a development-only dependency (only including it in the dev section of setup.py makes the unit tests error out upon deployment)