CardDb: add normalized Names (#4376)

This commit is contained in:
Hans Mackowiak
2023-12-19 18:39:18 +01:00
committed by GitHub
parent c4001825b2
commit ce9ca390f8
202 changed files with 629 additions and 589 deletions

View File

@@ -334,7 +334,7 @@ public class AiCostDecision extends CostDecisionMakerBase {
list = CardLists.getValidCards(list, cost.getType().split(";"), player, source, ability); list = CardLists.getValidCards(list, cost.getType().split(";"), player, source, ability);
if (cost.isSameZone()) { if (cost.isSameZone()) {
// Jotun Grunt // Jötun Grunt
// TODO: improve AI // TODO: improve AI
final FCollectionView<Player> players = game.getPlayers(); final FCollectionView<Player> players = game.getPlayers();
for (Player p : players) { for (Player p : players) {

View File

@@ -47,6 +47,7 @@ public final class CardDb implements ICardDatabase, IDeckGenPool {
private final Map<String, PaperCard> uniqueCardsByName = Maps.newTreeMap(String.CASE_INSENSITIVE_ORDER); private final Map<String, PaperCard> uniqueCardsByName = Maps.newTreeMap(String.CASE_INSENSITIVE_ORDER);
private final Map<String, CardRules> rulesByName; private final Map<String, CardRules> rulesByName;
private final Map<String, ICardFace> facesByName = Maps.newTreeMap(String.CASE_INSENSITIVE_ORDER); private final Map<String, ICardFace> facesByName = Maps.newTreeMap(String.CASE_INSENSITIVE_ORDER);
private final Map<String, String> normalizedNames = Maps.newTreeMap(String.CASE_INSENSITIVE_ORDER);
private static Map<String, String> artPrefs = Maps.newHashMap(); private static Map<String, String> artPrefs = Maps.newHashMap();
private final Map<String, String> alternateName = Maps.newTreeMap(String.CASE_INSENSITIVE_ORDER); private final Map<String, String> alternateName = Maps.newTreeMap(String.CASE_INSENSITIVE_ORDER);
@@ -233,22 +234,34 @@ public final class CardDb implements ICardDatabase, IDeckGenPool {
for (final CardRules rule : rules.values()) { for (final CardRules rule : rules.values()) {
if (filteredCards.contains(rule.getName()) && !exlcudedCardName.equalsIgnoreCase(rule.getName())) if (filteredCards.contains(rule.getName()) && !exlcudedCardName.equalsIgnoreCase(rule.getName()))
continue; continue;
final ICardFace main = rule.getMainPart(); for (ICardFace face : rule.getAllFaces()) {
facesByName.put(main.getName(), main); addFaceToDbNames(face);
if (main.getAltName() != null) {
alternateName.put(main.getAltName(), main.getName());
}
final ICardFace other = rule.getOtherPart();
if (other != null) {
facesByName.put(other.getName(), other);
if (other.getAltName() != null) {
alternateName.put(other.getAltName(), other.getName());
}
} }
} }
setCardArtPreference(cardArtPreference); setCardArtPreference(cardArtPreference);
} }
private void addFaceToDbNames(ICardFace face) {
if (face == null) {
return;
}
final String name = face.getName();
facesByName.put(name, face);
final String normalName = StringUtils.stripAccents(name);
if (!normalName.equals(name)) {
normalizedNames.put(normalName, name);
}
final String altName = face.getAltName();
if (altName != null) {
alternateName.put(altName, face.getName());
final String normalAltName = StringUtils.stripAccents(altName);
if (!normalAltName.equals(altName)) {
normalizedNames.put(normalAltName, altName);
}
}
}
private void addSetCard(CardEdition e, CardInSet cis, CardRules cr) { private void addSetCard(CardEdition e, CardInSet cis, CardRules cr) {
int artIdx = IPaperCard.DEFAULT_ART_INDEX; int artIdx = IPaperCard.DEFAULT_ART_INDEX;
String key = e.getCode() + "/" + cis.name; String key = e.getCode() + "/" + cis.name;
@@ -967,7 +980,9 @@ public final class CardDb implements ICardDatabase, IDeckGenPool {
public String getName(final String cardName) { public String getName(final String cardName) {
return getName(cardName, false); return getName(cardName, false);
} }
public String getName(final String cardName, boolean engine) { public String getName(String cardName, boolean engine) {
// normalize Names first
cardName = normalizedNames.getOrDefault(cardName, cardName);
if (alternateName.containsKey(cardName) && engine) { if (alternateName.containsKey(cardName) && engine) {
// TODO might want to implement GUI option so it always fetches the Within version // TODO might want to implement GUI option so it always fetches the Within version
return alternateName.get(cardName); return alternateName.get(cardName);

View File

@@ -22,6 +22,7 @@ import java.util.*;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import com.google.common.collect.Iterables; import com.google.common.collect.Iterables;
import com.google.common.collect.Maps;
import forge.card.mana.IParserManaCost; import forge.card.mana.IParserManaCost;
import forge.card.mana.ManaCost; import forge.card.mana.ManaCost;
@@ -43,11 +44,8 @@ public final class CardRules implements ICardCharacteristics {
private CardSplitType splitType; private CardSplitType splitType;
private ICardFace mainPart; private ICardFace mainPart;
private ICardFace otherPart; private ICardFace otherPart;
private ICardFace wSpecialize;
private ICardFace uSpecialize; private Map<CardStateName, ICardFace> specializedParts = Maps.newHashMap();
private ICardFace bSpecialize;
private ICardFace rSpecialize;
private ICardFace gSpecialize;
private CardAiHints aiHints; private CardAiHints aiHints;
private ColorSet colorIdentity; private ColorSet colorIdentity;
private ColorSet deckbuildingColors; private ColorSet deckbuildingColors;
@@ -59,11 +57,14 @@ public final class CardRules implements ICardCharacteristics {
splitType = altMode; splitType = altMode;
mainPart = faces[0]; mainPart = faces[0];
otherPart = faces[1]; otherPart = faces[1];
wSpecialize = faces[2];
uSpecialize = faces[3]; if (CardSplitType.Specialize.equals(splitType)) {
bSpecialize = faces[4]; specializedParts.put(CardStateName.SpecializeW, faces[2]);
rSpecialize = faces[5]; specializedParts.put(CardStateName.SpecializeU, faces[3]);
gSpecialize = faces[6]; specializedParts.put(CardStateName.SpecializeB, faces[4]);
specializedParts.put(CardStateName.SpecializeR, faces[5]);
specializedParts.put(CardStateName.SpecializeG, faces[6]);
}
aiHints = cah; aiHints = cah;
meldWith = ""; meldWith = "";
@@ -85,11 +86,7 @@ public final class CardRules implements ICardCharacteristics {
splitType = newRules.splitType; splitType = newRules.splitType;
mainPart = newRules.mainPart; mainPart = newRules.mainPart;
otherPart = newRules.otherPart; otherPart = newRules.otherPart;
wSpecialize = newRules.wSpecialize; specializedParts = Maps.newHashMap(newRules.specializedParts);
uSpecialize = newRules.uSpecialize;
bSpecialize = newRules.bSpecialize;
rSpecialize = newRules.rSpecialize;
gSpecialize = newRules.gSpecialize;
aiHints = newRules.aiHints; aiHints = newRules.aiHints;
colorIdentity = newRules.colorIdentity; colorIdentity = newRules.colorIdentity;
meldWith = newRules.meldWith; meldWith = newRules.meldWith;
@@ -148,20 +145,28 @@ public final class CardRules implements ICardCharacteristics {
return otherPart; return otherPart;
} }
public Map<CardStateName, ICardFace> getSpecializeParts() {
return specializedParts;
}
public Iterable<ICardFace> getAllFaces() {
return Iterables.concat(Arrays.asList(mainPart, otherPart), specializedParts.values());
}
public ICardFace getWSpecialize() { public ICardFace getWSpecialize() {
return wSpecialize; return specializedParts.get(CardStateName.SpecializeW);
} }
public ICardFace getUSpecialize() { public ICardFace getUSpecialize() {
return uSpecialize; return specializedParts.get(CardStateName.SpecializeU);
} }
public ICardFace getBSpecialize() { public ICardFace getBSpecialize() {
return bSpecialize; return specializedParts.get(CardStateName.SpecializeB);
} }
public ICardFace getRSpecialize() { public ICardFace getRSpecialize() {
return rSpecialize; return specializedParts.get(CardStateName.SpecializeR);
} }
public ICardFace getGSpecialize() { public ICardFace getGSpecialize() {
return gSpecialize; return specializedParts.get(CardStateName.SpecializeG);
} }
public String getName() { public String getName() {

View File

@@ -4,6 +4,8 @@ import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Set; import java.util.Set;
import org.apache.commons.lang3.StringUtils;
import com.google.common.base.Predicate; import com.google.common.base.Predicate;
import com.google.common.base.Predicates; import com.google.common.base.Predicates;
@@ -361,23 +363,59 @@ public final class CardRulesPredicates {
private final String operand; private final String operand;
private final LeafString.CardField field; private final LeafString.CardField field;
protected boolean checkName(String name) {
return op(name, this.operand)
|| op(CardTranslation.getTranslatedName(name), this.operand)
|| op(StringUtils.stripAccents(name), this.operand);
}
protected boolean checkOracle(ICardFace face) {
if (face == null) {
return false;
}
if (op(face.getOracleText(), operand) || op(CardTranslation.getTranslatedOracle(face.getName()), operand)) {
return true;
}
return false;
}
protected boolean checkType(ICardFace face) {
if (face == null) {
return false;
}
return (op(CardTranslation.getTranslatedType(face.getName(), face.getType().toString()), operand) || op(face.getType().toString(), operand));
}
@Override @Override
public boolean apply(final CardRules card) { public boolean apply(final CardRules card) {
boolean shouldContain; boolean shouldContain;
switch (this.field) { switch (this.field) {
case NAME: case NAME:
boolean otherName = false; for (ICardFace face : card.getAllFaces()) {
if (card.getOtherPart() != null) { if (face != null && checkName(face.getName())) {
otherName = (op(CardTranslation.getTranslatedName(card.getOtherPart().getName()), this.operand) || op(card.getOtherPart().getName(), this.operand)); return true;
}
} }
return otherName || (op(CardTranslation.getTranslatedName(card.getName()), this.operand) || op(card.getName(), this.operand)); return false;
case SUBTYPE: case SUBTYPE:
shouldContain = (this.getOperator() == StringOp.CONTAINS) || (this.getOperator() == StringOp.EQUALS); shouldContain = (this.getOperator() == StringOp.CONTAINS) || (this.getOperator() == StringOp.EQUALS);
return shouldContain == card.getType().hasSubtype(this.operand); return shouldContain == card.getType().hasSubtype(this.operand);
case ORACLE_TEXT: case ORACLE_TEXT:
return (op(CardTranslation.getTranslatedOracle(card.getName()), operand) || op(card.getOracleText(), this.operand)); for (ICardFace face : card.getAllFaces()) {
if (checkOracle(face)) {
return true;
}
}
return false;
case JOINED_TYPE: case JOINED_TYPE:
return (op(CardTranslation.getTranslatedType(card.getName(), card.getType().toString()), operand) || op(card.getType().toString(), operand)); if ((op(CardTranslation.getTranslatedType(card.getName(), card.getType().toString()), operand) || op(card.getType().toString(), operand))) {
return true;
}
for (ICardFace face : card.getAllFaces()) {
if (checkType(face)) {
return true;
}
}
return false;
case COST: case COST:
final String cost = card.getManaCost().toString(); final String cost = card.getManaCost().toString();
return op(cost, operand); return op(cost, operand);

View File

@@ -414,7 +414,7 @@ public class DeckRecognizer {
public static final String REGRP_CARD = "cardname"; public static final String REGRP_CARD = "cardname";
public static final String REGRP_CARDNO = "count"; public static final String REGRP_CARDNO = "count";
public static final String REX_CARD_NAME = String.format("(\\[)?(?<%s>[a-zA-Z0-9&',\\.:!\\+\\\"\\/\\-\\s]+)(\\])?", REGRP_CARD); public static final String REX_CARD_NAME = String.format("(\\[)?(?<%s>[a-zA-Z0-9âûáóéíúÉàäöüñ&',\\.:!\\+\\\"\\/\\-\\s]+)(\\])?", REGRP_CARD);
public static final String REX_SET_CODE = String.format("(?<%s>[a-zA-Z0-9_]{2,7})", REGRP_SET); public static final String REX_SET_CODE = String.format("(?<%s>[a-zA-Z0-9_]{2,7})", REGRP_SET);
public static final String REX_COLL_NUMBER = String.format("(?<%s>\\*?[0-9A-Z]+\\S?[A-Z]*)", REGRP_COLLNR); public static final String REX_COLL_NUMBER = String.format("(?<%s>\\*?[0-9A-Z]+\\S?[A-Z]*)", REGRP_COLLNR);
public static final String REX_CARD_COUNT = String.format("(?<%s>[\\d]{1,2})(?<mult>x)?", REGRP_CARDNO); public static final String REX_CARD_COUNT = String.format("(?<%s>[\\d]{1,2})(?<mult>x)?", REGRP_CARDNO);

View File

@@ -388,30 +388,12 @@ public class CardFactory {
readCardFace(card, rules.getMainPart()); readCardFace(card, rules.getMainPart());
if (st == CardSplitType.Specialize) { if (st == CardSplitType.Specialize) {
card.addAlternateState(CardStateName.SpecializeW, false); for (Map.Entry<CardStateName, ICardFace> e : rules.getSpecializeParts().entrySet()) {
card.setState(CardStateName.SpecializeW, false); card.addAlternateState(e.getKey(), false);
if (rules.getWSpecialize() != null) { card.setState(e.getKey(), false);
readCardFace(card, rules.getWSpecialize()); if (e.getValue() != null) {
} readCardFace(card, e.getValue());
card.addAlternateState(CardStateName.SpecializeU, false); }
card.setState(CardStateName.SpecializeU, false);
if (rules.getUSpecialize() != null) {
readCardFace(card, rules.getUSpecialize());
}
card.addAlternateState(CardStateName.SpecializeB, false);
card.setState(CardStateName.SpecializeB, false);
if (rules.getBSpecialize() != null) {
readCardFace(card, rules.getBSpecialize());
}
card.addAlternateState(CardStateName.SpecializeR, false);
card.setState(CardStateName.SpecializeR, false);
if (rules.getRSpecialize() != null) {
readCardFace(card, rules.getRSpecialize());
}
card.addAlternateState(CardStateName.SpecializeG, false);
card.setState(CardStateName.SpecializeG, false);
if (rules.getGSpecialize() != null) {
readCardFace(card, rules.getGSpecialize());
} }
} else if (st != CardSplitType.None) { } else if (st != CardSplitType.None) {
card.addAlternateState(st.getChangedStateName(), false); card.addAlternateState(st.getChangedStateName(), false);

View File

@@ -18,7 +18,7 @@ Deck Type=constructed
1 Inundate 1 Inundate
2 Boomerang 2 Boomerang
2 Eye of Nowhere 2 Eye of Nowhere
1 Dandan 1 Dandân
4 Faerie Swarm 4 Faerie Swarm
1 Manta Ray 1 Manta Ray
2 Invisibility 2 Invisibility

View File

@@ -25,7 +25,7 @@ Name=orc_brute
3 Swamp|LTR|3 3 Swamp|LTR|3
3 Swamp|LTR|4 3 Swamp|LTR|4
2 Thrasher Brute|BBD|1 2 Thrasher Brute|BBD|1
2 Ugluk of the White Hand|LTR|1 2 Uglúk of the White Hand|LTR|1
1 Vengeful Warchief|M20|1 1 Vengeful Warchief|M20|1
2 Zurgo Bellstriker|DTK|1 2 Zurgo Bellstriker|DTK|1
2 Zurgo Helmsmasher|KTK|1 2 Zurgo Helmsmasher|KTK|1

View File

@@ -5,7 +5,7 @@ Name=orc_hunter
[Main] [Main]
4 Alchemist's Gift|J21|1 4 Alchemist's Gift|J21|1
1 Assault on Osgiliath|LTR|1 1 Assault on Osgiliath|LTR|1
1 Barad-Dur|LTR|1 1 Barad-r|LTR|1
1 Bleeding Edge|WAR|1 1 Bleeding Edge|WAR|1
4 Blood Crypt|RNA|1 4 Blood Crypt|RNA|1
1 Blood-Chin Fanatic|DTK|1 1 Blood-Chin Fanatic|DTK|1

View File

@@ -5,7 +5,7 @@ Name=orc_warrior
[Main] [Main]
2 Armory Veteran|AFR|1 2 Armory Veteran|AFR|1
1 Assault on Osgiliath|LTR|1 1 Assault on Osgiliath|LTR|1
1 Barad-Dur|LTR|1 1 Barad-r|LTR|1
1 Bleeding Edge|WAR|1 1 Bleeding Edge|WAR|1
4 Blood Crypt|RNA|1 4 Blood Crypt|RNA|1
2 Blood-Chin Fanatic|DTK|1 2 Blood-Chin Fanatic|DTK|1

View File

@@ -24,7 +24,7 @@ Name=tibalt_demon
2 Swamp|J22|2 2 Swamp|J22|2
4 Swamp|J22|3 4 Swamp|J22|3
4 Talisman of Indulgence|SCD|1 4 Talisman of Indulgence|SCD|1
1 The Balrog, Flame of Udun|LTR|1 1 The Balrog, Flame of Udûn|LTR|1
[Sideboard] [Sideboard]
[Planes] [Planes]

View File

@@ -6281,7 +6281,7 @@ Kaya, Ghost Assassin|CN2|2
1 Ringwraiths|LTR 1 Ringwraiths|LTR
1 Gollum, Patient Plotter|LTR 1 Gollum, Patient Plotter|LTR
1 Uruk-hai Berserker|LTR 1 Uruk-hai Berserker|LTR
1 Nazgul|LTR 1 Nazgûl|LTR
1 Gothmog, Morgul Lieutenant|LTR 1 Gothmog, Morgul Lieutenant|LTR
1 Cirith Ungol Patrol|LTR 1 Cirith Ungol Patrol|LTR
1 Nasty End|LTR 1 Nasty End|LTR
@@ -6295,7 +6295,7 @@ Kaya, Ghost Assassin|CN2|2
1 Ringwraiths|LTR 1 Ringwraiths|LTR
1 Gollum, Patient Plotter|LTR 1 Gollum, Patient Plotter|LTR
1 Dunland Crebain|LTR 1 Dunland Crebain|LTR
1 Grima Wormtongue|LTR 1 Gríma Wormtongue|LTR
1 Gothmog, Morgul Lieutenant|LTR 1 Gothmog, Morgul Lieutenant|LTR
1 Cirith Ungol Patrol|LTR 1 Cirith Ungol Patrol|LTR
1 Bitter Downfall|LTR 1 Bitter Downfall|LTR
@@ -6309,7 +6309,7 @@ Kaya, Ghost Assassin|CN2|2
1 Battle-Scarred Goblin|LTR 1 Battle-Scarred Goblin|LTR
1 Erebor Flamesmith|LTR 1 Erebor Flamesmith|LTR
1 Gimli, Counter of Kills|LTR 1 Gimli, Counter of Kills|LTR
1 Grishnakh, Brash Instigator|LTR 1 Grishnákh, Brash Instigator|LTR
1 Olog-hai Crusher|LTR 1 Olog-hai Crusher|LTR
1 Gimli's Fury|LTR 1 Gimli's Fury|LTR
1 Assault on Osgiliath|LTR 1 Assault on Osgiliath|LTR
@@ -6323,7 +6323,7 @@ Kaya, Ghost Assassin|CN2|2
1 Erebor Flamesmith|LTR 1 Erebor Flamesmith|LTR
1 Goblin Fireleaper|LTR 1 Goblin Fireleaper|LTR
1 Gimli, Counter of Kills|LTR 1 Gimli, Counter of Kills|LTR
1 Grishnakh, Brash Instigator|LTR 1 Grishnákh, Brash Instigator|LTR
1 Olog-hai Crusher|LTR 1 Olog-hai Crusher|LTR
1 Smite the Deathless|LTR 1 Smite the Deathless|LTR
1 Rush the Room|LTR 1 Rush the Room|LTR
@@ -6335,7 +6335,7 @@ Kaya, Ghost Assassin|CN2|2
[LTR Journey 1] [LTR Journey 1]
1 Brandywine Farmer|LTR 1 Brandywine Farmer|LTR
1 Dunedain Rangers|LTR 1 Dúnedain Rangers|LTR
1 Elanor Gardner|LTR 1 Elanor Gardner|LTR
1 Meriadoc Brandybuck|LTR 1 Meriadoc Brandybuck|LTR
1 Mirkwood Spider|LTR 1 Mirkwood Spider|LTR
@@ -6393,9 +6393,9 @@ Radagast the Brown|LTR
[LTR Red Inserts] [LTR Red Inserts]
Display of Power|LTR Display of Power|LTR
Eomer, Marshal of Rohan|LTR Éomer, Marshal of Rohan|LTR
Fall of Cair Andros|LTR Fall of Cair Andros|LTR
Gloin, Dwarf Emissary|LTR Glóin, Dwarf Emissary|LTR
Moria Marauder|LTR Moria Marauder|LTR
There and Back Again|LTR There and Back Again|LTR
Hew the Entwood|LTR Hew the Entwood|LTR

View File

@@ -1,4 +1,4 @@
Name:Anduril, Flame of the West Name:Andúril, Flame of the West
ManaCost:3 ManaCost:3
Types:Legendary Artifact Equipment Types:Legendary Artifact Equipment
S:Mode$ Continuous | Affected$ Creature.EquippedBy | AddPower$ 3 | AddToughness$ 1 | AddSVar$ AE | Description$ Equipped creature gets +3/+1. S:Mode$ Continuous | Affected$ Creature.EquippedBy | AddPower$ 3 | AddToughness$ 1 | AddSVar$ AE | Description$ Equipped creature gets +3/+1.

View File

@@ -1,4 +1,4 @@
Name:Anduril, Narsil Reforged Name:Andúril, Narsil Reforged
ManaCost:2 ManaCost:2
Types:Legendary Artifact Equipment Types:Legendary Artifact Equipment
K:Ascend K:Ascend

View File

@@ -1,4 +1,4 @@
Name:Arwen Undomiel Name:Arwen Undómiel
ManaCost:G U ManaCost:G U
Types:Legendary Creature Elf Noble Types:Legendary Creature Elf Noble
PT:2/2 PT:2/2

View File

@@ -1,4 +1,4 @@
Name:Barad-Dur Name:Barad-r
ManaCost:no cost ManaCost:no cost
Types:Legendary Land Types:Legendary Land
K:ETBReplacement:Other:LandTapped K:ETBReplacement:Other:LandTapped
@@ -9,4 +9,4 @@ SVar:Morbid:Count$Morbid.1.0
SVar:X:Count$xPaid SVar:X:Count$xPaid
DeckHints:Type$Legendary & Type$Creature DeckHints:Type$Legendary & Type$Creature
DeckHas:Ability$Token|Counters & Type$Orc DeckHas:Ability$Token|Counters & Type$Orc
Oracle:Barad-Dur enters the battlefield tapped unless you control a legendary creature.\n{T}: Add {B}.\n{X}{X}{B}, {T}: Amass Orcs X. Activate only if a creature died this turn. Oracle:Barad-r enters the battlefield tapped unless you control a legendary creature.\n{T}: Add {B}.\n{X}{X}{B}, {T}: Amass Orcs X. Activate only if a creature died this turn.

View File

@@ -1,4 +1,4 @@
Name:Bartolome del Presidio Name:Bartolomé del Presidio
ManaCost:W B ManaCost:W B
Types:Legendary Creature Vampire Knight Types:Legendary Creature Vampire Knight
PT:2/1 PT:2/1

View File

@@ -1,4 +1,4 @@
Name:Bosium Strip Name:Bösium Strip
ManaCost:3 ManaCost:3
Types:Artifact Types:Artifact
A:AB$ Effect | Cost$ 3 T | ReplacementEffects$ REBosiumStrip | StaticAbilities$ STBosiumStrip | SpellDescription$ Until end of turn, you may cast instant and sorcery spells from the top of your graveyard. If a spell cast this way would be put into a graveyard this turn, exile it instead. A:AB$ Effect | Cost$ 3 T | ReplacementEffects$ REBosiumStrip | StaticAbilities$ STBosiumStrip | SpellDescription$ Until end of turn, you may cast instant and sorcery spells from the top of your graveyard. If a spell cast this way would be put into a graveyard this turn, exile it instead.

View File

@@ -10,4 +10,4 @@ SVar:DBRepeatDraw:DB$ RepeatEach | RepeatPlayers$ Player | RepeatSubAbility$ DBD
SVar:DBDraw:DB$ Draw | Defined$ Remembered | NumCards$ Votes SVar:DBDraw:DB$ Draw | Defined$ Remembered | NumCards$ Votes
SVar:DBRepeatPut:DB$ RepeatEach | RepeatPlayers$ Player | RepeatSubAbility$ DBChangeZone | AmountFromVotes$ True | SubAbility$ DBChangeZone SVar:DBRepeatPut:DB$ RepeatEach | RepeatPlayers$ Player | RepeatSubAbility$ DBChangeZone | AmountFromVotes$ True | SubAbility$ DBChangeZone
SVar:DBChangeZone:DB$ ChangeZone | DefinedPlayer$ Remembered | ConditionCheckSVar$ Votes | ConditionSVarCompare$ EQ0 | ChangeType$ Permanent | Origin$ Hand | Destination$ Battlefield SVar:DBChangeZone:DB$ ChangeZone | DefinedPlayer$ Remembered | ConditionCheckSVar$ Votes | ConditionSVarCompare$ EQ0 | ChangeType$ Permanent | Origin$ Hand | Destination$ Battlefield
Oracle:Vigilance\nSecret council — Whenever Cirdan the Shipwright enters the battlefield or attacks, each player secretly votes for a player, then those votes are revealed. Each player draws a card for each vote they received. Each player who received no votes may put a permanent card from their hand onto the battlefield. Oracle:Vigilance\nSecret council — Whenever Círdan the Shipwright enters the battlefield or attacks, each player secretly votes for a player, then those votes are revealed. Each player draws a card for each vote they received. Each player who received no votes may put a permanent card from their hand onto the battlefield.

View File

@@ -1,4 +1,4 @@
Name:Dandan Name:Dandân
ManaCost:U U ManaCost:U U
Types:Creature Fish Types:Creature Fish
PT:4/1 PT:4/1

View File

@@ -1,4 +1,4 @@
Name:Deja Vu Name:Déjà Vu
ManaCost:2 U ManaCost:2 U
Types:Sorcery Types:Sorcery
A:SP$ ChangeZone | Cost$ 2 U | Origin$ Graveyard | Destination$ Hand | TgtPrompt$ Choose target sorcery card in your graveyard | ValidTgts$ Sorcery.YouCtrl | SpellDescription$ Return target sorcery card from your graveyard to your hand. A:SP$ ChangeZone | Cost$ 2 U | Origin$ Graveyard | Destination$ Hand | TgtPrompt$ Choose target sorcery card in your graveyard | ValidTgts$ Sorcery.YouCtrl | SpellDescription$ Return target sorcery card from your graveyard to your hand.

View File

@@ -1,4 +1,4 @@
Name:Dunedain Blade Name:Dúnedain Blade
ManaCost:1 W ManaCost:1 W
Types:Artifact Equipment Types:Artifact Equipment
K:Equip:1:Human.YouCtrl:Human K:Equip:1:Human.YouCtrl:Human

View File

@@ -1,7 +1,7 @@
Name:Dunedain Rangers Name:Dúnedain Rangers
ManaCost:3 G ManaCost:3 G
Types:Creature Human Ranger Types:Creature Human Ranger
PT:4/4 PT:4/4
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Land.YouCtrl | TriggerZones$ Battlefield | IsPresent$ Card.YouCtrl+IsRingbearer | PresentCompare$ EQ0 | Execute$ TrigTempt | TriggerDescription$ Landfall — Whenever a land enters the battlefield under your control, if you don't control a Ring-bearer, the Ring tempts you. T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Land.YouCtrl | TriggerZones$ Battlefield | IsPresent$ Card.YouCtrl+IsRingbearer | PresentCompare$ EQ0 | Execute$ TrigTempt | TriggerDescription$ Landfall — Whenever a land enters the battlefield under your control, if you don't control a Ring-bearer, the Ring tempts you.
SVar:TrigTempt:DB$ RingTemptsYou SVar:TrigTempt:DB$ RingTemptsYou
Oracle:Landfall — Whenever a land enters the battlefield under your control, if you don't control a Ring-bearer, the Ring tempts you. Oracle:Landfall — Whenever a land enters the battlefield under your control, if you don't control a Ring-bearer, the Ring tempts you.

View File

@@ -1,4 +1,4 @@
Name:Eomer, King of Rohan Name:Éomer, King of Rohan
ManaCost:3 R W ManaCost:3 R W
Types:Legendary Creature Human Noble Types:Legendary Creature Human Noble
PT:2/2 PT:2/2
@@ -11,4 +11,4 @@ SVar:DBPower:DB$ DealDamage | ValidTgts$ Any | NumDmg$ Y
SVar:Y:Count$CardPower SVar:Y:Count$CardPower
DeckNeeds:Type$Human DeckNeeds:Type$Human
DeckHas:Ability$Counters DeckHas:Ability$Counters
Oracle:Double strike\nEomer, King of Rohan enters the battlefield with a +1/+1 counter on it for each other Human you control.\nWhen Eomer enters the battlefield, target player becomes the monarch. Éomer deals damage equal to its power to any target. Oracle:Double strike\nÉomer, King of Rohan enters the battlefield with a +1/+1 counter on it for each other Human you control.\nWhen Éomer enters the battlefield, target player becomes the monarch. Éomer deals damage equal to its power to any target.

View File

@@ -1,4 +1,4 @@
Name:Eomer, Marshal of Rohan Name:Éomer, Marshal of Rohan
ManaCost:2 R R ManaCost:2 R R
Types:Legendary Creature Human Knight Types:Legendary Creature Human Knight
PT:4/4 PT:4/4

View File

@@ -1,4 +1,4 @@
Name:Eomer of the Riddermark Name:Éomer of the Riddermark
ManaCost:4 R ManaCost:4 R
Types:Legendary Creature Human Knight Types:Legendary Creature Human Knight
PT:5/4 PT:5/4
@@ -7,4 +7,4 @@ T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigToken | IsPresent$ Creatur
SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ w_1_1_human_soldier | TokenOwner$ You SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ w_1_1_human_soldier | TokenOwner$ You
DeckHas:Ability$Token & Type$Soldier DeckHas:Ability$Token & Type$Soldier
SVar:HasAttackEffect:TRUE SVar:HasAttackEffect:TRUE
Oracle:Haste\nWhenever Eomer of the Riddermark attacks, if you control a creature with the greatest power among creatures on the battlefield, create a 1/1 white Human Soldier creature token. Oracle:Haste\nWhenever Éomer of the Riddermark attacks, if you control a creature with the greatest power among creatures on the battlefield, create a 1/1 white Human Soldier creature token.

View File

@@ -1,4 +1,4 @@
Name:Eowyn, Fearless Knight Name:Éowyn, Fearless Knight
ManaCost:2 R W ManaCost:2 R W
Types:Legendary Creature Human Knight Types:Legendary Creature Human Knight
PT:3/4 PT:3/4
@@ -8,4 +8,4 @@ SVar:TrigExile:DB$ ChangeZone | Origin$ Battlefield | Destination$ Exile | Valid
SVar:DBProtection:DB$ ProtectionAll | ValidCards$ Creature.YouCtrl+Legendary | Gains$ TargetedCardColor SVar:DBProtection:DB$ ProtectionAll | ValidCards$ Creature.YouCtrl+Legendary | Gains$ TargetedCardColor
SVar:X:Count$CardPower SVar:X:Count$CardPower
DeckHints:Type$Legendary DeckHints:Type$Legendary
Oracle:Haste\nWhen Eowyn, Fearless Knight enters the battlefield, exile target creature an opponent controls with greater power. Legendary creatures you control gain protection from each of that creature's colors until end of turn. Oracle:Haste\nWhen Éowyn, Fearless Knight enters the battlefield, exile target creature an opponent controls with greater power. Legendary creatures you control gain protection from each of that creature's colors until end of turn.

View File

@@ -1,4 +1,4 @@
Name:Eowyn, Lady of Rohan Name:Éowyn, Lady of Rohan
ManaCost:2 W ManaCost:2 W
Types:Legendary Creature Human Noble Types:Legendary Creature Human Noble
PT:2/4 PT:2/4

View File

@@ -1,4 +1,4 @@
Name:Eowyn, Shieldmaiden Name:Éowyn, Shieldmaiden
ManaCost:2 U R W ManaCost:2 U R W
Types:Legendary Creature Human Knight Types:Legendary Creature Human Knight
PT:5/4 PT:5/4

View File

@@ -1,9 +1,9 @@
Name:Galadriel of Lothlorien Name:Galadriel of Lothlórien
ManaCost:1 G U ManaCost:1 G U
Types:Legendary Creature Elf Noble Types:Legendary Creature Elf Noble
PT:3/3 PT:3/3
T:Mode$ RingTemptsYou | ValidCard$ Creature.YouCtrl+Other | TriggerZones$ Battlefield | Execute$ TrigScry | TriggerDescription$ Whenever the Ring tempts you, if you chose a creature other than CARDNAME as your Ring-bearer, scry 3. T:Mode$ RingTemptsYou | ValidCard$ Creature.YouCtrl+Other | TriggerZones$ Battlefield | Execute$ TrigScry | TriggerDescription$ Whenever the Ring tempts you, if you chose a creature other than CARDNAME as your Ring-bearer, scry 3.
SVar:TrigScry:DB$ Scry | ScryNum$ 3 SVar:TrigScry:DB$ Scry | ScryNum$ 3
T:Mode$ Scry | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ DBReveal | TriggerDescription$ Whenever you scry, you may reveal the top card of your library. If a land card is revealed this way, put it onto the battlefield tapped. T:Mode$ Scry | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ DBReveal | TriggerDescription$ Whenever you scry, you may reveal the top card of your library. If a land card is revealed this way, put it onto the battlefield tapped.
SVar:DBReveal:DB$ Dig | DigNum$ 1 | Reveal$ True | Optional$ True | ChangeNum$ 1 | ChangeValid$ Land | DestinationZone$ Battlefield | Tapped$ True | DestinationZone2$ Library | LibraryPosition2$ 0 SVar:DBReveal:DB$ Dig | DigNum$ 1 | Reveal$ True | Optional$ True | ChangeNum$ 1 | ChangeValid$ Land | DestinationZone$ Battlefield | Tapped$ True | DestinationZone2$ Library | LibraryPosition2$ 0
Oracle:Whenever the Ring tempts you, if you chose a creature other than Galadriel of Lothlorien as your Ring-bearer, scry 3.\nWhenever you scry, you may reveal the top card of your library. If a land card is revealed this way, put it onto the battlefield tapped. Oracle:Whenever the Ring tempts you, if you chose a creature other than Galadriel of Lothlórien as your Ring-bearer, scry 3.\nWhenever you scry, you may reveal the top card of your library. If a land card is revealed this way, put it onto the battlefield tapped.

View File

@@ -1,4 +1,4 @@
Name:Ghazban Ogre Name:Ghazbán Ogre
ManaCost:G ManaCost:G
Types:Creature Ogre Types:Creature Ogre
PT:2/2 PT:2/2

View File

@@ -1,4 +1,4 @@
Name:Gilraen, Dunedain Protector Name:Gilraen, Dúnedain Protector
ManaCost:2 W ManaCost:2 W
Types:Legendary Creature Human Noble Types:Legendary Creature Human Noble
PT:2/3 PT:2/3

View File

@@ -1,4 +1,4 @@
Name:Gloin, Dwarf Emissary Name:Glóin, Dwarf Emissary
ManaCost:2 R ManaCost:2 R
Types:Legendary Creature Dwarf Advisor Types:Legendary Creature Dwarf Advisor
PT:3/3 PT:3/3

View File

@@ -1,4 +1,4 @@
Name:Grima, Saruman's Footman Name:Gríma, Saruman's Footman
ManaCost:2 U B ManaCost:2 U B
Types:Legendary Creature Human Advisor Types:Legendary Creature Human Advisor
PT:1/4 PT:1/4
@@ -8,4 +8,4 @@ SVar:TrigDigUntil:DB$ DigUntil | Defined$ TriggeredTarget | Valid$ Instant,Sorce
SVar:DBPlay:DB$ Play | ValidZone$ Exile | Valid$ Instant.IsRemembered,Sorcery.IsRemembered | ValidSA$ Spell | WithoutManaCost$ True | Optional$ True | SubAbility$ DBRestRandomOrder SVar:DBPlay:DB$ Play | ValidZone$ Exile | Valid$ Instant.IsRemembered,Sorcery.IsRemembered | ValidSA$ Spell | WithoutManaCost$ True | Optional$ True | SubAbility$ DBRestRandomOrder
SVar:DBRestRandomOrder:DB$ ChangeZoneAll | ChangeType$ Card.IsImprinted,Card.IsRemembered | Origin$ Exile | Destination$ Library | LibraryPosition$ -1 | RandomOrder$ True | SubAbility$ DBCleanup SVar:DBRestRandomOrder:DB$ ChangeZoneAll | ChangeType$ Card.IsImprinted,Card.IsRemembered | Origin$ Exile | Destination$ Library | LibraryPosition$ -1 | RandomOrder$ True | SubAbility$ DBCleanup
SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True | ClearImprinted$ True SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True | ClearImprinted$ True
Oracle:Grima, Saruman's Footman can't be blocked.\nWhenever Grima deals combat damage to a player, that player exiles cards from the top of their library until they exile an instant or sorcery card. You may cast that card without paying its mana cost. Then that player puts the exiled cards that weren't cast this way on the bottom of their library in a random order. Oracle:Gríma, Saruman's Footman can't be blocked.\nWhenever Grima deals combat damage to a player, that player exiles cards from the top of their library until they exile an instant or sorcery card. You may cast that card without paying its mana cost. Then that player puts the exiled cards that weren't cast this way on the bottom of their library in a random order.

View File

@@ -1,4 +1,4 @@
Name:Grishnakh, Brash Instigator Name:Grishnákh, Brash Instigator
ManaCost:2 R ManaCost:2 R
Types:Legendary Creature Goblin Soldier Types:Legendary Creature Goblin Soldier
PT:1/1 PT:1/1
@@ -10,4 +10,4 @@ SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True
SVar:X:TriggerRemembered$CardPower SVar:X:TriggerRemembered$CardPower
DeckHas:Ability$Token|Counters & Type$Orc|Army DeckHas:Ability$Token|Counters & Type$Orc|Army
DeckHints:Type$Token DeckHints:Type$Token
Oracle:When Grishnakh, Brash Instigator enters the battlefield, amass Orcs 2. When you do, until end of turn, gain control of target nonlegendary creature an opponent controls with power less than or equal to the amassed Army's power. Untap that creature. It gains haste until end of turn. Oracle:When Grishnákh, Brash Instigator enters the battlefield, amass Orcs 2. When you do, until end of turn, gain control of target nonlegendary creature an opponent controls with power less than or equal to the amassed Army's power. Untap that creature. It gains haste until end of turn.

View File

@@ -1,4 +1,4 @@
Name:Haldir, Lorien Lieutenant Name:Haldir, Lórien Lieutenant
ManaCost:X G ManaCost:X G
Types:Legendary Creature Elf Soldier Types:Legendary Creature Elf Soldier
PT:0/0 PT:0/0
@@ -8,4 +8,4 @@ SVar:X:Count$xPaid
A:AB$ PumpAll | Cost$ 5 G | ValidCards$ Creature.Elf+StrictlyOther+YouCtrl | NumAtt$ Y | NumDef$ Y | KW$ Vigilance | SpellDescription$ Until end of turn, other Elves you control gain vigilance and get +1/+1 for each +1/+1 counter on NICKNAME. A:AB$ PumpAll | Cost$ 5 G | ValidCards$ Creature.Elf+StrictlyOther+YouCtrl | NumAtt$ Y | NumDef$ Y | KW$ Vigilance | SpellDescription$ Until end of turn, other Elves you control gain vigilance and get +1/+1 for each +1/+1 counter on NICKNAME.
SVar:Y:Count$CardCounters.P1P1 SVar:Y:Count$CardCounters.P1P1
DeckHas:Ability$Counters DeckHas:Ability$Counters
Oracle:Haldir, Lorien Lieutenant enters the battlefield with X +1/+1 counters on it.\nVigilance\n{5}{G}: Until end of turn, other Elves you control gain vigilance and get +1/+1 for each +1/+1 counter on Haldir. Oracle:Haldir, Lórien Lieutenant enters the battlefield with X +1/+1 counters on it.\nVigilance\n{5}{G}: Until end of turn, other Elves you control gain vigilance and get +1/+1 for each +1/+1 counter on Haldir.

View File

@@ -1,4 +1,4 @@
Name:Jotun Grunt Name:Jötun Grunt
ManaCost:1 W ManaCost:1 W
Types:Creature Giant Soldier Types:Creature Giant Soldier
PT:4/4 PT:4/4

View File

@@ -1,4 +1,4 @@
Name:Jotun Owl Keeper Name:Jötun Owl Keeper
ManaCost:2 W ManaCost:2 W
Types:Creature Giant Types:Creature Giant
PT:3/3 PT:3/3

View File

@@ -1,4 +1,4 @@
Name:Junun Efreet Name:Junún Efreet
ManaCost:1 B B ManaCost:1 B B
Types:Creature Efreet Types:Creature Efreet
PT:3/3 PT:3/3

View File

@@ -1,4 +1,4 @@
Name:Juzam Djinn Name:Juzám Djinn
ManaCost:2 B B ManaCost:2 B B
Types:Creature Djinn Types:Creature Djinn
PT:5/5 PT:5/5

View File

@@ -1,4 +1,4 @@
Name:Khabal Ghoul Name:Khabál Ghoul
ManaCost:2 B ManaCost:2 B
Types:Creature Zombie Types:Creature Zombie
PT:1/1 PT:1/1

View File

@@ -1,4 +1,4 @@
Name:Kharn the Betrayer Name:Khârn the Betrayer
ManaCost:3 R ManaCost:3 R
Types:Legendary Creature Astartes Berserker Types:Legendary Creature Astartes Berserker
PT:5/1 PT:5/1
@@ -11,4 +11,4 @@ R:Event$ DamageDone | ActiveZones$ Battlefield | ValidTarget$ Card.Self | Replac
SVar:ChoosePlayer:DB$ ChoosePlayer | Choices$ Opponent | ChoiceTitle$ Choose an opponent | SubAbility$ DBGainControl SVar:ChoosePlayer:DB$ ChoosePlayer | Choices$ Opponent | ChoiceTitle$ Choose an opponent | SubAbility$ DBGainControl
SVar:DBGainControl:DB$ GainControl | NewController$ ChosenPlayer | SubAbility$ DBClearChosen SVar:DBGainControl:DB$ GainControl | NewController$ ChosenPlayer | SubAbility$ DBClearChosen
SVar:DBClearChosen:DB$ Cleanup | ClearChosenPlayer$ True SVar:DBClearChosen:DB$ Cleanup | ClearChosenPlayer$ True
Oracle:Berzerker — Kharn the Betrayer attacks or blocks each combat if able.\nSigil of Corruption — When you lose control of Kharn the Betrayer, draw two cards.\nThe Betrayer — If damage would be dealt to Kharn the Betrayer, prevent that damage and an opponent of your choice gains control of it. Oracle:Berzerker — Khârn the Betrayer attacks or blocks each combat if able.\nSigil of Corruption — When you lose control of Khârn the Betrayer, draw two cards.\nThe Betrayer — If damage would be dealt to Khârn the Betrayer, prevent that damage and an opponent of your choice gains control of it.

View File

@@ -1,4 +1,4 @@
Name:Legions of Lim-Dul Name:Legions of Lim-Dûl
ManaCost:1 B B ManaCost:1 B B
Types:Creature Zombie Types:Creature Zombie
PT:2/3 PT:2/3

View File

@@ -1,4 +1,4 @@
Name:Lim-Dul the Necromancer Name:Lim-Dûl the Necromancer
ManaCost:5 B B ManaCost:5 B B
Types:Legendary Creature Human Wizard Types:Legendary Creature Human Wizard
PT:4/4 PT:4/4

View File

@@ -1,4 +1,4 @@
Name:Lim-Dul's Cohort Name:Lim-Dûl's Cohort
ManaCost:1 B B ManaCost:1 B B
Types:Creature Zombie Types:Creature Zombie
PT:2/3 PT:2/3

View File

@@ -1,4 +1,4 @@
Name:Lim-Dul's Hex Name:Lim-Dûl's Hex
ManaCost:1 B ManaCost:1 B
Types:Enchantment Types:Enchantment
T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigRepeat | TriggerDescription$ At the beginning of your upkeep, for each player, CARDNAME deals 1 damage to that player unless they pay {B} or {3}. T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigRepeat | TriggerDescription$ At the beginning of your upkeep, for each player, CARDNAME deals 1 damage to that player unless they pay {B} or {3}.

View File

@@ -1,4 +1,4 @@
Name:Lim-Dul's High Guard Name:Lim-Dûl's High Guard
ManaCost:1 B B ManaCost:1 B B
Types:Creature Skeleton Types:Creature Skeleton
PT:2/1 PT:2/1

View File

@@ -1,4 +1,4 @@
Name:Lim-Dul's Paladin Name:Lim-Dûl's Paladin
ManaCost:2 B R ManaCost:2 B R
Types:Creature Human Knight Types:Creature Human Knight
PT:0/3 PT:0/3

View File

@@ -1,4 +1,4 @@
Name:Lim-Dul's Vault Name:Lim-Dûl's Vault
ManaCost:U B ManaCost:U B
Types:Instant Types:Instant
A:SP$ PeekAndReveal | PeekAmount$ 5 | NoReveal$ True | SubAbility$ DBRepeat | RememberPeeked$ True | StackDescription$ SpellDescription | SpellDescription$ Look at the top five cards of your library. As many times as you choose, you may pay 1 life, put those cards on the bottom of your library in any order, then look at the top five cards of your library. Then shuffle and put the last cards you looked at this way on top in any order. A:SP$ PeekAndReveal | PeekAmount$ 5 | NoReveal$ True | SubAbility$ DBRepeat | RememberPeeked$ True | StackDescription$ SpellDescription | SpellDescription$ Look at the top five cards of your library. As many times as you choose, you may pay 1 life, put those cards on the bottom of your library in any order, then look at the top five cards of your library. Then shuffle and put the last cards you looked at this way on top in any order.

View File

@@ -1,4 +1,4 @@
Name:Lord of the Nazgul Name:Lord of the Nazgûl
ManaCost:3 U B ManaCost:3 U B
Types:Legendary Creature Wraith Noble Types:Legendary Creature Wraith Noble
PT:4/4 PT:4/4

View File

@@ -1,4 +1,4 @@
Name:Lorien Revealed Name:Lórien Revealed
ManaCost:3 U U ManaCost:3 U U
Types:Sorcery Types:Sorcery
A:SP$ Draw | NumCards$ 3 | SpellDescription$ Draw three cards. A:SP$ Draw | NumCards$ 3 | SpellDescription$ Draw three cards.

View File

@@ -1,4 +1,4 @@
Name:Lothlorien Blade Name:Lothlórien Blade
ManaCost:3 ManaCost:3
Types:Artifact Equipment Types:Artifact Equipment
T:Mode$ Attacks | ValidCard$ Card.EquippedBy | TriggerZones$ Battlefield | Execute$ TrigExchangeDamage | TriggerDescription$ Whenever equipped creature attacks, it deals damage equal to its power to target creature defending player controls. T:Mode$ Attacks | ValidCard$ Card.EquippedBy | TriggerZones$ Battlefield | Execute$ TrigExchangeDamage | TriggerDescription$ Whenever equipped creature attacks, it deals damage equal to its power to target creature defending player controls.

View File

@@ -1,8 +1,8 @@
Name:Lothlorien Lookout Name:Lothlórien Lookout
ManaCost:1 G ManaCost:1 G
Types:Creature Elf Scout Types:Creature Elf Scout
PT:1/3 PT:1/3
T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigScry | TriggerDescription$ Whenever CARDNAME attacks, scry 1. T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigScry | TriggerDescription$ Whenever CARDNAME attacks, scry 1.
SVar:TrigScry:DB$ Scry | ScryNum$ 1 SVar:TrigScry:DB$ Scry | ScryNum$ 1
SVar:HasAttackEffect:TRUE SVar:HasAttackEffect:TRUE
Oracle:Whenever Lothlorien Lookout attacks, scry 1. Oracle:Whenever Lothlórien Lookout attacks, scry 1.

View File

@@ -1,11 +1,11 @@
Name:Marton Stromgald Name:Márton Stromgald
ManaCost:2 R R ManaCost:2 R R
Types:Legendary Creature Human Knight Types:Legendary Creature Human Knight
PT:1/1 PT:1/1
T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigPumpAttack | TriggerDescription$ Whenever Márton Stromgald attacks, other attacking creatures get +1/+1 until end of turn for each attacking creature other than Márton Stromgald. T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | Execute$ TrigPumpAttack | TriggerDescription$ Whenever CARDNAME attacks, other attacking creatures get +1/+1 until end of turn for each attacking creature other than CARDNAME.
SVar:TrigPumpAttack:DB$ PumpAll | ValidCards$ Creature.attacking+Other | NumAtt$ X | NumDef$ X SVar:TrigPumpAttack:DB$ PumpAll | ValidCards$ Creature.attacking+Other | NumAtt$ X | NumDef$ X
SVar:X:Count$Valid Creature.attacking+Other SVar:X:Count$Valid Creature.attacking+Other
T:Mode$ Blocks | ValidCard$ Card.Self | Triggerzones$ Battlefield | Execute$ TrigPumpBlock | TriggerDescription$ Whenever Márton Stromgald blocks, other blocking creatures get +1/+1 until end of turn for each blocking creature other than Márton Stromgald. T:Mode$ Blocks | ValidCard$ Card.Self | Triggerzones$ Battlefield | Execute$ TrigPumpBlock | TriggerDescription$ Whenever CARDNAME blocks, other blocking creatures get +1/+1 until end of turn for each blocking creature other than CARDNAME.
SVar:TrigPumpBlock:DB$ PumpAll | ValidCards$ Creature.blocking+Other | NumAtt$ Y | NumDef$ Y SVar:TrigPumpBlock:DB$ PumpAll | ValidCards$ Creature.blocking+Other | NumAtt$ Y | NumDef$ Y
SVar:Y:Count$Valid Creature.blocking+Other SVar:Y:Count$Valid Creature.blocking+Other
Oracle:Whenever Márton Stromgald attacks, other attacking creatures get +1/+1 until end of turn for each attacking creature other than Márton Stromgald.\nWhenever Márton Stromgald blocks, other blocking creatures get +1/+1 until end of turn for each blocking creature other than Márton Stromgald. Oracle:Whenever Márton Stromgald attacks, other attacking creatures get +1/+1 until end of turn for each attacking creature other than Márton Stromgald.\nWhenever Márton Stromgald blocks, other blocking creatures get +1/+1 until end of turn for each blocking creature other than Márton Stromgald.

View File

@@ -1,4 +1,4 @@
Name:Mauhur, Uruk-hai Captain Name:Mauhúr, Uruk-hai Captain
ManaCost:B R ManaCost:B R
Types:Legendary Creature Orc Soldier Types:Legendary Creature Orc Soldier
PT:2/2 PT:2/2

View File

@@ -1,4 +1,4 @@
Name:Mists of Lorien Name:Mists of Lórien
ManaCost:2 U ManaCost:2 U
Types:Sorcery Types:Sorcery
K:Replicate:U K:Replicate:U

View File

@@ -1,13 +1,13 @@
Name:Nazgul Name:Nazgûl
ManaCost:2 B ManaCost:2 B
Types:Creature Wraith Knight Types:Creature Wraith Knight
PT:1/2 PT:1/2
K:Deathtouch K:Deathtouch
K:DeckLimit:9:A deck can have up to nine cards named CARDNAME. K:DeckLimit:9:A deck can have up to nine cards named CARDNAME.
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigTempt | TriggerDescription$ When CARDNAME enters the battlefield, the Ring tempts you. T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigTempt | TriggerDescription$ When CARDNAME enters the battlefield, the Ring tempts you.
SVar:TrigTempt:DB$ RingTemptsYou SVar:TrigTempt:DB$ RingTemptsYou
T:Mode$ RingTemptsYou | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigCounters | TriggerDescription$ Whenever the Ring tempts you, put a +1/+1 counter on each Wraith you control. T:Mode$ RingTemptsYou | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigCounters | TriggerDescription$ Whenever the Ring tempts you, put a +1/+1 counter on each Wraith you control.
SVar:TrigCounters:DB$ PutCounterAll | ValidCards$ Creature.Wraith+YouCtrl | CounterType$ P1P1 | CounterNum$ 1 SVar:TrigCounters:DB$ PutCounterAll | ValidCards$ Creature.Wraith+YouCtrl | CounterType$ P1P1 | CounterNum$ 1
DeckNeeds:Name$Nazgul DeckNeeds:Name$Nazgûl
DeckHas:Ability$Token DeckHas:Ability$Token
Oracle:Deathtouch\nWhen Nazgul enters the battlefield, the Ring tempts you.\nWhenever the Ring tempts you, put a +1/+1 counter on each Wraith you control.\nA deck can have up to nine cards named Nazgul. Oracle:Deathtouch\nWhen Nazgûl enters the battlefield, the Ring tempts you.\nWhenever the Ring tempts you, put a +1/+1 counter on each Wraith you control.\nA deck can have up to nine cards named Nazgûl.

View File

@@ -1,4 +1,4 @@
Name:Nazgul Battle-Mace Name:Nazgûl Battle-Mace
ManaCost:5 ManaCost:5
Types:Artifact Equipment Types:Artifact Equipment
K:Equip:3 K:Equip:3

View File

@@ -1,4 +1,4 @@
Name:Oath of Lim-Dul Name:Oath of Lim-Dûl
ManaCost:3 B ManaCost:3 B
Types:Enchantment Types:Enchantment
T:Mode$ LifeLost | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigLimDulSac | TriggerDescription$ Whenever you lose life, for each 1 life you lost, sacrifice a permanent other than Oath of Lim-Dûl unless you discard a card. (Damage dealt to you causes you to lose life.) T:Mode$ LifeLost | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigLimDulSac | TriggerDescription$ Whenever you lose life, for each 1 life you lost, sacrifice a permanent other than Oath of Lim-Dûl unless you discard a card. (Damage dealt to you causes you to lose life.)

View File

@@ -1,4 +1,4 @@
Name:Olorin's Searing Light Name:Olórin's Searing Light
ManaCost:2 R W ManaCost:2 R W
Types:Instant Types:Instant
A:SP$ RepeatEach | RepeatPlayers$ Player.Opponent | RepeatSubAbility$ DBChooseCard | SubAbility$ DBExile | SpellDescription$ Each opponent exiles a creature with the greatest power among creatures that player controls.\nSpell mastery — If there are two or more instant and/or sorcery cards in your graveyard, CARDNAME deals damage to each opponent equal to the power of the creature they exiled. A:SP$ RepeatEach | RepeatPlayers$ Player.Opponent | RepeatSubAbility$ DBChooseCard | SubAbility$ DBExile | SpellDescription$ Each opponent exiles a creature with the greatest power among creatures that player controls.\nSpell mastery — If there are two or more instant and/or sorcery cards in your graveyard, CARDNAME deals damage to each opponent equal to the power of the creature they exiled.
@@ -9,4 +9,4 @@ SVar:DBDamage:DB$ DealDamage | Defined$ Player.IsRemembered | NumDmg$ X
SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True
SVar:X:RememberedLKI$FilterControlledByRemembered_CardPower SVar:X:RememberedLKI$FilterControlledByRemembered_CardPower
DeckHints:Ability$Graveyard|Mill DeckHints:Ability$Graveyard|Mill
Oracle:Each opponent exiles a creature with the greatest power among creatures that player controls.\nSpell mastery — If there are two or more instant and/or sorcery cards in your graveyard, Olorin's Searing Light deals damage to each opponent equal to the power of the creature they exiled. Oracle:Each opponent exiles a creature with the greatest power among creatures that player controls.\nSpell mastery — If there are two or more instant and/or sorcery cards in your graveyard, Olórin's Searing Light deals damage to each opponent equal to the power of the creature they exiled.

View File

@@ -12,4 +12,4 @@ SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True
SVar:X:Count$CardCounters.INFLUENCE SVar:X:Count$CardCounters.INFLUENCE
SVar:Y:Remembered$SumCMC SVar:Y:Remembered$SumCMC
DeckHas:Ability$Counters|Mill DeckHas:Ability$Counters|Mill
Oracle:At the beginning of your end step, put an influence counter on Palantir of Orthanc and scry 2. Then target opponent may have you draw a card. If that player doesn't, you mill X cards, where X is the number of influence counters on Palantir of Orthanc, and that player loses life equal to the total mana value of those cards. Oracle:At the beginning of your end step, put an influence counter on Palantír of Orthanc and scry 2. Then target opponent may have you draw a card. If that player doesn't, you mill X cards, where X is the number of influence counters on Palantír of Orthanc, and that player loses life equal to the total mana value of those cards.

View File

@@ -1,4 +1,4 @@
Name:Rasaad, Monk of Selune Name:Rasaad, Monk of Selûne
ManaCost:2 W ManaCost:2 W
Types:Legendary Creature Human Monk Types:Legendary Creature Human Monk
PT:2/2 PT:2/2
@@ -10,7 +10,7 @@ SVar:DBForget:DB$ Pump | ForgetObjects$ TriggeredCard
T:Mode$ ChangesZone | Origin$ Battlefield | ValidCard$ Card.Self | Destination$ Any | Execute$ DBCleanup | Static$ True T:Mode$ ChangesZone | Origin$ Battlefield | ValidCard$ Card.Self | Destination$ Any | Execute$ DBCleanup | Static$ True
SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True
AlternateMode:Specialize AlternateMode:Specialize
Oracle:Specialize {5}\nWhen Rasaad, Monk of Selune enters the battlefield, exile target creature an opponent controls until this creature leaves the battlefield. Oracle:Specialize {5}\nWhen Rasaad, Monk of Selûne enters the battlefield, exile target creature an opponent controls until this creature leaves the battlefield.
SPECIALIZE:WHITE SPECIALIZE:WHITE

View File

@@ -1,7 +1,7 @@
Name:Ring of Ma'ruf Name:Ring of Ma'rûf
ManaCost:5 ManaCost:5
Types:Artifact Types:Artifact
A:AB$ Effect | Cost$ 5 T Exile<1/CARDNAME> | Name$ Ring of Ma'ruf Effect | ReplacementEffects$ DrawReplace | SpellDescription$ The next time you would draw a card this turn, instead put a card you own from outside the game into your hand. A:AB$ Effect | Cost$ 5 T Exile<1/CARDNAME> | Name$ Ring of Ma'rûf Effect | ReplacementEffects$ DrawReplace | SpellDescription$ The next time you would draw a card this turn, instead put a card you own from outside the game into your hand.
SVar:DrawReplace:Event$ Draw | ValidPlayer$ You | ReplaceWith$ TutorSideboard | Description$ The next time you would draw a card this turn, instead put a card you own from outside the game into your hand. SVar:DrawReplace:Event$ Draw | ValidPlayer$ You | ReplaceWith$ TutorSideboard | Description$ The next time you would draw a card this turn, instead put a card you own from outside the game into your hand.
SVar:TutorSideboard:DB$ ChangeZone | Origin$ Sideboard | Destination$ Hand | ChangeType$ Card.YouOwn | ChangeNum$ 1 | Hidden$ True | Mandatory$ True | SubAbility$ ExileEffect SVar:TutorSideboard:DB$ ChangeZone | Origin$ Sideboard | Destination$ Hand | ChangeType$ Card.YouOwn | ChangeNum$ 1 | Hidden$ True | Mandatory$ True | SubAbility$ ExileEffect
SVar:ExileEffect:DB$ ChangeZone | Defined$ Self | Origin$ Command | Destination$ Exile SVar:ExileEffect:DB$ ChangeZone | Defined$ Self | Origin$ Command | Destination$ Exile

View File

@@ -1,4 +1,4 @@
Name:Seance Name:Séance
ManaCost:2 W W ManaCost:2 W W
Types:Enchantment Types:Enchantment
T:Mode$ Phase | Phase$ Upkeep | TriggerZones$ Battlefield | OptionalDecider$ You | Execute$ TrigExile | TriggerDescription$ At the beginning of each upkeep, you may exile target creature card from your graveyard. If you do, create a token that's a copy of that card, except it's a Spirit in addition to its other types. Exile it at the beginning of the next end step. T:Mode$ Phase | Phase$ Upkeep | TriggerZones$ Battlefield | OptionalDecider$ You | Execute$ TrigExile | TriggerDescription$ At the beginning of each upkeep, you may exile target creature card from your graveyard. If you do, create a token that's a copy of that card, except it's a Spirit in addition to its other types. Exile it at the beginning of the next end step.

View File

@@ -1,10 +1,10 @@
Name:Smeagol, Helpful Guide Name:Sméagol, Helpful Guide
ManaCost:1 B G ManaCost:1 B G
Types:Legendary Creature Halfling Horror Types:Legendary Creature Halfling Horror
PT:4/2 PT:4/2
T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | CheckSVar$ X | SVarCompare$ GE1 | TriggerZones$ Battlefield | Execute$ TrigTempt | TriggerDescription$ At the beginning of your end step, if a creature died under your control this turn, the Ring tempts you. T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | CheckSVar$ X | SVarCompare$ GE1 | TriggerZones$ Battlefield | Execute$ TrigTempt | TriggerDescription$ At the beginning of your end step, if a creature died under your control this turn, the Ring tempts you.
SVar:X:Count$ThisTurnEntered_Graveyard_from_Battlefield_Creature.YouCtrl SVar:X:Count$ThisTurnEntered_Graveyard_from_Battlefield_Creature.YouCtrl
SVar:TrigTempt:DB$ RingTemptsYou SVar:TrigTempt:DB$ RingTemptsYou
T:Mode$ RingTemptsYou | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigDigUntil | TriggerDescription$ Whenever the Ring tempts you, target opponent reveals cards from the top of their library until they reveal a land card. Put that card onto the battlefield tapped under your control and the rest into their graveyard. T:Mode$ RingTemptsYou | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigDigUntil | TriggerDescription$ Whenever the Ring tempts you, target opponent reveals cards from the top of their library until they reveal a land card. Put that card onto the battlefield tapped under your control and the rest into their graveyard.
SVar:TrigDigUntil:DB$ DigUntil | Reveal$ True | ValidTgts$ Opponent | IsCurse$ True | Valid$ Land | ValidDescription$ land card | FoundDestination$ Battlefield | GainControl$ True | Tapped$ True | RevealedDestination$ Graveyard SVar:TrigDigUntil:DB$ DigUntil | Reveal$ True | ValidTgts$ Opponent | IsCurse$ True | Valid$ Land | ValidDescription$ land card | FoundDestination$ Battlefield | GainControl$ True | Tapped$ True | RevealedDestination$ Graveyard
Oracle:At the beginning of your end step, if a creature died under your control this turn, the Ring tempts you.\nWhenever the Ring tempts you, target opponent reveals cards from the top of their library until they reveal a land card. Put that card onto the battlefield tapped under your control and the rest into their graveyard. Oracle:At the beginning of your end step, if a creature died under your control this turn, the Ring tempts you.\nWhenever the Ring tempts you, target opponent reveals cards from the top of their library until they reveal a land card. Put that card onto the battlefield tapped under your control and the rest into their graveyard.

View File

@@ -1,4 +1,4 @@
Name:Song of Earendil Name:Song of Eärendil
ManaCost:3 G U ManaCost:3 G U
Types:Enchantment Saga Types:Enchantment Saga
K:Saga:3:DBScry,DBToken,DBCounter K:Saga:3:DBScry,DBToken,DBCounter

View File

@@ -1,6 +1,6 @@
Name:Soothing of Smeagol Name:Soothing of Sméagol
ManaCost:1 U ManaCost:1 U
Types:Instant Types:Instant
A:SP$ ChangeZone | Cost$ 1 U | ValidTgts$ Creature.nonToken | TgtPrompt$ Select target nontoken creature | Origin$ Battlefield | Destination$ Hand | SubAbility$ TrigTempt | SpellDescription$ Return target nontoken creature to its owner's hand. The Ring tempts you. A:SP$ ChangeZone | Cost$ 1 U | ValidTgts$ Creature.nonToken | TgtPrompt$ Select target nontoken creature | Origin$ Battlefield | Destination$ Hand | SubAbility$ TrigTempt | SpellDescription$ Return target nontoken creature to its owner's hand. The Ring tempts you.
SVar:TrigTempt:DB$ RingTemptsYou SVar:TrigTempt:DB$ RingTemptsYou
Oracle:Return target nontoken creature to its owner's hand. The Ring tempts you. Oracle:Return target nontoken creature to its owner's hand. The Ring tempts you.

View File

@@ -1,4 +1,4 @@
Name:Tale of Tinuviel Name:Tale of Tinúviel
ManaCost:3 W W ManaCost:3 W W
Types:Enchantment Saga Types:Enchantment Saga
K:Saga:3:DBPump,DBReturn,DBPumpLifeLink K:Saga:3:DBPump,DBReturn,DBPumpLifeLink
@@ -7,4 +7,4 @@ SVar:DBReturn:DB$ ChangeZone | Origin$ Graveyard | Destination$ Battlefield | Tg
SVar:DBPumpLifeLink:DB$ Pump | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select up to two target creatures you control | TargetMin$ 0 | TargetMax$ 2 | KW$ Lifelink | SpellDescription$ Up to two target creatures you control each gain lifelink until end of turn. SVar:DBPumpLifeLink:DB$ Pump | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select up to two target creatures you control | TargetMin$ 0 | TargetMax$ 2 | KW$ Lifelink | SpellDescription$ Up to two target creatures you control each gain lifelink until end of turn.
SVar:PlayMain1:TRUE SVar:PlayMain1:TRUE
DeckHas:Ability$Graveyard|LifeGain DeckHas:Ability$Graveyard|LifeGain
Oracle:(As this Saga enters and after your draw step, add a lore counter. Sacrifice after III.)\nI — Target creature you control gains indestructible for as long as you control Tale of Tinuviel.\nII — Return target creature card from your graveyard to the battlefield.\nIII — Up to two target creatures you control each gain lifelink until end of turn. Oracle:(As this Saga enters and after your draw step, add a lore counter. Sacrifice after III.)\nI — Target creature you control gains indestructible for as long as you control Tale of Tinúviel.\nII — Return target creature card from your graveyard to the battlefield.\nIII — Up to two target creatures you control each gain lifelink until end of turn.

View File

@@ -1,4 +1,4 @@
Name:The Balrog, Flame of Udun Name:The Balrog, Flame of Udûn
ManaCost:3 B R ManaCost:3 B R
Types:Legendary Creature Avatar Demon Types:Legendary Creature Avatar Demon
PT:7/7 PT:7/7

View File

@@ -1,8 +1,8 @@
Name:Theoden, King of Rohan Name:Théoden, King of Rohan
ManaCost:1 R W ManaCost:1 R W
Types:Legendary Creature Human Noble Types:Legendary Creature Human Noble
PT:2/3 PT:2/3
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self,Creature.Human+Other+YouCtrl | Execute$ TrigPump | TriggerDescription$ Whenever CARDNAME or another Human enters the battlefield under your control, target creature gains double strike until end of turn. T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self,Creature.Human+Other+YouCtrl | Execute$ TrigPump | TriggerDescription$ Whenever CARDNAME or another Human enters the battlefield under your control, target creature gains double strike until end of turn.
SVar:TrigPump:DB$ Pump | ValidTgts$ Creature | KW$ Double Strike SVar:TrigPump:DB$ Pump | ValidTgts$ Creature | KW$ Double Strike
DeckHints:Type$Human DeckHints:Type$Human
Oracle:Whenever Theoden, King of Rohan or another Human enters the battlefield under your control, target creature gains double strike until end of turn. Oracle:Whenever Théoden, King of Rohan or another Human enters the battlefield under your control, target creature gains double strike until end of turn.

View File

@@ -1,4 +1,4 @@
Name:Troll of Khazad-dum Name:Troll of Khazad-dûm
ManaCost:5 B ManaCost:5 B
Types:Creature Troll Types:Creature Troll
PT:6/5 PT:6/5

View File

@@ -1,4 +1,4 @@
Name:Tura Kennerud, Skyknight Name:Tura Kennerüd, Skyknight
ManaCost:2 W U U ManaCost:2 W U U
Types:Legendary Creature Human Knight Types:Legendary Creature Human Knight
PT:3/3 PT:3/3

View File

@@ -1,4 +1,4 @@
Name:Ugluk of the White Hand Name:Uglúk of the White Hand
ManaCost:2 B R ManaCost:2 B R
Types:Legendary Creature Orc Soldier Types:Legendary Creature Orc Soldier
PT:3/3 PT:3/3
@@ -7,4 +7,4 @@ SVar:TrigGainCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | Counte
SVar:X:TriggeredCard$Valid Creature.Orc,Creature.Goblin/Plus.1 SVar:X:TriggeredCard$Valid Creature.Orc,Creature.Goblin/Plus.1
DeckHas:Ability$Counters DeckHas:Ability$Counters
DeckHints:Type$Orc|Goblin DeckHints:Type$Orc|Goblin
Oracle:Whenever another creature you control dies, put a +1/+1 counter on Ugluk of the White Hand. If that creature was a Goblin or Orc, put two +1/+1 counters on Uglúk instead. Oracle:Whenever another creature you control dies, put a +1/+1 counter on Uglúk of the White Hand. If that creature was a Goblin or Orc, put two +1/+1 counters on Uglúk instead.

View File

@@ -15,34 +15,34 @@ Name=ArabianExtended
1 City in a Bottle|ARN 1 City in a Bottle|ARN
1 City of Brass|ARN 1 City of Brass|ARN
1 Dancing Scimitar|ARN 1 Dancing Scimitar|ARN
1 Dandan|ARN 1 Dandân|ARN
1 Desert|ARN 1 Desert|ARN
1 Desert Nomads|ARN 1 Desert Nomads|ARN
1 Desert Twister|ARN 1 Desert Twister|ARN
1 Diamond Valley|ARN 1 Diamond Valley|ARN
1 Drop of Honey|ARN 1 Drop of Honey|ARN
1 Ebony Horse|ARN 1 Ebony Horse|ARN
1 El-Hajjaj|ARN 1 El-Hajjâj|ARN
1 Elephant Graveyard|ARN 1 Elephant Graveyard|ARN
1 Erg Raiders|ARN 1 Erg Raiders|ARN
1 Erhnam Djinn|ARN 1 Erhnam Djinn|ARN
1 Fishliver Oil|ARN 1 Fishliver Oil|ARN
1 Flying Carpet|ARN 1 Flying Carpet|ARN
1 Flying Men|ARN 1 Flying Men|ARN
1 Ghazban Ogre|ARN 1 Ghazbán Ogre|ARN
1 Giant Tortoise|ARN 1 Giant Tortoise|ARN
1 Hasran Ogress|ARN 1 Hasran Ogress|ARN
1 Hurr Jackal|ARN 1 Hurr Jackal|ARN
1 Ifh-Biff Efreet|ARN 1 Ifh-Bíff Efreet|ARN
1 Island Fish Jasconius|ARN 1 Island Fish Jasconius|ARN
1 Island of Wak-Wak|ARN 1 Island of Wak-Wak|ARN
1 Jandor's Ring|ARN 1 Jandor's Ring|ARN
1 Jandor's Saddlebags|ARN 1 Jandor's Saddlebags|ARN
1 Jeweled Bird|ARN 1 Jeweled Bird|ARN
1 Jihad|ARN 1 Jihad|ARN
1 Junun Efreet|ARN 1 Junún Efreet|ARN
1 Juzam Djinn|ARN 1 Juzám Djinn|ARN
1 Khabal Ghoul|ARN 1 Khabál Ghoul|ARN
1 King Suleiman|ARN 1 King Suleiman|ARN
1 Kird Ape|ARN 1 Kird Ape|ARN
1 Library of Alexandria|ARN 1 Library of Alexandria|ARN
@@ -89,7 +89,7 @@ Name=ArabianExtended
1 Telim'Tor's Edict|MIR 1 Telim'Tor's Edict|MIR
1 Unfulfilled Desires|MIR 1 Unfulfilled Desires|MIR
1 Drifting Djinn|USG 1 Drifting Djinn|USG
1 El-Hajjaj|3ED 1 El-Hajjâj|3ED
1 Emberwilde Caliph|MIR 1 Emberwilde Caliph|MIR
1 Island Fish Jasconius|3ED 1 Island Fish Jasconius|3ED
1 Mijae Djinn|3ED 1 Mijae Djinn|3ED

View File

@@ -314,7 +314,7 @@ Name=MTGO Cube March 2014
1 Jace, the Mind Sculptor|VMA 1 Jace, the Mind Sculptor|VMA
1 Jackal Pup|A25 1 Jackal Pup|A25
1 Joraga Treespeaker|ROE 1 Joraga Treespeaker|ROE
1 Jotun Grunt|CSP 1 Jötun Grunt|CSP
1 Journey to Nowhere|ZEN 1 Journey to Nowhere|ZEN
1 Jungle Shrine|MM3 1 Jungle Shrine|MM3
1 Jushi Apprentice|CHK 1 Jushi Apprentice|CHK

View File

@@ -8,7 +8,7 @@ Name=MTGO Vintage Cube October 2023
1 Agatha's Soul Cauldron|WOE 1 Agatha's Soul Cauldron|WOE
1 Ancestral Recall|VMA 1 Ancestral Recall|VMA
1 Ancient Tomb|UMA 1 Ancient Tomb|UMA
1 Anduril, Flame of the West|LTR 1 Andúril, Flame of the West|LTR
1 Animate Dead|EMA 1 Animate Dead|EMA
1 Arbor Elf|WWK 1 Arbor Elf|WWK
1 Arc Trail|SOM 1 Arc Trail|SOM
@@ -252,7 +252,7 @@ Name=MTGO Vintage Cube October 2023
1 Lion's Eye Diamond|VMA 1 Lion's Eye Diamond|VMA
1 Llanowar Elves|DOM 1 Llanowar Elves|DOM
1 Loran of the Third Path|BRO 1 Loran of the Third Path|BRO
1 Lorien Revealed|LTR 1 Lórien Revealed|LTR
1 Lotus Petal|FVE 1 Lotus Petal|FVE
1 Lurrus of the Dream-Den|IKO 1 Lurrus of the Dream-Den|IKO
1 Magda, Brazen Outlaw|KHM 1 Magda, Brazen Outlaw|KHM
@@ -323,7 +323,7 @@ Name=MTGO Vintage Cube October 2023
1 Outland Liberator|MID 1 Outland Liberator|MID
1 Overgrown Tomb|RAV 1 Overgrown Tomb|RAV
1 Palace Jailer|TSR 1 Palace Jailer|TSR
1 Palantir of Orthanc|LTR 1 Palantír of Orthanc|LTR
1 Paradoxical Outcome|KLD 1 Paradoxical Outcome|KLD
1 Parallax Wave|VMA 1 Parallax Wave|VMA
1 Path to Exile|CFX 1 Path to Exile|CFX
@@ -485,7 +485,7 @@ Name=MTGO Vintage Cube October 2023
1 Treasure Cruise|KTK 1 Treasure Cruise|KTK
1 Trinket Mage|5DN 1 Trinket Mage|5DN
1 Triplicate Titan|C21 1 Triplicate Titan|C21
1 Troll of Khazad-dum|LTR 1 Troll of Khazad-dûm|LTR
1 Tropical Island|ME3 1 Tropical Island|ME3
1 Tundra|ME2 1 Tundra|ME2
1 Turnabout|DMR 1 Turnabout|DMR

View File

@@ -103,7 +103,7 @@ City of Brass|ARN
Cuombajj Witches|ARN Cuombajj Witches|ARN
Cyclone|ARN Cyclone|ARN
Dancing Scimitar|ARN Dancing Scimitar|ARN
Dandan|ARN Dandân|ARN
Desert|ARN Desert|ARN
Desert Nomads|ARN Desert Nomads|ARN
Desert Twister|ARN Desert Twister|ARN
@@ -118,7 +118,7 @@ Eye for an Eye|ARN
Fishliver Oil|ARN Fishliver Oil|ARN
Flying Carpet|ARN Flying Carpet|ARN
Flying Men|ARN Flying Men|ARN
Ghazban Ogre|ARN Ghazbán Ogre|ARN
Giant Tortoise|ARN Giant Tortoise|ARN
Guardian Beast|ARN Guardian Beast|ARN
Hasran Ogress|ARN Hasran Ogress|ARN
@@ -130,9 +130,9 @@ Jandor's Ring|ARN
Jandor's Saddlebags|ARN Jandor's Saddlebags|ARN
Jeweled Bird|ARN Jeweled Bird|ARN
Jihad|ARN Jihad|ARN
Junun Efreet|ARN Junún Efreet|ARN
Juzam Djinn|ARN Juzám Djinn|ARN
Khabal Ghoul|ARN Khabál Ghoul|ARN
King Suleiman|ARN King Suleiman|ARN
Kird Ape|ARN Kird Ape|ARN
Library of Alexandria|ARN Library of Alexandria|ARN
@@ -148,7 +148,7 @@ Oubliette|ARN
Piety|ARN Piety|ARN
Pyramids|ARN Pyramids|ARN
Repentant Blacksmith|ARN Repentant Blacksmith|ARN
Ring of Ma'ruf|ARN Ring of Ma'rûf|ARN
Rukh Egg|ARN Rukh Egg|ARN
Sandals of Abdallah|ARN Sandals of Abdallah|ARN
Sandstorm|ARN Sandstorm|ARN

View File

@@ -160,7 +160,7 @@ Name=Old School 93-94 Magic Powered 360 Card Cube
1 Icatian Town|FEM 1 Icatian Town|FEM
1 Ice Storm|LEB 1 Ice Storm|LEB
1 Icy Manipulator|LEB 1 Icy Manipulator|LEB
1 Ifh-Biff Efreet|ARN 1 Ifh-Bíff Efreet|ARN
1 Immolation|LEG 1 Immolation|LEG
1 Infernal Medusa|LEG 1 Infernal Medusa|LEG
1 Inferno|DRK 1 Inferno|DRK
@@ -175,10 +175,10 @@ Name=Old School 93-94 Magic Powered 360 Card Cube
1 Jihad|ARN 1 Jihad|ARN
1 Johan|LEG 1 Johan|LEG
1 Juggernaut|LEB 1 Juggernaut|LEB
1 Junun Efreet|ARN 1 Junún Efreet|ARN
1 Juxtapose|LEG 1 Juxtapose|LEG
1 Juzam Djinn|ARN 1 Juzám Djinn|ARN
1 Khabal Ghoul|ARN 1 Khabál Ghoul|ARN
1 Killer Bees|LEG 1 Killer Bees|LEG
1 King Suleiman|ARN 1 King Suleiman|ARN
1 Kird Ape|ARN 1 Kird Ape|ARN

View File

@@ -75,7 +75,7 @@ Name=Old School 93-94 Magic Unpowered 400 Card Cube
1 Dakkon Blackblade|LEG 1 Dakkon Blackblade|LEG
1 Dance of Many|DRK 1 Dance of Many|DRK
1 Dancing Scimitar|ARN 1 Dancing Scimitar|ARN
1 Dandan|ARN 1 Dandân|ARN
1 Dark Ritual|LEB 1 Dark Ritual|LEB
1 Darkness|LEG 1 Darkness|LEG
1 Demonic Torment|LEG 1 Demonic Torment|LEG
@@ -168,7 +168,7 @@ Name=Old School 93-94 Magic Unpowered 400 Card Cube
1 Icatian Town|FEM 1 Icatian Town|FEM
1 Ice Storm|LEB 1 Ice Storm|LEB
1 Icy Manipulator|LEB 1 Icy Manipulator|LEB
1 Ifh-Biff Efreet|ARN 1 Ifh-Bíff Efreet|ARN
1 Immolation|LEG 1 Immolation|LEG
1 Infernal Medusa|LEG 1 Infernal Medusa|LEG
1 Inferno|DRK 1 Inferno|DRK
@@ -182,11 +182,11 @@ Name=Old School 93-94 Magic Unpowered 400 Card Cube
1 Jayemdae Tome|LEA 1 Jayemdae Tome|LEA
1 Jihad|ARN 1 Jihad|ARN
1 Juggernaut|LEB 1 Juggernaut|LEB
1 Junun Efreet|ARN 1 Junún Efreet|ARN
1 Juxtapose|LEG 1 Juxtapose|LEG
1 Juzam Djinn|ARN 1 Juzám Djinn|ARN
1 Keepers of the Faith|LEG 1 Keepers of the Faith|LEG
1 Khabal Ghoul|ARN 1 Khabál Ghoul|ARN
1 Killer Bees|LEG 1 Killer Bees|LEG
1 Kird Ape|ARN 1 Kird Ape|ARN
1 Kismet|LEG 1 Kismet|LEG

View File

@@ -13,7 +13,7 @@ ScryfallCode=HBG
1 R Klement, Novice Acolyte @Maria Poliakova 1 R Klement, Novice Acolyte @Maria Poliakova
2 R Lae'zel, Githyanki Warrior @John Stanko 2 R Lae'zel, Githyanki Warrior @John Stanko
3 U Lulu, Forgetful Hollyphant @Jakob Eirich 3 U Lulu, Forgetful Hollyphant @Jakob Eirich
4 U Rasaad, Monk of Selune @Dan Scott 4 U Rasaad, Monk of Selûne @Dan Scott
5 U Alora, Rogue Companion @Aaron Miller 5 U Alora, Rogue Companion @Aaron Miller
6 M Gale, Conduit of the Arcane @Cristi Balanescu 6 M Gale, Conduit of the Arcane @Cristi Balanescu
7 R Imoen, Trickster Friend @Alix Branwyn 7 R Imoen, Trickster Friend @Alix Branwyn

View File

@@ -105,10 +105,10 @@ ScryfallCode=ALL
30a C Lat-Nam's Legacy @Tom Wänerstrand 30a C Lat-Nam's Legacy @Tom Wänerstrand
30b C Lat-Nam's Legacy @Tom Wänerstrand 30b C Lat-Nam's Legacy @Tom Wänerstrand
31 R Library of Lat-Nam @Alan Rabinowitz 31 R Library of Lat-Nam @Alan Rabinowitz
55a C Lim-Dul's High Guard @Anson Maddocks 55a C Lim-Dûl's High Guard @Anson Maddocks
55b C Lim-Dul's High Guard @Anson Maddocks 55b C Lim-Dûl's High Guard @Anson Maddocks
108 U Lim-Dul's Paladin @Christopher Rush 108 U Lim-Dûl's Paladin @Christopher Rush
107 U Lim-Dul's Vault @Rob Alexander 107 U Lim-Dûl's Vault @Rob Alexander
122 R Lodestone Bauble @Douglas Shuler 122 R Lodestone Bauble @Douglas Shuler
112 R Lord of Tresserhorn @Anson Maddocks 112 R Lord of Tresserhorn @Anson Maddocks
10a C Martyrdom @Mark Poole 10a C Martyrdom @Mark Poole

View File

@@ -30,14 +30,14 @@ ScryfallCode=ARN
23 C Cuombajj Witches @Kaja Foglio 23 C Cuombajj Witches @Kaja Foglio
45 U Cyclone @Mark Tedin 45 U Cyclone @Mark Tedin
61 R Dancing Scimitar @Anson Maddocks 61 R Dancing Scimitar @Anson Maddocks
12 C Dandan @Drew Tucker 12 C Dandân @Drew Tucker
72 C Desert @Jesper Myrfors 72 C Desert @Jesper Myrfors
38 C Desert Nomads @Christopher Rush 38 C Desert Nomads @Christopher Rush
46 U Desert Twister @Susan Van Camp 46 U Desert Twister @Susan Van Camp
73 U Diamond Valley @Brian Snõddy 73 U Diamond Valley @Brian Snõddy
47 R Drop of Honey @Anson Maddocks 47 R Drop of Honey @Anson Maddocks
62 R Ebony Horse @Dameon Willich 62 R Ebony Horse @Dameon Willich
24 R El-Hajjaj @Dameon Willich 24 R El-Hajjâj @Dameon Willich
74 R Elephant Graveyard @Rob Alexander 74 R Elephant Graveyard @Rob Alexander
25 C Erg Raiders @Dameon Willich 25 C Erg Raiders @Dameon Willich
25† C Erg Raiders @Dameon Willich 25† C Erg Raiders @Dameon Willich
@@ -47,23 +47,23 @@ ScryfallCode=ARN
13† C Fishliver Oil @Anson Maddocks 13† C Fishliver Oil @Anson Maddocks
63 U Flying Carpet @Mark Tedin 63 U Flying Carpet @Mark Tedin
14 C Flying Men @Christopher Rush 14 C Flying Men @Christopher Rush
49 C Ghazban Ogre @Jesper Myrfors 49 C Ghazbán Ogre @Jesper Myrfors
15 C Giant Tortoise @Kaja Foglio 15 C Giant Tortoise @Kaja Foglio
15† C Giant Tortoise @Kaja Foglio 15† C Giant Tortoise @Kaja Foglio
26 R Guardian Beast @Ken Meyer, Jr. 26 R Guardian Beast @Ken Meyer, Jr.
27 C Hasran Ogress @Dan Frazier 27 C Hasran Ogress @Dan Frazier
27† C Hasran Ogress @Dan Frazier 27† C Hasran Ogress @Dan Frazier
39 C Hurr Jackal @Drew Tucker 39 C Hurr Jackal @Drew Tucker
50 R Ifh-Biff Efreet @Jesper Myrfors 50 R Ifh-Bíff Efreet @Jesper Myrfors
16 R Island Fish Jasconius @Jesper Myrfors 16 R Island Fish Jasconius @Jesper Myrfors
75 R Island of Wak-Wak @Douglas Shuler 75 R Island of Wak-Wak @Douglas Shuler
64 R Jandor's Ring @Dan Frazier 64 R Jandor's Ring @Dan Frazier
65 R Jandor's Saddlebags @Dameon Willich 65 R Jandor's Saddlebags @Dameon Willich
66 U Jeweled Bird @Amy Weber 66 U Jeweled Bird @Amy Weber
5 R Jihad @Brian Snõddy 5 R Jihad @Brian Snõddy
28 R Junun Efreet @Christopher Rush 28 R Junún Efreet @Christopher Rush
29 R Juzam Djinn @Mark Tedin 29 R Juzám Djinn @Mark Tedin
30 U Khabal Ghoul @Douglas Shuler 30 U Khabál Ghoul @Douglas Shuler
6 R King Suleiman @Mark Poole 6 R King Suleiman @Mark Poole
40 C Kird Ape @Ken Meyer, Jr. 40 C Kird Ape @Ken Meyer, Jr.
76 U Library of Alexandria @Mark Poole 76 U Library of Alexandria @Mark Poole
@@ -84,7 +84,7 @@ ScryfallCode=ARN
8† C Piety @Mark Poole 8† C Piety @Mark Poole
67 R Pyramids @Amy Weber 67 R Pyramids @Amy Weber
9 R Repentant Blacksmith @Drew Tucker 9 R Repentant Blacksmith @Drew Tucker
68 R Ring of Ma'ruf @Dan Frazier 68 R Ring of Ma'rûf @Dan Frazier
43 C Rukh Egg @Christopher Rush 43 C Rukh Egg @Christopher Rush
43† C Rukh Egg @Christopher Rush 43† C Rukh Egg @Christopher Rush
69 U Sandals of Abdallah @Dan Frazier 69 U Sandals of Abdallah @Dan Frazier

View File

@@ -45,7 +45,7 @@ ScryfallCode=CHR
5 C D'Avenant Archer @Douglas Shuler 5 C D'Avenant Archer @Douglas Shuler
75 R Dakkon Blackblade @Richard Kane Ferguson 75 R Dakkon Blackblade @Richard Kane Ferguson
17 R Dance of Many @Sandra Everingham 17 R Dance of Many @Sandra Everingham
18 C Dandan @Drew Tucker 18 C Dandân @Drew Tucker
6 C Divine Offering @Jeff A. Menges 6 C Divine Offering @Jeff A. Menges
63 C Emerald Dragonfly @Quinton Hoover 63 C Emerald Dragonfly @Quinton Hoover
19 U Enchantment Alteration @Brian Snõddy 19 U Enchantment Alteration @Brian Snõddy
@@ -58,7 +58,7 @@ ScryfallCode=CHR
98 C Fountain of Youth @Daniel Gelon 98 C Fountain of Youth @Daniel Gelon
76 R Gabriel Angelfire @Daniel Gelon 76 R Gabriel Angelfire @Daniel Gelon
99 R Gauntlets of Chaos @Dan Frazier 99 R Gauntlets of Chaos @Dan Frazier
65 C Ghazban Ogre @Jesper Myrfors 65 C Ghazbán Ogre @Jesper Myrfors
33 C Giant Slug @Anson Maddocks 33 C Giant Slug @Anson Maddocks
48 U Goblin Artisans @Julie Baroh 48 U Goblin Artisans @Julie Baroh
49 C Goblin Digging Team @Ron Spencer 49 C Goblin Digging Team @Ron Spencer

View File

@@ -39,7 +39,7 @@ ScryfallCode=CST
123 U Drift of the Dead @Brian Snõddy 123 U Drift of the Dead @Brian Snõddy
127 C Gangrenous Zombies @Brian Snõddy 127 C Gangrenous Zombies @Brian Snõddy
137 C Kjeldoran Dead @Melissa A. Benson 137 C Kjeldoran Dead @Melissa A. Benson
142 C Legions of Lim-Dul @Anson Maddocks 142 C Legions of Lim-Dûl @Anson Maddocks
161 C Soul Burn @Rob Alexander 161 C Soul Burn @Rob Alexander
194 C Incinerate @Mark Poole 194 C Incinerate @Mark Poole
208 U Orcish Healer @Quinton Hoover 208 U Orcish Healer @Quinton Hoover

View File

@@ -74,8 +74,8 @@ ScryfallCode=CSP
111 C Into the North @Richard Sardinha 111 C Into the North @Richard Sardinha
137 R Jester's Scepter @Matt Cavotta 137 R Jester's Scepter @Matt Cavotta
37 R Jokulmorder @Mark Zug 37 R Jokulmorder @Mark Zug
8 U Jotun Grunt @Franz Vohwinkel 8 U Jötun Grunt @Franz Vohwinkel
9 U Jotun Owl Keeper @Dave Dorman 9 U Jötun Owl Keeper @Dave Dorman
130 U Juniper Order Ranger @Greg Hildebrandt 130 U Juniper Order Ranger @Greg Hildebrandt
86 R Karplusan Minotaur @Wayne England 86 R Karplusan Minotaur @Wayne England
112 U Karplusan Strider @Dan Scott 112 U Karplusan Strider @Dan Scott

View File

@@ -203,7 +203,7 @@ ScryfallCode=C13
194 M Jeleva, Nephalia's Scourge @Cynthia Sheppard 194 M Jeleva, Nephalia's Scourge @Cynthia Sheppard
195 U Jund Charm @Brandon Kitkouski 195 U Jund Charm @Brandon Kitkouski
196 U Leafdrake Roost @Nick Percival 196 U Leafdrake Roost @Nick Percival
197 U Lim-Dul's Vault @Wayne England 197 U Lim-Dûl's Vault @Wayne England
198 M Marath, Will of the Wild @Tyler Jacobson 198 M Marath, Will of the Wild @Tyler Jacobson
199 M Mayael the Anima @Jason Chan 199 M Mayael the Anima @Jason Chan
200 U Naya Charm @Jesper Ejsing 200 U Naya Charm @Jesper Ejsing

View File

@@ -154,7 +154,7 @@ ScryfallCode=cmd
278 C Izzet Boilerworks @John Avon 278 C Izzet Boilerworks @John Avon
205 C Izzet Chronarch @Nick Percival 205 C Izzet Chronarch @Nick Percival
252 C Izzet Signet @Greg Hildebrandt 252 C Izzet Signet @Greg Hildebrandt
16 U Jotun Grunt @Franz Vohwinkel 16 U Jötun Grunt @Franz Vohwinkel
17 C Journey to Nowhere @Warren Mahy 17 C Journey to Nowhere @Warren Mahy
279 U Jwar Isle Refuge @Cyril Van Der Haegen 279 U Jwar Isle Refuge @Cyril Van Der Haegen
206 M Kaalia of the Vast @Michael Komarck 206 M Kaalia of the Vast @Michael Komarck

View File

@@ -131,7 +131,7 @@ ScryfallCode=DKA
103 C Scorch the Fields @Jaime Jones 103 C Scorch the Fields @Jaime Jones
125 C Scorned Villager @Cynthia Sheppard 125 C Scorned Villager @Cynthia Sheppard
47 C Screeching Skaab @Clint Cearley 47 C Screeching Skaab @Clint Cearley
20 R Seance @David Rapoza 20 R Séance @David Rapoza
48 U Secrets of the Dead @Eytan Zana 48 U Secrets of the Dead @Eytan Zana
104 U Shattered Perception @Terese Nielsen 104 U Shattered Perception @Terese Nielsen
49 C Shriekgeist @Raymond Swanland 49 C Shriekgeist @Raymond Swanland

View File

@@ -12,8 +12,8 @@ ScryfallCode=DKM
3 C Dark Banishing @Drew Tucker 3 C Dark Banishing @Drew Tucker
4 C Dark Ritual @Justin Hampton 4 C Dark Ritual @Justin Hampton
5 C Foul Familiar @Anson Maddocks 5 C Foul Familiar @Anson Maddocks
6a C Lim-Dul's High Guard @Anson Maddocks 6a C Lim-Dûl's High Guard @Anson Maddocks
6b C Lim-Dul's High Guard @Anson Maddocks 6b C Lim-Dûl's High Guard @Anson Maddocks
7 R Necropotence @Mark Tedin 7 R Necropotence @Mark Tedin
8a C Phantasmal Fiend @Scott Kirschner 8a C Phantasmal Fiend @Scott Kirschner
8b C Phantasmal Fiend @Scott Kirschner 8b C Phantasmal Fiend @Scott Kirschner

View File

@@ -235,7 +235,7 @@ ScryfallCode=DMU
221 R Stenn, Paranoid Partisan @Mila Pesic 221 R Stenn, Paranoid Partisan @Mila Pesic
222 U Tatyova, Steward of Tides @Howard Lyon 222 U Tatyova, Steward of Tides @Howard Lyon
223 U Tori D'Avenant, Fury Rider @Anna Podedworna 223 U Tori D'Avenant, Fury Rider @Anna Podedworna
224 U Tura Kennerud, Skyknight @Donato Giancola 224 U Tura Kennerüd, Skyknight @Donato Giancola
225 U Uurg, Spawn of Turg @Nicholas Gregory 225 U Uurg, Spawn of Turg @Nicholas Gregory
226 U Vohar, Vodalian Desecrator @Daarken 226 U Vohar, Vodalian Desecrator @Daarken
227 U Zar Ojanen, Scion of Efrava @Justine Cruz 227 U Zar Ojanen, Scion of Efrava @Justine Cruz
@@ -343,7 +343,7 @@ ScryfallCode=DMU
320 R Stenn, Paranoid Partisan @Tyler Crook 320 R Stenn, Paranoid Partisan @Tyler Crook
321 U Tatyova, Steward of Tides @Lisa Heidhoff 321 U Tatyova, Steward of Tides @Lisa Heidhoff
322 U Tori D'Avenant, Fury Rider @Jody Clark 322 U Tori D'Avenant, Fury Rider @Jody Clark
323 U Tura Kennerud, Skyknight @Benjamin Ee 323 U Tura Kennerüd, Skyknight @Benjamin Ee
324 U Uurg, Spawn of Turg @Eugene Frost 324 U Uurg, Spawn of Turg @Eugene Frost
325 U Vohar, Vodalian Desecrator @Nino Vecia 325 U Vohar, Vodalian Desecrator @Nino Vecia
326 U Zar Ojanen, Scion of Efrava @Eshpur 326 U Zar Ojanen, Scion of Efrava @Eshpur
@@ -384,7 +384,7 @@ ScryfallCode=DMU
361 R Stenn, Paranoid Partisan @Tyler Crook 361 R Stenn, Paranoid Partisan @Tyler Crook
362 U Tatyova, Steward of Tides @Lisa Heidhoff 362 U Tatyova, Steward of Tides @Lisa Heidhoff
363 U Tori D'Avenant, Fury Rider @Jody Clark 363 U Tori D'Avenant, Fury Rider @Jody Clark
364 U Tura Kennerud, Skyknight @Benjamin Ee 364 U Tura Kennerüd, Skyknight @Benjamin Ee
365 U Uurg, Spawn of Turg @Eugene Frost 365 U Uurg, Spawn of Turg @Eugene Frost
366 U Vohar, Vodalian Desecrator @Nino Vecia 366 U Vohar, Vodalian Desecrator @Nino Vecia
367 U Zar Ojanen, Scion of Efrava @Eshpur 367 U Zar Ojanen, Scion of Efrava @Eshpur

View File

@@ -99,7 +99,7 @@ ScryfallCode=5ED
152 U Cursed Land @Jesper Myrfors 152 U Cursed Land @Jesper Myrfors
78 R Dance of Many @Sandra Everingham 78 R Dance of Many @Sandra Everingham
362 R Dancing Scimitar @Anson Maddocks 362 R Dancing Scimitar @Anson Maddocks
79 C Dandan @Drew Tucker 79 C Dandân @Drew Tucker
80 C Dark Maze @David Seeley 80 C Dark Maze @David Seeley
153 C Dark Ritual @Clint Langley 153 C Dark Ritual @Clint Langley
23 C D'Avenant Archer @Douglas Shuler 23 C D'Avenant Archer @Douglas Shuler
@@ -174,7 +174,7 @@ ScryfallCode=5ED
232 R Game of Chaos @Thomas Gianni 232 R Game of Chaos @Thomas Gianni
90 C Gaseous Form @Doug Keith 90 C Gaseous Form @Doug Keith
373 R Gauntlets of Chaos @Alan Rabinowitz 373 R Gauntlets of Chaos @Alan Rabinowitz
298 C Ghazban Ogre @Mike Raabe 298 C Ghazbán Ogre @Mike Raabe
299 C Giant Growth @DiTerlizzi 299 C Giant Growth @DiTerlizzi
300 C Giant Spider @Brian Snõddy 300 C Giant Spider @Brian Snõddy
233 C Giant Strength @Kev Walker 233 C Giant Strength @Kev Walker

View File

@@ -113,7 +113,7 @@ ScryfallCode=4ED
188 U Earth Elemental @Dan Frazier 188 U Earth Elemental @Dan Frazier
189 R Earthquake @Dan Frazier 189 R Earthquake @Dan Frazier
318 R Ebony Horse @Dameon Willich 318 R Ebony Horse @Dameon Willich
134 R El-Hajjaj @Dameon Willich 134 R El-Hajjâj @Dameon Willich
24 R Elder Land Wurm @Quinton Hoover 24 R Elder Land Wurm @Quinton Hoover
242 U Elven Riders @Melissa A. Benson 242 U Elven Riders @Melissa A. Benson
243 R Elvish Archers @Anson Maddocks 243 R Elvish Archers @Anson Maddocks
@@ -190,7 +190,7 @@ ScryfallCode=4ED
330 R Jandor's Saddlebags @Dameon Willich 330 R Jandor's Saddlebags @Dameon Willich
331 R Jayemdae Tome @Mark Tedin 331 R Jayemdae Tome @Mark Tedin
79 C Jump @Mark Poole 79 C Jump @Mark Poole
143 U Junun Efreet @Christopher Rush 143 U Junún Efreet @Christopher Rush
32 U Karma @Richard Thomas 32 U Karma @Richard Thomas
207 U Keldon Warlord @Kev Brockschmidt 207 U Keldon Warlord @Kev Brockschmidt
254 U Killer Bees @Phil Foglio 254 U Killer Bees @Phil Foglio

View File

@@ -214,19 +214,19 @@ ScryfallCode=ICE
327 U Lapis Lazuli Talisman @Amy Weber 327 U Lapis Lazuli Talisman @Amy Weber
198 C Lava Burst @Tom Wänerstrand 198 C Lava Burst @Tom Wänerstrand
358 R Lava Tubes @Bryon Wackwitz 358 R Lava Tubes @Bryon Wackwitz
142 C Legions of Lim-Dul @Anson Maddocks 142 C Legions of Lim-Dûl @Anson Maddocks
143 U Leshrac's Rite @Richard Thomas 143 U Leshrac's Rite @Richard Thomas
144 U Leshrac's Sigil @Drew Tucker 144 U Leshrac's Sigil @Drew Tucker
252 R Lhurgoyf @Pete Venters 252 R Lhurgoyf @Pete Venters
42 R Lightning Blow @Harold McNeill 42 R Lightning Blow @Harold McNeill
145 C Lim-Dul's Cohort @Douglas Shuler 145 C Lim-Dûl's Cohort @Douglas Shuler
146 U Lim-Dul's Hex @Liz Danforth 146 U Lim-Dûl's Hex @Liz Danforth
43 R Lost Order of Jarkeld @Andi Rusu 43 R Lost Order of Jarkeld @Andi Rusu
253 U Lure @Phil Foglio 253 U Lure @Phil Foglio
254 U Maddening Wind @Dameon Willich 254 U Maddening Wind @Dameon Willich
82 R Magus of the Unseen @Kaja Foglio 82 R Magus of the Unseen @Kaja Foglio
328 U Malachite Talisman @Christopher Rush 328 U Malachite Talisman @Christopher Rush
199 R Marton Stromgald @Mark Poole 199 R Márton Stromgald @Mark Poole
200 U Melee @Dameon Willich 200 U Melee @Dameon Willich
201 U Melting @Randy Gallegos 201 U Melting @Randy Gallegos
44 R Mercenaries @Cornelius Brudi 44 R Mercenaries @Cornelius Brudi
@@ -256,7 +256,7 @@ ScryfallCode=ICE
255 U Nature's Lore @Rick Emond 255 U Nature's Lore @Rick Emond
154 R Necropotence @Mark Tedin 154 R Necropotence @Mark Tedin
155 C Norritt @Mike Raabe 155 C Norritt @Mike Raabe
156 R Oath of Lim-Dul @Douglas Shuler 156 R Oath of Lim-Dûl @Douglas Shuler
331 U Onyx Talisman @Sandra Everingham 331 U Onyx Talisman @Sandra Everingham
205 U Orcish Cannoneers @Dan Frazier 205 U Orcish Cannoneers @Dan Frazier
206 C Orcish Conscripts @Douglas Shuler 206 C Orcish Conscripts @Douglas Shuler

View File

@@ -10,7 +10,7 @@ B1 U Aura of Silence @D. Alexander Gregory
B2 C Benevolent Bodyguard @Roger Raupp B2 C Benevolent Bodyguard @Roger Raupp
B3 R Ethersworn Canonist @Izzy B3 R Ethersworn Canonist @Izzy
B4 U Flickerwisp @Jeremy Enecio B4 U Flickerwisp @Jeremy Enecio
B5 U Jotun Grunt @Franz Vohwinkel B5 U Jötun Grunt @Franz Vohwinkel
B6 U Kor Firewalker @Matt Stewart B6 U Kor Firewalker @Matt Stewart
B7 R Mangara of Corondor @Zoltan Boros & Gabor Szikszai B7 R Mangara of Corondor @Zoltan Boros & Gabor Szikszai
B8 C Oblivion Ring @Wayne England B8 C Oblivion Ring @Wayne England

View File

@@ -137,7 +137,7 @@ ScryfallCode=ME2
52 C Lat-Nam's Legacy @Tom Wänerstrand 52 C Lat-Nam's Legacy @Tom Wänerstrand
134 U Lava Burst @Tom Wänerstrand 134 U Lava Burst @Tom Wänerstrand
171 C Leaping Lizard @Amy Weber 171 C Leaping Lizard @Amy Weber
103 U Lim-Dul's High Guard @Anson Maddocks 103 U Lim-Dûl's High Guard @Anson Maddocks
213 R Lodestone Bauble @Douglas Shuler 213 R Lodestone Bauble @Douglas Shuler
24 R Lost Order of Jarkeld @Andi Rusu 24 R Lost Order of Jarkeld @Andi Rusu
53 R Magus of the Unseen @Kaja Foglio 53 R Magus of the Unseen @Kaja Foglio

View File

@@ -132,7 +132,7 @@ ScryfallCode=ME4
15 R Island Sanctuary @Mark Poole 15 R Island Sanctuary @Mark Poole
208 R Jade Monolith @Anson Maddocks 208 R Jade Monolith @Anson Maddocks
209 U Juggernaut @Dan Frazier 209 U Juggernaut @Dan Frazier
88 U Junun Efreet @Christopher Rush 88 U Junún Efreet @Christopher Rush
16 C Just Fate @Bradley Williams 16 C Just Fate @Bradley Williams
17 R Kismet @Kaja Foglio 17 R Kismet @Kaja Foglio
210 R Kormus Bell @Christopher Rush 210 R Kormus Bell @Christopher Rush
@@ -144,7 +144,7 @@ ScryfallCode=ME4
211 C Library of Leng @Daniel Gelon 211 C Library of Leng @Daniel Gelon
89 R Lich @Daniel Gelon 89 R Lich @Daniel Gelon
160 R Lifeforce @Dameon Willich 160 R Lifeforce @Dameon Willich
90 C Lim-Dul's Cohort @Douglas Shuler 90 C Lim-Dûl's Cohort @Douglas Shuler
161 R Living Lands @Jesper Myrfors 161 R Living Lands @Jesper Myrfors
212 U Living Wall @Anson Maddocks 212 U Living Wall @Anson Maddocks
52 R Mahamoti Djinn @Dan Frazier 52 R Mahamoti Djinn @Dan Frazier

View File

@@ -71,7 +71,7 @@ ScryfallCode=ME1
195 L Forest @Christopher Rush 195 L Forest @Christopher Rush
118 C Fyndhorn Elves @Justin Hampton 118 C Fyndhorn Elves @Justin Hampton
119 R Gargantuan Gorilla @Greg Simanson 119 R Gargantuan Gorilla @Greg Simanson
120 C Ghazban Ogre @Jesper Myrfors 120 C Ghazbán Ogre @Jesper Myrfors
34 C Giant Tortoise @Kaja Foglio 34 C Giant Tortoise @Kaja Foglio
94 C Goblin Chirurgeon @Dan Frazier 94 C Goblin Chirurgeon @Dan Frazier
95 U Goblin Grenade @Ron Spencer 95 U Goblin Grenade @Ron Spencer
@@ -94,7 +94,7 @@ ScryfallCode=ME1
17 C Icatian Lieutenant @Pete Venters 17 C Icatian Lieutenant @Pete Venters
18 U Icatian Town @Tom Wänerstrand 18 U Icatian Town @Tom Wänerstrand
122 U Ice Storm @Dan Frazier 122 U Ice Storm @Dan Frazier
123 R Ifh-Biff Efreet @Jesper Myrfors 123 R Ifh-Bíff Efreet @Jesper Myrfors
38 U Illusionary Forces @Justin Hampton 38 U Illusionary Forces @Justin Hampton
39 C Illusionary Wall @Mark Poole 39 C Illusionary Wall @Mark Poole
40 R Illusions of Grandeur @Quinton Hoover 40 R Illusions of Grandeur @Quinton Hoover
@@ -106,16 +106,16 @@ ScryfallCode=ME1
147 R Jacques le Vert @Andi Rusu 147 R Jacques le Vert @Andi Rusu
100 R Jokulhaups @Richard Thomas 100 R Jokulhaups @Richard Thomas
41 U Juxtapose @Justin Hampton 41 U Juxtapose @Justin Hampton
74 R Juzam Djinn @Mark Tedin 74 R Juzám Djinn @Mark Tedin
101 U Keldon Warlord @Kev Brockschmidt 101 U Keldon Warlord @Kev Brockschmidt
75 R Khabal Ghoul @Douglas Shuler 75 R Khabál Ghoul @Douglas Shuler
19 C Knights of Thorn @Christopher Rush 19 C Knights of Thorn @Christopher Rush
177 R Lake of the Dead @Pete Venters 177 R Lake of the Dead @Pete Venters
102 C Lightning Bolt @Christopher Rush 102 C Lightning Bolt @Christopher Rush
148 U Lim-Dul's Vault @Rob Alexander 148 U Lim-Dûl's Vault @Rob Alexander
149 R Lord of Tresserhorn @Anson Maddocks 149 R Lord of Tresserhorn @Anson Maddocks
103 R Mana Flare @Christopher Rush 103 R Mana Flare @Christopher Rush
104 R Marton Stromgald @Mark Poole 104 R Márton Stromgald @Mark Poole
20 C Mesa Pegasus @Melissa A. Benson 20 C Mesa Pegasus @Melissa A. Benson
76 C Mindstab Thrull @Mark Tedin 76 C Mindstab Thrull @Mark Tedin
159 R Mirror Universe @Phil Foglio 159 R Mirror Universe @Phil Foglio
@@ -153,7 +153,7 @@ ScryfallCode=ME1
126 U Rabid Wombat @Kaja Foglio 126 U Rabid Wombat @Kaja Foglio
179 R Rainbow Vale @Kaja Foglio 179 R Rainbow Vale @Kaja Foglio
25 C Righteous Avengers @Heather Hudson 25 C Righteous Avengers @Heather Hudson
163 R Ring of Ma'ruf @Dan Frazier 163 R Ring of Ma'rûf @Dan Frazier
47 C River Merfolk @Douglas Shuler 47 C River Merfolk @Douglas Shuler
127 C Roots @Nicola Leonard 127 C Roots @Nicola Leonard
128 C Scryb Sprites @Amy Weber 128 C Scryb Sprites @Amy Weber

View File

@@ -32,7 +32,7 @@ ScryfallCode=MM3
19 R Ranger of Eos @Ryan Pancoast 19 R Ranger of Eos @Ryan Pancoast
20 R Restoration Angel @Johannes Voss 20 R Restoration Angel @Johannes Voss
21 C Rootborn Defenses @Mark Zug 21 C Rootborn Defenses @Mark Zug
22 R Seance @David Rapoza 22 R Séance @David Rapoza
23 C Sensor Splicer @Izzy 23 C Sensor Splicer @Izzy
24 C Soul Warden @Randy Gallegos 24 C Soul Warden @Randy Gallegos
25 R Stony Silence @Mark Poole 25 R Stony Silence @Mark Poole

View File

@@ -105,11 +105,11 @@ ScryfallCode=PRM
43634 S Hymn to Tourach @Greg Staples 43634 S Hymn to Tourach @Greg Staples
59639 S Icatian Javelineers @Michael Phillippi 59639 S Icatian Javelineers @Michael Phillippi
35980 S Icatian Javelineers @Michael Phillippi 35980 S Icatian Javelineers @Michael Phillippi
213 S Ifh-Biff Efreet @Jesper Myrfors 213 S Ifh-Bíff Efreet @Jesper Myrfors
62387 S Izzet Signet @Raoul Vitale 62387 S Izzet Signet @Raoul Vitale
70942 S Jokulhaups @Mike Kerr 70942 S Jokulhaups @Mike Kerr
35820 S Joraga Warcaller @Steven Belledin 35820 S Joraga Warcaller @Steven Belledin
215 S Khabal Ghoul @Douglas Shuler 215 S Khabál Ghoul @Douglas Shuler
43628 S Kjeldoran Outpost @Noah Bradley 43628 S Kjeldoran Outpost @Noah Bradley
23952 S Kjeldoran Outpost @Jeff A. Menges 23952 S Kjeldoran Outpost @Jeff A. Menges
33442 S Kongming, "Sleeping Dragon" @Gao Yan 33442 S Kongming, "Sleeping Dragon" @Gao Yan

View File

@@ -51,7 +51,7 @@ ScryfallCode=P02
72 U Dark Offering @Edward P. Beard, Jr. 72 U Dark Offering @Edward P. Beard, Jr.
125 R Deathcoil Wurm @Rebecca Guay 125 R Deathcoil Wurm @Rebecca Guay
126 U Deep Wood @Jeff Miracola 126 U Deep Wood @Jeff Miracola
36 C Deja Vu @David Horne 36 C Déjà Vu @David Horne
35 R Denizen of the Deep @Anson Maddocks 35 R Denizen of the Deep @Anson Maddocks
94 R Earthquake @Jeffrey R. Busch 94 R Earthquake @Jeffrey R. Busch
37 R Exhaustion @Kaja Foglio 37 R Exhaustion @Kaja Foglio

Some files were not shown because too many files have changed in this diff Show More