[C15] Added some spoilers to mtg-cards-data.txt. Implemented Thought Vessel, Daxos's Torment, Arjun the Shifting Flame, and Bloodspore Thrinax. Added Black Market reprint.

This commit is contained in:
fireshoes 2015-11-05 09:04:56 -06:00
parent 3940ff4b2e
commit 9058b86a35
6 changed files with 451 additions and 1 deletions

View file

@ -0,0 +1,125 @@
/*
* Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
* permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice, this list of
* conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice, this list
* of conditions and the following disclaimer in the documentation and/or other materials
* provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
* FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* The views and conclusions contained in the software and documentation are those of the
* authors and should not be interpreted as representing official policies, either expressed
* or implied, of BetaSteward_at_googlemail.com.
*/
package mage.sets.commander2015;
import java.util.UUID;
import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.SpellCastControllerTriggeredAbility;
import mage.abilities.effects.OneShotEffect;
import mage.abilities.keyword.FlyingAbility;
import mage.cards.Card;
import mage.cards.CardImpl;
import mage.cards.Cards;
import mage.cards.CardsImpl;
import mage.constants.CardType;
import mage.constants.Outcome;
import mage.constants.Rarity;
import mage.constants.Zone;
import mage.filter.FilterCard;
import mage.game.Game;
import mage.players.Player;
import mage.target.TargetCard;
/**
*
* @author fireshoes
*/
public class ArjunTheShiftingFlame extends CardImpl {
public ArjunTheShiftingFlame(UUID ownerId) {
super(ownerId, 42, "Arjun, the Shifting Flame", Rarity.MYTHIC, new CardType[]{CardType.CREATURE}, "{4}{U}{R}");
this.expansionSetCode = "C15";
this.supertype.add("Legendary");
this.subtype.add("Sphinx");
this.subtype.add("Wizard");
this.power = new MageInt(5);
this.toughness = new MageInt(5);
// Flying
this.addAbility(FlyingAbility.getInstance());
// Whenever you cast a spell, put the cards in your hand on the bottom of your library in any order, then draw that many cards.
this.addAbility(new SpellCastControllerTriggeredAbility(new ArjunTheShiftingFlameEffect(), false));
}
public ArjunTheShiftingFlame(final ArjunTheShiftingFlame card) {
super(card);
}
@Override
public ArjunTheShiftingFlame copy() {
return new ArjunTheShiftingFlame(this);
}
}
class ArjunTheShiftingFlameEffect extends OneShotEffect {
public ArjunTheShiftingFlameEffect() {
super(Outcome.Neutral);
staticText = "put the cards in your hand on the bottom of your library in any order, then draw that many cards";
}
public ArjunTheShiftingFlameEffect(final ArjunTheShiftingFlameEffect effect) {
super(effect);
}
@Override
public boolean apply(Game game, Ability source) {
Player you = game.getPlayer(source.getControllerId());
if (you != null) {
int count = you.getHand().size();
Cards cards = new CardsImpl();
for (Card card : you.getHand().getCards(game)) {
cards.add(card.getId());
}
TargetCard target = new TargetCard(Zone.PICK, new FilterCard("card to put on the bottom of your library"));
while (you.canRespond() && cards.size() > 1) {
you.choose(Outcome.Neutral, cards, target, game);
Card card = cards.get(target.getFirstTarget(), game);
if (card != null) {
cards.remove(card);
card.moveToZone(Zone.LIBRARY, source.getSourceId(), game, false);
}
target.clearChosen();
}
if (cards.size() == 1) {
Card card = cards.get(cards.iterator().next(), game);
card.moveToZone(Zone.LIBRARY, source.getSourceId(), game, false);
}
you.getHand().clear();
you.drawCards(count, game);
}
return true;
}
@Override
public ArjunTheShiftingFlameEffect copy() {
return new ArjunTheShiftingFlameEffect(this);
}
}

View file

@ -0,0 +1,52 @@
/*
* Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
* permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice, this list of
* conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice, this list
* of conditions and the following disclaimer in the documentation and/or other materials
* provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
* FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* The views and conclusions contained in the software and documentation are those of the
* authors and should not be interpreted as representing official policies, either expressed
* or implied, of BetaSteward_at_googlemail.com.
*/
package mage.sets.commander2015;
import java.util.UUID;
/**
*
* @author fireshoes
*/
public class BlackMarket extends mage.sets.mercadianmasques.BlackMarket {
public BlackMarket(UUID ownerId) {
super(ownerId);
this.cardNumber = 116;
this.expansionSetCode = "C15";
}
public BlackMarket(final BlackMarket card) {
super(card);
}
@Override
public BlackMarket copy() {
return new BlackMarket(this);
}
}

View file

@ -0,0 +1,121 @@
/*
* Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
* permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice, this list of
* conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice, this list
* of conditions and the following disclaimer in the documentation and/or other materials
* provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
* FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* The views and conclusions contained in the software and documentation are those of the
* authors and should not be interpreted as representing official policies, either expressed
* or implied, of BetaSteward_at_googlemail.com.
*/
package mage.sets.commander2015;
import java.util.UUID;
import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.effects.ReplacementEffectImpl;
import mage.abilities.effects.common.DevourEffect;
import mage.abilities.keyword.DevourAbility;
import mage.cards.CardImpl;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.Outcome;
import mage.constants.Rarity;
import mage.constants.Zone;
import mage.counters.CounterType;
import mage.game.Game;
import mage.game.events.EntersTheBattlefieldEvent;
import mage.game.events.GameEvent;
import mage.game.events.GameEvent.EventType;
import mage.game.permanent.Permanent;
/**
*
* @author fireshoes
*/
public class BloodsporeThrinax extends CardImpl {
public BloodsporeThrinax(UUID ownerId) {
super(ownerId, 33, "Bloodspore Thrinax", Rarity.RARE, new CardType[]{CardType.CREATURE}, "{2}{G}{G}");
this.expansionSetCode = "C15";
this.subtype.add("Lizard");
this.power = new MageInt(2);
this.toughness = new MageInt(2);
// Devour 1
this.addAbility(new DevourAbility(DevourEffect.DevourFactor.Devour1));
// Each other creature you control enters the battlefield with an additional X +1/+1 counters on it, where X is the number of +1/+1 counters on Bloodspire Thrinax.
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, new BloodsporeThrinaxEntersBattlefieldEffect()));
}
public BloodsporeThrinax(final BloodsporeThrinax card) {
super(card);
}
@Override
public BloodsporeThrinax copy() {
return new BloodsporeThrinax(this);
}
}
class BloodsporeThrinaxEntersBattlefieldEffect extends ReplacementEffectImpl {
public BloodsporeThrinaxEntersBattlefieldEffect() {
super(Duration.WhileOnBattlefield, Outcome.BoostCreature);
staticText = "Each other creature you control enters the battlefield with an additional X +1/+1 counters on it, where X is the number of +1/+1 counters on {this}";
}
public BloodsporeThrinaxEntersBattlefieldEffect(BloodsporeThrinaxEntersBattlefieldEffect effect) {
super(effect);
}
@Override
public boolean checksEventType(GameEvent event, Game game) {
return event.getType() == EventType.ENTERS_THE_BATTLEFIELD;
}
@Override
public boolean applies(GameEvent event, Ability source, Game game) {
Permanent creature = ((EntersTheBattlefieldEvent) event).getTarget();
return creature != null && creature.getControllerId().equals(source.getControllerId())
&& creature.getCardType().contains(CardType.CREATURE)
&& !event.getTargetId().equals(source.getSourceId());
}
@Override
public boolean replaceEvent(GameEvent event, Ability source, Game game) {
Permanent sourceCreature = game.getPermanent(source.getSourceId());
Permanent creature = ((EntersTheBattlefieldEvent) event).getTarget();
if (sourceCreature != null && creature != null) {
int amount = sourceCreature.getCounters().getCount(CounterType.P1P1);
if (amount > 0) {
creature.addCounters(CounterType.P1P1.createInstance(amount), game);
}
}
return false;
}
@Override
public BloodsporeThrinaxEntersBattlefieldEffect copy() {
return new BloodsporeThrinaxEntersBattlefieldEffect(this);
}
}

View file

@ -0,0 +1,78 @@
/*
* Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
* permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice, this list of
* conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice, this list
* of conditions and the following disclaimer in the documentation and/or other materials
* provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
* FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* The views and conclusions contained in the software and documentation are those of the
* authors and should not be interpreted as representing official policies, either expressed
* or implied, of BetaSteward_at_googlemail.com.
*/
package mage.sets.commander2015;
import java.util.UUID;
import mage.MageInt;
import mage.abilities.abilityword.ConstellationAbility;
import mage.abilities.effects.common.continuous.BecomesCreatureSourceEffect;
import mage.abilities.keyword.FlyingAbility;
import mage.abilities.keyword.HasteAbility;
import mage.cards.CardImpl;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.Rarity;
import mage.game.permanent.token.Token;
/**
*
* @author fireshoes
*/
public class DaxossTorment extends CardImpl {
public DaxossTorment(UUID ownerId) {
super(ownerId, 18, "Daxos's Torment", Rarity.RARE, new CardType[]{CardType.ENCHANTMENT}, "{3}{B}");
this.expansionSetCode = "C15";
// Constellation - Whenever Daxos's Torment or another enchantment enters the battlefield under your control, Daxos's Torment becomes a 5/5 Demon creature with flying and haste until end of turn in addition to its other types.
this.addAbility(new ConstellationAbility(new BecomesCreatureSourceEffect(new DaxossTormentToken(), "", Duration.EndOfTurn)));
}
public DaxossTorment(final DaxossTorment card) {
super(card);
}
@Override
public DaxossTorment copy() {
return new DaxossTorment(this);
}
}
class DaxossTormentToken extends Token {
public DaxossTormentToken() {
super("", "a 5/5 Demon creature with flying and haste");
cardType.add(CardType.CREATURE);
subtype.add("Demon");
power = new MageInt(5);
toughness = new MageInt(5);
addAbility(FlyingAbility.getInstance());
addAbility(HasteAbility.getInstance());
}
}

View file

@ -0,0 +1,67 @@
/*
* Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
* permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice, this list of
* conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice, this list
* of conditions and the following disclaimer in the documentation and/or other materials
* provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
* FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* The views and conclusions contained in the software and documentation are those of the
* authors and should not be interpreted as representing official policies, either expressed
* or implied, of BetaSteward_at_googlemail.com.
*/
package mage.sets.commander2015;
import java.util.UUID;
import mage.abilities.common.SimpleStaticAbility;
import mage.abilities.effects.Effect;
import mage.abilities.effects.common.continuous.MaximumHandSizeControllerEffect;
import mage.abilities.mana.ColorlessManaAbility;
import mage.cards.CardImpl;
import mage.constants.CardType;
import mage.constants.Duration;
import mage.constants.Rarity;
import mage.constants.Zone;
/**
*
* @author fireshoes
*/
public class ThoughtVessel extends CardImpl {
public ThoughtVessel(UUID ownerId) {
super(ownerId, 55, "Thought Vessel", Rarity.COMMON, new CardType[]{CardType.ARTIFACT}, "{2}");
this.expansionSetCode = "C15";
// You have no maximum hand size.
Effect effect = new MaximumHandSizeControllerEffect(Integer.MAX_VALUE, Duration.WhileOnBattlefield, MaximumHandSizeControllerEffect.HandSizeModification.SET);
this.addAbility(new SimpleStaticAbility(Zone.BATTLEFIELD, effect));
// {T}: Add {1} to your mana pool.
this.addAbility(new ColorlessManaAbility());
}
public ThoughtVessel(final ThoughtVessel card) {
super(card);
}
@Override
public ThoughtVessel copy() {
return new ThoughtVessel(this);
}
}

View file

@ -27635,6 +27635,7 @@ Bastion Protector|Commander 2015|1|R|{2}{W}|Creature - Human Soldier|3|3|Command
Dawnbreak Reclaimer|Commander 2015|2|R|{4}{W}{W}|Creature - Angel|5|5|Flying$At the beginning of your end step, choose a creature card in an opponent's graveyard, then that player chooses a creature card in your graveyard. You may return those cards to the battlefield under their owners' control.|
Grasp of Fate|Commander 2015|3|R|{1}{W}{W}|Enchantment|||When Grasp of Fate enters the battlefield, for each opponent, exile up to one target nonland permanent that player controls until Grasp of Fate leaves the battlefield. <i>(Those permanents return under their owners' control.)</i>|
Kalemne's Captain|Commander 2015|5|R|{3}{W}{W}|Creature - Giant Soldier|5|5|Vigilance${5}{W}{W}: Monstrosity 3. <i>(If this creature isn't monstrous, put three +1/+1 counters on it and it becomes monstrous.)</i>$When Kalemne's Captain becomes monstrous, exile all artifacts and enchantments.|
Righteous Confluence|Commander 2015|7|R|{3}{W}{W}|Sorcery|||Choose three. You may choose the same mode more than once. - Put a 2/2 white Knight creature token with vigilance onto the battlefield; Exile target enchantment; You gain 5 life.|
AEthersnatch|Commander 2015|9|R|{4}{U}{U}|Instant|||Gain control of target spell. You may choose new targets for that spell. If that spell is a permanent, that permanent enters the battlefield under your control.|
Broodbirth Viper|Commander 2015|10|U|{4}{U}|Creature - Snake|3|3|Myriad <i>(Whenever this creature attacks, for each opponent other than defending player, you may put a token that's a copy of this creature onto the battlefield tapped and attacking that player or a planeswalker he or she controls. Exile the tokens at end of combat.)</i>$Whenever Broodbirth Viper deals combat damage to a player, you may draw a card.|
Gigantoplasm|Commander 2015|11|R|{3}{U}|Creature - Shapeshifter|0|0|You may have Gigantoplasm enter the battlefield as a copy of any creature on the battlefield except it gains "{X}: This creature has base power and toughness X/X."|
@ -27642,6 +27643,7 @@ Illusory Ambusher|Commander 2015|12|U|{4}{U}|Creature - Cat Illusion|4|1|Flash <
Mirror Match|Commander 2015|13|U|{4}{U}{U}|Instant|||Cast Mirror Match only during the declare blockers step.$For each creature attacking you or a planeswalker you control, put a token that's a copy of that creature onto the battlefield blocking that creature. Exile those tokens at end of combat.|
Synthetic Destiny|COmmander 2015|15|R|{4}{U}{U}|Instant|||Exile all creatures you control. At the beginning of the next end step, reveal cards from the top of your library until you reveal that many creature cards, put all creature cards revealed this way onto the battlefield, then shuffle the rest of the revealed cards into your library.|
Banshee of the Dread Choir|Commander 2015|16|U|{3}{B}{B}|Creature - Spirit|4|4|Myriad <i>(Whenever this creature attacks, for each opponent other than defending player, you may put a token that's a copy of this creature onto the battlefield tapped and attacking that player or a planeswalker he or she controls. Exile the tokens at end of combat.)</i>$Whenever Banshee of the Dread Choir deals combat damage to a player, that player discards a card.|
Daxos's Torment|Commander 2015|18|R|{3}{B}|Enchantment|||Constellation - Whenever Daxos's Torment or another enchantment enters the battlefield under your control, Daxos's Torment becomes a 5/5 Demon creature with flying and haste until end of turn in addition to its other types.|
Deadly Tempest|Commander 2015|19|R|{4}{B}{B}|Sorcery|||Destroy all creatures. Each player loses life equal to the number of creatures he or she controlled that were destroyed this way.|
Dread Summons|Commander 2015|20|R|{X}{B}{B}|Sorcery|||Each player puts the top X cards of his or her library into his or her graveyard. For each creature card put into a graveyard this way, you put a 2/2 black Zombie creature token onto the battlefield tapped.|
Scourge of Nel Toth|Commander 2015|21|R|{5}{B}{B}|Creature - Zombie Dragon|6|6|Flying$You may cast Scourge of Nel Toth from your graveyard by paying {B}{B} and sacrificing two creatures rather than paying its mana cost.|
@ -27649,9 +27651,10 @@ Awaken the Sky Tyrant|Commander 2015|24|R|{3}{R}|Enchantment|||When a source an
Dream Pillager|Commander 2015|25|R|{5}{R}{R}|Creature - Dragon|4|4|Flying$Whenever Dream Pillager deals combat damage to a player, exile that many cards from the top of your library. Until end of turn, you may play nonland cards exiled this way.|
Fiery Confluence|Commander 2015|26|R|{2}{R}{R}|Sorcery|||Choose three. You may choose the same mode more than once. - Fiery Confluence deals 1 damage to each creature; Fiery Confluence deals 2 damage to each opponent; Destroy target artifact.|
Magus of the Wheel|Commander 2015|27|R|{2}{R}|Creature - Human Wizard|3|3|{1}{R}, {T}, Sacrifice Magus of the Wheel: Each player discards his or her hand, then draws seven cards.|
Meteor Volley|Commander 2015|28|U|{X}{R}{R}{R}|Sorcery|||Meteor Volley deals 4 damage to X target creatures and/or players.|
Meteor Volley|Commander 2015|28|U|{X}{R}{R}{R}|Sorcery|||Meteor Volley deals 4 damage to each of X target creatures and/or players.|
Mizzix's Mastery|Commander 2015|29|R|{3}{R}|Sorcery|||Exile target card that's an instant or sorcery from your graveyard. For each card exiled this way, copy it, and you may cast the copy without paying its mana cost. Exile Mizzix's Mastery.$Overload {5}{R}{R}{R} <i>(You may cast this spell for its overload cost. If you do, change its text by replacing all instances of "target" with "each.")</i>|
Arachnogenesis|Commander 2015|32|R|{2}{G}|Instant|||Put X 1/2 green Spider creature tokens with reach onto the battlefield, where X is the number of creatures attacking you. Prevent all combat damage that would be dealt this turn by non-Spider creatures.|
Bloodspore Thrinax|Commander 2015|33|R|{2}{G}{G}|Creature - Lizard|2|2|Devour 1 <i>(As this enters the battlefield, you mya sacrifice any number of creatures. This creature enters the battlefield with that many +1/+1 counters on it.)</i>$Each other creature you control enters the battlefield with an additional X +1/+1 counters on it, where X is the number of +1/+1 counters on Bloodspire Thrinax.|
Centaur Vinecrash|Commander 2015|35|R|{3}{G}|Creature - Centaur Plant|1|1|Trample$Vine Centaur enters the battlefield with a +1/+1 counter on it for each land in all graveyards.$Whenever a land is put into a graveyard from anywhere, you may pay {G}{G}. If you do, return Vine Centaur from your graveyard to the battlefield.|
Ezuri's Predation|Commander 2015|36|R|{5}{G}{G}{G}|Sorcery|||For each creature your opponents control, put a 4/4 green Beast creature token onto the battlefield. Each of those Beasts fights a different one of those creatures.|
Great Oak Guardian|Commander 2015|37|U|{5}{G}|Creature - Treefolk|4|5|Flash <i>(You may cast this spell any time you could cast an instant.)</i>$Reach$When Great Oak Guardian enters the battlefield, creatures target player controls get +2/+2 until end of turn. Untap them.|
@ -27659,9 +27662,11 @@ Pathbreaker Ibex|Commander 2015|38|R|{4}{G}{G}|Creature - Goat|3|3|Whenever Path
Skullwinder|Commander 2015|39|U|{2}{G}|Creature - Snake|1|3|Deathtouch <i>(Any amount of damage this creature deals to a creature is enough to destroy it.)</i>$When Skullwinder enters the battlefield, return target card from your graveyard to your hand, then choose an opponent. That player returns a card from his or her graveyard to his or her hand.|
Verdant Confluence|Commander 2015|40|R|{4}{G}{G}|Sorcery|||Choose three. You may choose the same mode more than once. - Put two +1/+1 counters on target creature; Return target permanent card from your graveyard to your hand; Search your library for a basic land card, put it onto the battlefield tapped, then shuffle your library.|
Anya, Merciless Angel|Commander 2015|41|M|{3}{R}{W}|Legendary Creature - Angel|4|4|Flying$Anya, Merciless Angel gets +3/+3 for each opponent whose life total is less than half his or her starting life total.$As long as an opponent's life total is less than half his or her starting life total, Anya has indestructible.|
Arjun, the Shifting Flame|Commander 2015|42|M|{4}{U}{R}|Legendary Creature - Sphinx Wizard|5|5|Flying$Whenever you cast a spell, put the cards in your hand on the bottom of your library in any order, then draw that many cards.|
Daxos the Returned|Commander 2015|43|M|{1}{W}{B}|Legendary Creature - Zombie Soldier|2|2|Whenever you cast an enchantment spell, you get an experience counter.${1}{W}{B}: Put a white and black Spirit enchantment creature token onto the battlefield. It has "This creature's power and toughness are each equal to the number of experience counters you have."|
Ezuri, Claw of Progress|Commander 2015|44|M|{2}{G}{U}|Legendary Creature - Elf Warrior|3|3|Whenever a creature with power 2 or less enters the battlefield under your control, you get an experience counter.$At the beginning of combat on your turn, put X +1/+1 counters on another target creature you control, where X is the number of experience counters you have.|
Kalemne, Disciple of Iroas|Commander 2015|45|M|{2}{R}{W}|Legendary Creature - Giant Soldier|3|3|Double strike, vigilance$Whenever you cast a creature spell with converted mana cost 5 or greater, you get an experience counter.$Kalemne, Disciple of Iroas gets +1/+1 for each experience counter you have.|
Karlov of the Ghost Council|Commander 2015|46|M|{W}{B}|Legendary Creature - Spirit Advisor|2|2|Whenever you gain life, put two +1/+1 counter on Karlov of the Ghost Council.${W}{B}, Remove six +1/+1 counters from Karlov of the Ghost Council: Exile target creature.|
Kaseto, Orochi Archmage|Commander 2015|47|M|{1}{G}{U}|Legendary Creature - Snake Wizard|2|2|{G}{U}: Target creature can't be blocked this turn. If that creature is a Snake, it gets +2/+2 until end of turn.|
Mazirek, Kraul Death Priest|Commander 2015|48|M|{3}{B}{G}|Legendary Creature - Insect Shaman|2|2|Flying$Whenever a player sacrifices another permanent, put a +1/+1 counter on each creature you control.|
Meren of Clan Nel Toth|Commander 2015|49|M|{2}{B}{G}|Legendary Creature - Human Shaman|3|4|Whenever another creature you control dies, you get an experience counter.$At the beginning of your end step, choose target creature card in your graveyard. If that card's converted mana cost is less than or equal to the number of experience counters you have, return it to the battlefield. Otherwise, put it into your hand.|
@ -27670,7 +27675,9 @@ Blade of Selves|Commander 2015|51|R|{2}|Artifact - Equipment|||Equipped creature
Sandstone Oracle|Commander 2015|52|U|{7}|Artifact Creature - Sphinx|4|4|Flying$When Sandstone Oracle enters the battlefield, choose an opponent. If that player has more cards in hand that you, draw cards equal to the difference.|
Scytheclaw|Commander 2015|53|R|{5}|Artifact - Equipment|||Living weapon <i>(When this Equipment enter the battlefield, put a 0/0 black Germ creature token onto the battlefield, then attach this to it.)</i>$Equipped creature gets +1/+1.$Whenever equipped creature deals combat damage to a player, that player loses half of his or her life, round up.$Equip {3}|
Seal of the Guildpact|Commander 2015|54|R|{5}|Artifact|||As Seal of the Guildpact enters the battlefield, choose two colors.$Each spell you cast costs {1} less to cast for each of the chosen colors it is.|
Thought Vessel|Commander 2015|55|C|{2}|Artifact|||You have no maximum hand size.${T}: Add {1} to your mana pool.|
Command Beacon|Commander 2015|56|R||Land|||{T}: Add {1} to your mana pool.${T}, Sacrifice Command Beacon: Put your commander into your hand from the command zone.|
Black Market|Commander 2015|116|R|{3}{B}{B}|Enchantment|||Whenever a creature dies, put a charge counter on Black Market.$At the beginning of your precombat main phase, add {B} to your mana pool for each charge counter on Black Market.|
Eternal Witness|Commander 2015|183|U|{1}{G}{G}|Creature - Human Shaman|2|1|When Eternal Witness enters the battlefield, you may return target card from your graveyard to your hand.|
Spider Spawning|Commander 2015|202|U|{4}{G}|Sorcery|||Put a 1/2 green Spider creature token with reach onto the battlefield for each creature card in your graveyard.$Flashback {6}{B} <i>(You may cast this card from your graveyard for its flashback cost. Then exile it.)</i>|
Coiling Oracle|Commander 2015|213|C|{U}{G}|Creature - Snake Elf Druid|1|1|When Coiling Oracle enters the battlefield, reveal the top card of your library. If it's a land card, put it onto the battlefield. Otherwise, put that card into your hand.|