By enabling cards.txt to implement Magic cards it greatly reduces the programming time that is needed to add new cards. Cards.txt supports a number of effects that are commonly used in Magic such as "damage creature or player", "draw N number of cards", "target creature gets X (like haste or unblockable)", or cantrip (Draw 1 card after this card gets done resolving.)
4 UG UG UG
Draw a card for each creature target player controls, then draw a card for each creature another target player controls.
Biomantic Mastery is a complex card yet it can be added easily by adding it to cards.txt. The card is also more readable than the same code that was coded using Java.
Touch of Invisibility
Target creature is unblockable this turn. Draw a card.
Draw a card.
Touch of Invisibility has two effects which adds to the complexity.
You draw three cards and you lose 3 life.
This is another card that combines two different effects.
Thriss, Nantuko Primus
5 G G
Legendary Creature Insect Druid
abTgtPTPump G T:+5/+5
The last line means that Thriss can pump up the target creature's stats by +5/+5. The activated ability taps this creature and costs "G".
By allowing cards.txt to implement cards itself, it makes adding (and creating) Magic cards very easy.
Unfortunately cards.txt doesn't have any error checking, so if you miss around with it and something fails, you probably won't know that it fails. Error checking is very hard.