Updates "Can't be countered" into Replacement Effects (#4429)

* isCounterableBy cleanup

* ~ move to Card

* update the rest

* ~ fix unused import

* ~ fix Counter better check for ValidSA instead of ValidCard

* ~remove last piece of text
This commit is contained in:
Hans Mackowiak
2023-12-26 04:55:35 +01:00
committed by GitHub
parent 7f5e75bdb0
commit e6a9ea20c7
109 changed files with 166 additions and 211 deletions

View File

@@ -192,13 +192,12 @@ public class AiController {
if ("DestroyCreature".equals(curse) && sa.isSpell() && host.isCreature()
&& !host.hasKeyword(Keyword.INDESTRUCTIBLE)) {
return true;
} else if ("CounterEnchantment".equals(curse) && sa.isSpell() && host.isEnchantment()
&& CardFactoryUtil.isCounterable(host)) {
} else if ("CounterEnchantment".equals(curse) && sa.isSpell() && host.isEnchantment() && sa.isCounterableBy(null)) {
return true;
} else if ("ChaliceOfTheVoid".equals(curse) && sa.isSpell() && CardFactoryUtil.isCounterable(host)
} else if ("ChaliceOfTheVoid".equals(curse) && sa.isSpell() && sa.isCounterableBy(null)
&& host.getCMC() == c.getCounters(CounterEnumType.CHARGE)) {
return true;
} else if ("BazaarOfWonders".equals(curse) && sa.isSpell() && CardFactoryUtil.isCounterable(host)) {
} else if ("BazaarOfWonders".equals(curse) && sa.isSpell() && sa.isCounterableBy(null)) {
String hostName = host.getName();
for (Card card : ccvGameBattlefield) {
if (!card.isToken() && card.sharesNameWith(host)) {
@@ -815,7 +814,7 @@ public class AiController {
// Account for possible Ward after the spell is fully targeted
// TODO: ideally, this should be done while targeting, so that a different target can be preferred if the best
// one is warded and can't be paid for. (currently it will be stuck with the target until it could pay)
if (!sa.isSpell() || CardFactoryUtil.isCounterable(host)) {
if (!sa.isSpell() || sa.isCounterableBy(null)) {
for (TargetChoices tc : sa.getAllTargetChoices()) {
for (Card tgt : tc.getTargetCards()) {
// TODO some older cards don't use the keyword, so check for trigger instead

View File

@@ -522,11 +522,12 @@ public class ComputerUtilCost {
sa.setActivatingPlayer(player, true); // complaints on NPE had came before this line was added.
}
final boolean cannotBeCountered = !CardFactoryUtil.isCounterable(sa.getHostCard());
boolean cannotBeCountered = false;
// Check for stuff like Nether Void
int extraManaNeeded = 0;
if (sa instanceof Spell) {
cannotBeCountered = !sa.isCounterableBy(null);
for (Card c : player.getGame().getCardsIn(ZoneType.Battlefield)) {
final String snem = c.getSVar("AI_SpellsNeedExtraMana");
if (!StringUtils.isBlank(snem)) {
@@ -796,7 +797,7 @@ public class ComputerUtilCost {
if (ApiType.Counter.equals(sa.getApi())) {
List<SpellAbility> spells = AbilityUtils.getDefinedSpellAbilities(source, sa.getParamOrDefault("Defined", "Targeted"), sa);
for (SpellAbility toBeCountered : spells) {
if (toBeCountered.isSpell() && !CardFactoryUtil.isCounterable(toBeCountered.getHostCard())) {
if (!toBeCountered.isCounterableBy(sa)) {
return false;
}
// no reason to pay if we don't plan to confirm

View File

@@ -7,7 +7,6 @@ import forge.ai.ComputerUtilCard;
import forge.ai.SpellAbilityAi;
import forge.game.Game;
import forge.game.card.Card;
import forge.game.card.CardFactoryUtil;
import forge.game.card.CardLists;
import forge.game.player.Player;
import forge.game.spellability.SpellAbility;
@@ -40,7 +39,7 @@ public class BidLifeAi extends SpellAbilityAi {
return false;
}
final SpellAbility topSA = game.getStack().peekAbility();
if (!CardFactoryUtil.isCounterableBy(topSA.getHostCard(), sa) || aiPlayer.equals(topSA.getActivatingPlayer())) {
if (!topSA.isCounterableBy(sa) || aiPlayer.equals(topSA.getActivatingPlayer())) {
return false;
}
if (sa.canTargetSpellAbility(topSA)) {

View File

@@ -19,7 +19,6 @@ import forge.game.Game;
import forge.game.ability.AbilityUtils;
import forge.game.ability.ApiType;
import forge.game.card.Card;
import forge.game.card.CardFactoryUtil;
import forge.game.cost.Cost;
import forge.game.cost.CostDiscard;
import forge.game.cost.CostExile;
@@ -64,7 +63,7 @@ public class CounterAi extends SpellAbilityAi {
if (sa.usesTargeting()) {
final SpellAbility topSA = ComputerUtilAbility.getTopSpellAbilityOnStack(game, sa);
if ((topSA.isSpell() && !CardFactoryUtil.isCounterableBy(topSA.getHostCard(), sa)) || ai.getYourTeam().contains(topSA.getActivatingPlayer())) {
if ((topSA.isSpell() && !topSA.isCounterableBy(sa)) || ai.getYourTeam().contains(topSA.getActivatingPlayer())) {
// might as well check for player's friendliness
return false;
} else if (sa.hasParam("ConditionWouldDestroy") && !CounterEffect.checkForConditionWouldDestroy(sa, topSA)) {
@@ -325,7 +324,7 @@ public class CounterAi extends SpellAbilityAi {
leastBadOption = tgtSA;
}
if ((tgtSA.isSpell() && !CardFactoryUtil.isCounterableBy(tgtSA.getHostCard(), sa)) ||
if ((tgtSA.isSpell() && !tgtSA.isCounterableBy(sa)) ||
tgtSA.getActivatingPlayer() == ai ||
!tgtSA.getActivatingPlayer().isOpponentOf(ai)) {
// Is this a "better" least bad option

View File

@@ -132,7 +132,6 @@ public enum AbilityKey {
SurveilNum("SurveilNum"),
Target("Target"),
Targets("Targets"),
TgtSA("TgtSA"),
Token("Token"),
TokenNum("TokenNum"),
Vehicle("Vehicle"),

View File

@@ -100,7 +100,7 @@ public class CounterEffect extends SpellAbilityEffect {
sa.getHostCard().addRemembered(tgtSACard);
}
if (tgtSA.isSpell() && !CardFactoryUtil.isCounterableBy(tgtSACard, sa)) {
if (tgtSA.isSpell() && !tgtSA.isCounterableBy(sa)) {
continue;
}
@@ -109,7 +109,7 @@ public class CounterEffect extends SpellAbilityEffect {
continue;
}
if (sa.hasParam("CounterNoManaSpell") && tgtSA.getTotalManaSpent() != 0) {
if (sa.hasParam("CounterNoManaSpell") && tgtSA.isSpell() && tgtSA.getTotalManaSpent() != 0) {
continue;
}
@@ -276,8 +276,8 @@ public class CounterEffect extends SpellAbilityEffect {
// Run any applicable replacement effects.
final Map<AbilityKey, Object> repParams = AbilityKey.mapFromAffected(tgtSA.getHostCard());
repParams.put(AbilityKey.TgtSA, tgtSA);
repParams.put(AbilityKey.Cause, srcSA.getHostCard());
repParams.put(AbilityKey.SpellAbility, tgtSA);
repParams.put(AbilityKey.Cause, srcSA);
if (game.getReplacementHandler().run(ReplacementType.Counter, repParams) != ReplacementResult.NotReplaced) {
return false;
}
@@ -329,7 +329,7 @@ public class CounterEffect extends SpellAbilityEffect {
// Run triggers
final Map<AbilityKey, Object> runParams = AbilityKey.mapFromCard(c);
runParams.put(AbilityKey.Player, tgtSA.getActivatingPlayer());
runParams.put(AbilityKey.Cause, srcSA.getHostCard());
runParams.put(AbilityKey.Cause, srcSA);
runParams.put(AbilityKey.CounteredSA, tgtSA);
game.getTriggerHandler().runTrigger(TriggerType.Countered, runParams, false);

View File

@@ -2076,12 +2076,7 @@ public class Card extends GameEntity implements Comparable<Card>, IHasSVars {
final StringBuilder sbLong = new StringBuilder();
for (String keyword : getHiddenExtrinsicKeywords()) {
if (keyword.startsWith("CantBeCounteredBy")) {
final String[] p = keyword.split(":");
sbLong.append(p[2]).append("\r\n");
} else {
sbLong.append(keyword).append("\r\n");
}
sbLong.append(keyword).append("\r\n");
}
if (sb.length() > 0) {
sb.append("\r\n");
@@ -2107,10 +2102,7 @@ public class Card extends GameEntity implements Comparable<Card>, IHasSVars {
for (KeywordInterface inst : keywords) {
String keyword = inst.getOriginal();
try {
if (keyword.startsWith("CantBeCounteredBy")) {
final String[] p = keyword.split(":");
sbLong.append(p[2]).append("\r\n");
} else if (keyword.startsWith("etbCounter")) {
if (keyword.startsWith("etbCounter")) {
final String[] p = keyword.split(":");
final StringBuilder s = new StringBuilder();
if (p.length > 4) {
@@ -2925,8 +2917,7 @@ public class Card extends GameEntity implements Comparable<Card>, IHasSVars {
sbCost.append(cost.toSimpleString());
sbAfter.append(sbCost).append(" (").append(inst.getReminderText()).append(")");
sbAfter.append("\r\n");
} else if (keyword.equals("CARDNAME can't be countered.") || keyword.equals("This spell can't be " +
"countered.") || keyword.equals("Remove CARDNAME from your deck before playing if you're not " +
} else if (keyword.equals("Remove CARDNAME from your deck before playing if you're not " +
"playing for ante.")) {
sbBefore.append(keyword);
sbBefore.append("\r\n");
@@ -5234,7 +5225,7 @@ public class Card extends GameEntity implements Comparable<Card>, IHasSVars {
}
public final boolean isSpell() {
return isInstant() || isSorcery() || (isAura() && !isInZone((ZoneType.Battlefield)));
return isInstant() || isSorcery() || (isAura() && !isInZone(ZoneType.Battlefield));
}
public final boolean isLand() { return getType().isLand(); }

View File

@@ -63,7 +63,6 @@ import forge.game.player.Player;
import forge.game.replacement.ReplacementEffect;
import forge.game.replacement.ReplacementHandler;
import forge.game.replacement.ReplacementLayer;
import forge.game.replacement.ReplacementType;
import forge.game.spellability.AbilityStatic;
import forge.game.spellability.AbilitySub;
import forge.game.spellability.AlternativeCost;
@@ -243,52 +242,6 @@ public class CardFactoryUtil {
return AbilityFactory.getAbility(ab, sourceCard);
}
/**
* <p>
* isCounterable.
* </p>
*
* @param c
* a {@link forge.game.card.Card} object.
* @return a boolean.
*/
public static boolean isCounterable(final Card c) {
if (c.hasKeyword("CARDNAME can't be countered.") || c.hasKeyword("This spell can't be countered.")) {
return false;
}
final Map<AbilityKey, Object> repParams = AbilityKey.mapFromAffected(c);
List<ReplacementEffect> list = c.getGame().getReplacementHandler().getReplacementList(ReplacementType.Counter, repParams, ReplacementLayer.CantHappen);
return list.isEmpty();
}
/**
* <p>
* isCounterableBy.
* </p>
*
* @param c
* a {@link forge.game.card.Card} object.
* @param sa
* the sa
* @return a boolean.
*/
public static boolean isCounterableBy(final Card c, final SpellAbility sa) {
if (!isCounterable(c)) {
return false;
}
for (String o : c.getHiddenExtrinsicKeywords()) {
if (o.startsWith("CantBeCounteredBy")) {
final String[] m = o.split(":");
if (sa.isValid(m[1].split(","), c.getController(), c, null)) {
return false;
}
}
}
return true;
}
/**
* <p>
* countOccurrences.

View File

@@ -47,16 +47,11 @@ public class ReplaceCounter extends ReplacementEffect {
if (!matchesValidParam("ValidCard", runParams.get(AbilityKey.Affected))) {
return false;
}
if (!matchesValidParam("ValidCause", runParams.get(AbilityKey.Cause))) {
if (!matchesValidParam("ValidSA", runParams.get(AbilityKey.SpellAbility))) {
return false;
}
if (hasParam("ValidType")) {
final SpellAbility spellAbility = (SpellAbility) runParams.get(AbilityKey.TgtSA);
String type = getParam("ValidType");
if (type.equals("Spell") && !spellAbility.isSpell()) {
return false;
}
if (!matchesValidParam("ValidCause", runParams.get(AbilityKey.Cause))) {
return false;
}
return true;
}

View File

@@ -17,17 +17,24 @@
*/
package forge.game.spellability;
import java.util.List;
import java.util.Map;
import org.apache.commons.lang3.ObjectUtils;
import forge.card.CardStateName;
import forge.card.mana.ManaCost;
import forge.game.Game;
import forge.game.ability.AbilityKey;
import forge.game.card.Card;
import forge.game.card.CardFactory;
import forge.game.card.CardUtil;
import forge.game.cost.Cost;
import forge.game.cost.CostPayment;
import forge.game.player.Player;
import forge.game.replacement.ReplacementEffect;
import forge.game.replacement.ReplacementLayer;
import forge.game.replacement.ReplacementType;
import forge.game.staticability.StaticAbilityCantBeCast;
import forge.game.zone.ZoneType;
@@ -205,4 +212,12 @@ public abstract class Spell extends SpellAbility implements java.io.Serializable
return lkicheck ? source : null;
}
public boolean isCounterableBy(final SpellAbility sa) {
final Map<AbilityKey, Object> repParams = AbilityKey.mapFromAffected(getHostCard());
repParams.put(AbilityKey.SpellAbility, this);
repParams.put(AbilityKey.Cause, sa);
List<ReplacementEffect> list = getHostCard().getGame().getReplacementHandler().getReplacementList(ReplacementType.Counter, repParams, ReplacementLayer.CantHappen);
return list.isEmpty();
}
}

View File

@@ -2533,4 +2533,8 @@ public abstract class SpellAbility extends CardTraitBase implements ISpellAbilit
}
return true;
}
public boolean isCounterableBy(SpellAbility sa) {
return true;
}
}

View File

@@ -2,6 +2,6 @@ Name:Ghalta's Presence
ManaCost:no cost
Colors:Green
Types:Enchantment
S:Mode$ Continuous | Affected$ Card | AddHiddenKeyword$ This spell can't be countered. | AffectedZone$ Stack | EffectZone$ Command | Description$ Spells can't be countered.
R:Event$ Counter | ValidCard$ Card | ValidSA$ Spell | Layer$ CantHappen | ActiveZones$ Battlefield | Description$ Spells can't be countered.
S:Mode$ RaiseCost | ValidCard$ Card.nonCreature+nonBattle | Type$ Spell | Activator$ Opponent | EffectZone$ Command | Amount$ 2 | Description$ Noncreature, nonbattle spells your opponent cast cost {2} more to cast.
Oracle:Spells can't be countered.\nNoncreature, nonbattle spells your opponent cast cost {2} more to cast.

View File

@@ -1,6 +1,6 @@
Name:Abrupt Decay
ManaCost:B G
Types:Instant
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
A:SP$ Destroy | Cost$ B G | ValidTgts$ Permanent.nonLand+cmcLE3 | TgtPrompt$ Select target nonland permanent with mana value 3 or less | SpellDescription$ Destroy target nonland permanent with mana value 3 or less.
Oracle:This spell can't be countered.\nDestroy target nonland permanent with mana value 3 or less.

View File

@@ -8,5 +8,5 @@ K:Protection from white
K:Protection from blue
A:AB$ Pump | Cost$ R | Defined$ Self | NumAtt$ 1 | SpellDescription$ CARDNAME gets +1/+0 until end of turn.
K:Morph:3 R R R
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
Oracle:This spell can't be countered.\nFlying, trample, protection from white and from blue\n{R}: Akroma, Angel of Fury gets +1/+0 until end of turn.\nMorph {3}{R}{R}{R} (You may cast this card face down as a 2/2 creature for {3}. Turn it face up any time for its morph cost.)

View File

@@ -2,7 +2,7 @@ Name:Allosaurus Shepherd
ManaCost:G
Types:Creature Elf Shaman
PT:1/1
K:CARDNAME can't be countered.
S:Mode$ Continuous | Affected$ Card.Green+YouCtrl | AffectedZone$ Stack | AddHiddenKeyword$ CARDNAME can't be countered. | Description$ Green spells you control can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
R:Event$ Counter | ValidSA$ Spell.Green+YouCtrl | Layer$ CantHappen | ActiveZones$ Battlefield | Description$ Green spells you control can't be countered.
A:AB$ AnimateAll | Cost$ 4 G G | ValidCards$ Creature.Elf+YouCtrl | Power$ 5 | Toughness$ 5 | Types$ Dinosaur | StackDescription$ SpellDescription | SpellDescription$ Until end of turn, each Elf creature you control has base power and toughness 5/5 and becomes a Dinosaur in addition to its other creature types.
Oracle:Allosaurus Shepherd can't be countered.\nGreen spells you control can't be countered.\n{4}{G}{G}: Until end of turn, each Elf creature you control has base power and toughness 5/5 and becomes a Dinosaur in addition to its other creature types.

View File

@@ -2,7 +2,7 @@ Name:Altered Ego
ManaCost:X 2 G U
Types:Creature Shapeshifter
PT:0/0
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
K:ETBReplacement:Copy:DBCopy:Optional
SVar:DBCopy:DB$ Clone | Choices$ Creature.Other | SubAbility$ DBAddCounter | SpellDescription$ You may have CARDNAME enter the battlefield as a copy of any creature on the battlefield, except it enters with X additional +1/+1 counters on it.
SVar:DBAddCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | ETB$ True | CounterNum$ X

View File

@@ -1,8 +1,8 @@
Name:Autumn's Veil
ManaCost:G
Types:Instant
A:SP$ Effect | StaticAbilities$ AntiMagic,STCantBeTarget | SpellDescription$ Spells you control can't be countered by blue or black spells this turn, and creatures you control can't be the targets of blue or black spells this turn.
SVar:AntiMagic:Mode$ Continuous | Affected$ Card.YouCtrl | AffectedZone$ Stack | EffectZone$ Command | AddHiddenKeyword$ CantBeCounteredBy:Spell.Blue,Spell.Black:CARDNAME can't be countered by blue or black spells. | Description$ Spells you control can't be countered by blue or black spells this turn.
A:SP$ Effect | ReplacementEffects$ AntiMagic | StaticAbilities$ STCantBeTarget | SpellDescription$ Spells you control can't be countered by blue or black spells this turn, and creatures you control can't be the targets of blue or black spells this turn.
SVar:AntiMagic:Event$ Counter | ValidSA$ Spell.YouCtrl | ValidCause$ Spell.Blue,Spell.Black | Layer$ CantHappen | Description$ Spells you control can't be countered by blue or black spells this turn.
SVar:STCantBeTarget:Mode$ CantTarget | ValidCard$ Creature.YouCtrl | ValidSource$ Card.Blue,Card.Black | ValidSA$ Spell | EffectZone$ Command | Description$ Creatures you control can't be the targets of blue or black spells this turn.
AI:RemoveDeck:All
AI:RemoveDeck:Random

View File

@@ -1,8 +1,8 @@
Name:Banefire
ManaCost:X R
Types:Sorcery
A:SP$ DealDamage | Cost$ X R | ValidTgts$ Any | NumDmg$ X | ConditionCheckSVar$ X | ConditionSVarCompare$ LT5 | SubAbility$ BanefulDmg | SpellDescription$ CARDNAME deals X damage to any target.
SVar:BanefulDmg:DB$ DealDamage | Defined$ Targeted | NumDmg$ X | NoPrevention$ True | ConditionCheckSVar$ X | ConditionSVarCompare$ GE5 | StackDescription$ If X is 5 or more, CARDNAME can't be countered by spells or abilities and the damage can't be prevented.
S:Mode$ Continuous | EffectZone$ All | CharacteristicDefining$ True | AddHiddenKeyword$ This spell can't be countered. | CheckSVar$ X | SVarCompare$ GE5 | Description$ If X is 5 or more, CARDNAME can't be countered by spells or abilities and the damage can't be prevented.
A:SP$ DealDamage | ValidTgts$ Any | NumDmg$ X | SpellDescription$ CARDNAME deals X damage to any target.
S:Mode$ CantPreventDamage | ValidSource$ Spell.Self | EffectZone$ Stack | CheckSVar$ X | SVarCompare$ GE5 | Description$ If X is 5 or more, CARDNAME can't be countered by spells or abilities and the damage can't be prevented.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | CheckSVar$ X | SVarCompare$ GE5 | Secondary$ True | Description$ If X is 5 or more, CARDNAME can't be countered by spells or abilities and the damage can't be prevented.
SVar:X:Count$xPaid
Oracle:Banefire deals X damage to any target.\nIf X is 5 or more, this spell can't be countered and the damage can't be prevented.

View File

@@ -3,7 +3,7 @@ ManaCost:1 U
Types:Legendary Creature Human Wizard
PT:1/3
S:Mode$ ReduceCost | ValidCard$ Instant,Sorcery | Type$ Spell | Activator$ You | Amount$ 1 | Description$ Instant and sorcery spells you cast cost {1} less to cast.
T:Mode$ Countered | ValidCause$ Card.YouCtrl,Emblem.YouCtrl | ValidCard$ Card | ValidType$ Spell | TriggerZones$ Battlefield | Execute$ TrigLoot | TriggerDescription$ Whenever a spell or ability you control counters a spell, you may draw a card. If you do, discard a card.
T:Mode$ Countered | ValidCause$ SpellAbility.YouCtrl | ValidSA$ Spell | TriggerZones$ Battlefield | Execute$ TrigLoot | TriggerDescription$ Whenever a spell or ability you control counters a spell, you may draw a card. If you do, discard a card.
SVar:TrigLoot:AB$ Discard | Defined$ You | Mode$ TgtChoose | NumCards$ 1 | Cost$ Draw<1/You>
DeckHints:Type$Instant|Sorcery
Oracle:Instant and sorcery spells you cast cost {1} less to cast.\nWhenever a spell or ability you control counters a spell, you may draw a card. If you do, discard a card.

View File

@@ -2,6 +2,6 @@ Name:Blurred Mongoose
ManaCost:1 G
Types:Creature Mongoose
PT:2/1
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
K:Shroud
Oracle:This spell can't be countered.\nShroud (This creature can't be the target of spells or abilities.)

View File

@@ -1,7 +1,7 @@
Name:Bound
ManaCost:3 B G
Types:Instant
A:SP$ Sacrifice | Cost$ 3 B G | SacValid$ Creature | RememberSacrificed$ True | SubAbility$ DBReturnChoose | SpellDescription$ Sacrifice a creature. Return up to X cards from your graveyard to your hand, where X is the number of colors that creature was. Exile this card.
A:SP$ Sacrifice | SacValid$ Creature | RememberSacrificed$ True | SubAbility$ DBReturnChoose | SpellDescription$ Sacrifice a creature. Return up to X cards from your graveyard to your hand, where X is the number of colors that creature was. Exile this card.
SVar:DBReturnChoose:DB$ ChooseCard | Defined$ You | Choices$ Card.YouOwn | ChoiceZone$ Graveyard | Amount$ X | SubAbility$ DBReturn
SVar:DBReturn:DB$ ChangeZone | Origin$ Graveyard | Destination$ Hand | Defined$ ChosenCard | SubAbility$ ExileSelf
SVar:ExileSelf:DB$ ChangeZone | Origin$ Stack | Destination$ Exile | Defined$ Self | SubAbility$ DBCleanup
@@ -15,7 +15,7 @@ ALTERNATE
Name:Determined
ManaCost:G U
Types:Instant
A:SP$ Effect | Cost$ G U | StaticAbilities$ STCantbeCountered | SubAbility$ DBDraw | SpellDescription$ Other spells you control can't be countered this turn. Draw a card.
SVar:STCantbeCountered:Mode$ Continuous | EffectZone$ Command | AffectedZone$ Stack | Affected$ Card.YouCtrl | AddHiddenKeyword$ CARDNAME can't be countered. | Description$ Other spells you control can't be countered this turn.
A:SP$ Effect | ReplacementEffects$ CantbeCountered | SubAbility$ DBDraw | SpellDescription$ Other spells you control can't be countered this turn. Draw a card.
SVar:CantbeCountered:Event$ Counter | ValidSA$ Spell.YouCtrl | Layer$ CantHappen | Description$ Other spells you control can't be countered this turn.
SVar:DBDraw:DB$ Draw | Defined$ You | NumCards$ 1
Oracle:Other spells you control can't be countered this turn.\nDraw a card.

View File

@@ -2,7 +2,7 @@ Name:Carnage Tyrant
ManaCost:4 G G
Types:Creature Dinosaur
PT:7/6
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
K:Trample
K:Hexproof
Oracle:This spell can't be countered.\nTrample, hexproof

View File

@@ -2,7 +2,7 @@ Name:Chandra, Awakened Inferno
ManaCost:4 R R
Types:Legendary Planeswalker Chandra
Loyalty:6
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
A:AB$ Effect | Cost$ AddCounter<2/LOYALTY> | Planeswalker$ True | EffectOwner$ Player.Opponent | Name$ Emblem - Chandra, Awakened Inferno | Triggers$ BOTTrig | Duration$ Permanent | AILogic$ Always | SpellDescription$ Each opponent gets an emblem with "At the beginning of your upkeep, this emblem deals 1 damage to you."
SVar:BOTTrig:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Command | Execute$ ChandraDmg | TriggerDescription$ At the beginning of your upkeep, this emblem deals 1 damage to you.
SVar:ChandraDmg:DB$ DealDamage | Defined$ TriggeredPlayer | NumDmg$ 1

View File

@@ -1,7 +1,7 @@
Name:Chimil, the Inner Sun
ManaCost:6
Types:Legendary Artifact
S:Mode$ Continuous | Affected$ Card.YouCtrl | AffectedZone$ Stack | AddHiddenKeyword$ This spell can't be countered. | Description$ Spells you control can't be countered.
R:Event$ Counter | ValidSA$ Spell.YouCtrl | Layer$ CantHappen | ActiveZones$ Battlefield | Description$ Spells you control can't be countered.
T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigDiscover | TriggerDescription$ At the beginning of your end step, discover 5. (Exile cards from the top of your library until you exile a nonland card with mana value 5 or less. Cast it without paying its mana cost or put it into your hand. Put the rest on the bottom in a random order.)
SVar:TrigDiscover:DB$ Discover | Num$ 5
Oracle:Spells you control can't be countered.\nAt the beginning of your end step, discover 5. (Exile cards from the top of your library until you exile a nonland card with mana value 5 or less. Cast it without paying its mana cost or put it into your hand. Put the rest on the bottom in a random order.)

View File

@@ -4,7 +4,7 @@ Types:Legendary Creature Elder Dragon
PT:7/7
K:Flash
K:Flying
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
A:AB$ Animate | Cost$ Discard<1/Card> | Types$ Human | Power$ 1 | Toughness$ 1 | Keywords$ Hexproof | RemoveAllAbilities$ True | RemoveCreatureTypes$ True | SubAbility$ DBUnblockable | SpellDescription$ Until end of turn, CARDNAME becomes a Human with base power and toughness 1/1, loses all abilities, and gains hexproof. It can't be blocked this turn.
SVar:DBUnblockable:DB$ Effect | ExileOnMoved$ Battlefield | RememberObjects$ Self | StaticAbilities$ Unblockable
SVar:Unblockable:Mode$ CantBlockBy | ValidAttacker$ Card.IsRemembered | Description$ This creature can't be blocked this turn.

View File

@@ -1,7 +1,7 @@
Name:Combust
ManaCost:1 R
Types:Instant
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
A:SP$ DealDamage | Cost$ 1 R | ValidTgts$ Creature.White,Creature.Blue | NumDmg$ 5 | NoPrevention$ True | TgtPrompt$ Select target white or blue creature. | SpellDescription$ CARDNAME deals 5 damage to target white or blue creature. The damage can't be prevented.
AI:RemoveDeck:Random
Oracle:This spell can't be countered.\nCombust deals 5 damage to target white or blue creature. The damage can't be prevented.

View File

@@ -1,7 +1,7 @@
Name:Commence the Endgame
ManaCost:4 U U
Types:Instant
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
A:SP$ Draw | Cost$ 4 U U | NumCards$ 2 | SpellDescription$ Draw two cards, then amass Zombies X, where X is the number of cards in your hand. (Put X +1/+1 counters on an Army you control. If you don't control one, create a 0/0 black Zombie Army creature token first.) | SubAbility$ DBAmass
SVar:DBAmass:DB$ Amass | Type$ Zombie | Num$ X
DeckHints:Ability$Amass & Type$Zombie

View File

@@ -2,7 +2,7 @@ Name:Control Win Condition
ManaCost:4 U U
Types:Creature Whale
PT:*/*
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
K:Shroud
S:Mode$ Continuous | EffectZone$ All | CharacteristicDefining$ True | SetPower$ X | SetToughness$ X | Description$ CARDNAME's power and toughness are each equal to the number of turns you've taken this game. (If this is in your deck, please keep track of your turns. This means you, Mark.)
SVar:X:Count$YourTurns

View File

@@ -1,7 +1,7 @@
Name:Counterflux
ManaCost:U U R
Types:Instant
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
A:SP$ Counter | Cost$ U U R | TargetType$ Spell | TgtPrompt$ Select target spell you don't control. | ValidTgts$ Card.YouDontCtrl | SpellDescription$ Counter target spell you don't control.
A:SP$ Counter | Cost$ 1 U U R | AllValid$ Spell.YouDontCtrl | PrecostDesc$ Overload | CostDesc$ {1}{U}{U}{R} | NonBasicSpell$ True | SpellDescription$ (You may cast this spell for its overload cost. If you do, change its text by replacing all instances of "target" with "each.") | StackDescription$ Counter each spell you don't control.
Oracle:This spell can't be countered.\nCounter target spell you don't control.\nOverload {1}{U}{U}{R} (You may cast this spell for its overload cost. If you do, change its text by replacing all instances of "target" with "each.")

View File

@@ -3,7 +3,7 @@ ManaCost:5 G G
Types:Creature Beast
PT:6/6
K:Kicker:2 G
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
K:Hexproof
K:Haste
K:etbCounter:P1P1:4:CheckSVar$ WasKicked:If CARDNAME was kicked, it enters the battlefield with four +1/+1 counters on it.

View File

@@ -4,5 +4,5 @@ Types:Creature Human Rogue
PT:2/2
K:Flash
S:Mode$ ReduceCost | ValidCard$ Card.hasKeywordFlash | Type$ Spell | Activator$ You | Amount$ 1 | Description$ Spells with flash you cast cost {1} less to cast and can't be countered.
S:Mode$ Continuous | Affected$ Card.hasKeywordFlash+wasCastByYou | AffectedZone$ Stack | AddHiddenKeyword$ CARDNAME can't be countered. | Secondary$ True | Description$ Spells with flash you cast cost {1} less to cast and can't be countered.
R:Event$ Counter | ValidSA$ Spell.hasKeywordFlash+wasCastByYou | Layer$ CantHappen | ActiveZones$ Battlefield | Secondary$ True | Description$ Spells with flash you cast cost {1} less to cast and can't be countered.
Oracle:Flash\nSpells with flash you cast cost {1} less to cast and can't be countered.

View File

@@ -1,10 +1,10 @@
Name:Demonfire
ManaCost:X R
Types:Sorcery
A:SP$ DealDamage | Cost$ X R | ValidTgts$ Any | NumDmg$ X | ConditionCheckSVar$ Y | ConditionSVarCompare$ GE1 | RememberDamaged$ True | ReplaceDyingDefined$ Remembered.Creature | SubAbility$ DBDemonfire | SpellDescription$ CARDNAME deals X damage to any target. If a creature dealt damage this way would die this turn, exile it instead.
SVar:DBDemonfire:DB$ DealDamage | Defined$ Targeted | NumDmg$ X | NoPrevention$ True | ConditionCheckSVar$ Y | ConditionSVarCompare$ EQ0 | RememberDamaged$ True | ReplaceDyingDefined$ Remembered.Creature | SubAbility$ DBCleanup
A:SP$ DealDamage | ValidTgts$ Any | NumDmg$ X | RememberDamaged$ True | ReplaceDyingDefined$ Remembered.Creature | SubAbility$ DBCleanup | SpellDescription$ CARDNAME deals X damage to any target. If a creature dealt damage this way would die this turn, exile it instead.
SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True
S:Mode$ Continuous | EffectZone$ All | CharacteristicDefining$ True | AddHiddenKeyword$ This spell can't be countered. | CheckSVar$ Y | SVarCompare$ EQ0 | Description$ Hellbent — If you have no cards in hand, this spell can't be countered and the damage can't be prevented.
S:Mode$ CantPreventDamage | ValidSource$ Spell.Self | EffectZone$ Stack | CheckSVar$ Y | SVarCompare$ EQ0 | Description$ Hellbent — If you have no cards in hand, this spell can't be countered and the damage can't be prevented.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | CheckSVar$ Y | SVarCompare$ EQ0 | Secondary$ True | Description$ Hellbent — If you have no cards in hand, this spell can't be countered and the damage can't be prevented.
SVar:X:Count$xPaid
SVar:Y:Count$InYourHand
Oracle:Demonfire deals X damage to any target. If a creature dealt damage this way would die this turn, exile it instead.\nHellbent — If you have no cards in hand, this spell can't be countered and the damage can't be prevented.

View File

@@ -2,7 +2,7 @@ Name:Destiny Spinner
ManaCost:1 G
Types:Enchantment Creature Human
PT:2/3
S:Mode$ Continuous | Affected$ Creature.YouCtrl,Enchantment.YouCtrl | AffectedZone$ Stack | AddHiddenKeyword$ CARDNAME can't be countered. | Description$ Creature and enchantment spells you control can't be countered.
R:Event$ Counter | ValidSA$ Spell.Creature+YouCtrl,Spell.Enchantment+YouCtrl | Layer$ CantHappen | ActiveZones$ Battlefield | Description$ Creature and enchantment spells you control can't be countered.
DeckHints:Type$Creature|Enchantment
A:AB$ Animate | Cost$ 3 G | ValidTgts$ Land.YouCtrl | TgtPrompt$ Select target land you control | Power$ X | Toughness$ X | Types$ Creature,Elemental | Keywords$ Trample & Haste | SpellDescription$ Target land you control becomes an X/X Elemental creature with trample and haste until end of turn, where X is the number of enchantments you control. It's still a land.
SVar:X:Count$Valid Enchantment.YouCtrl

View File

@@ -5,8 +5,8 @@ Loyalty:3
S:Mode$ Continuous | Affected$ Creature.YouCtrl | AddPower$ 1 | Description$ Creatures you control get +1/+0.
SVar:PlayMain1:TRUE
A:AB$ Mana | Cost$ AddCounter<1/LOYALTY> | Planeswalker$ True | Produced$ Combo R G | Amount$ 1 | AILogic$ Always | SubAbility$ DBEffect | SpellDescription$ Add {R} or {G}.
SVar:DBEffect:DB$ Effect | StaticAbilities$ AntiMagic | SpellDescription$ Creature spells you cast this turn can't be countered
SVar:AntiMagic:Mode$ Continuous | Affected$ Creature.wasCastByYou | AffectedZone$ Stack | EffectZone$ Command | AddHiddenKeyword$ CARDNAME can't be countered.
SVar:DBEffect:DB$ Effect | ReplacementEffects$ AntiMagic | SpellDescription$ Creature spells you cast this turn can't be countered.
SVar:AntiMagic:Event$ Counter | ValidSA$ Spell.Creature+wasCastByYou | Layer$ CantHappen | Description$ Creature spells you cast this turn can't be countered.
A:AB$ Pump | Planeswalker$ True | Cost$ SubCounter<2/LOYALTY> | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Choose target creature you control | AILogic$ Fight | SpellDescription$ Target creature you control fights target creature you don't control. | SubAbility$ DBFight
SVar:DBFight:DB$ Fight | Defined$ ParentTarget | ValidTgts$ Creature.YouDontCtrl | TgtPrompt$ Select target creature you don't control
Oracle:Creatures you control get +1/+0.\n[+1]: Add {R} or {G}. Creature spells you cast this turn can't be countered.\n[-2]: Target creature you control fights target creature you don't control.

View File

@@ -1,6 +1,6 @@
Name:Dovin's Veto
ManaCost:W U
Types:Instant
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
A:SP$ Counter | Cost$ W U | TargetType$ Spell | TgtPrompt$ Select target noncreature Spell | ValidTgts$ Card.nonCreature | SpellDescription$ Counter target noncreature spell.
Oracle:This spell can't be countered.\nCounter target noncreature spell.

View File

@@ -2,7 +2,7 @@ Name:Dragonlord Dromoka
ManaCost:4 G W
Types:Legendary Creature Elder Dragon
PT:5/7
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
K:Flying
K:Lifelink
S:Mode$ CantBeCast | ValidCard$ Card | Condition$ PlayerTurn | Caster$ Opponent | Description$ Your opponents can't cast spells during your turn.

View File

@@ -2,7 +2,7 @@ Name:Dragonlord's Prerogative
ManaCost:4 U U
Types:Instant
S:Mode$ OptionalCost | EffectZone$ All | ValidCard$ Card.Self | ValidSA$ Spell | Cost$ Reveal<1/Dragon> | Description$ As an additional cost to cast this spell, you may reveal a Dragon card from your hand.
S:Mode$ Continuous | EffectZone$ All | CharacteristicDefining$ True | AddHiddenKeyword$ This spell can't be countered. | Presence$ Dragon | Description$ If you revealed a Dragon card or controlled a Dragon as you cast this spell, this spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Presence$ Dragon | Description$ If you revealed a Dragon card or controlled a Dragon as you cast this spell, this spell can't be countered.
A:SP$ Draw | Cost$ 4 U U | NumCards$ 4 | SpellDescription$ Draw four cards.
DeckHints:Type$Dragon
Oracle:As an additional cost to cast this spell, you may reveal a Dragon card from your hand.\nIf you revealed a Dragon card or controlled a Dragon as you cast this spell, this spell can't be countered.\nDraw four cards.

View File

@@ -2,7 +2,7 @@ Name:Emrakul, the Aeons Torn
ManaCost:15
Types:Legendary Creature Eldrazi
PT:15/15
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
K:Flying
K:Protection:Spell.nonColorless:colored spells
K:Annihilator:6

View File

@@ -2,5 +2,5 @@ Name:Exquisite Firecraft
ManaCost:1 R R
Types:Sorcery
A:SP$ DealDamage | ValidTgts$ Any | NumDmg$ 4 | SpellDescription$ CARDNAME deals 4 damage to any target.
S:Mode$ Continuous | EffectZone$ All | CharacteristicDefining$ True | AddHiddenKeyword$ This spell can't be countered. | IsPresent$ Instant.YouOwn,Sorcery.YouOwn | PresentZone$ Graveyard | PresentCompare$ GE2 | Description$ Spell mastery — If there are two or more instant and/or sorcery cards in your graveyard, this spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | IsPresent$ Instant.YouOwn,Sorcery.YouOwn | PresentZone$ Graveyard | PresentCompare$ GE2 | Description$ Spell mastery — If there are two or more instant and/or sorcery cards in your graveyard, this spell can't be countered.
Oracle:Exquisite Firecraft deals 4 damage to any target.\nSpell mastery — If there are two or more instant and/or sorcery cards in your graveyard, this spell can't be countered.

View File

@@ -1,7 +1,7 @@
Name:Fry
ManaCost:1 R
Types:Instant
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
A:SP$ DealDamage | Cost$ 1 R | ValidTgts$ Creature.White,Planeswalker.White,Creature.Blue,Planeswalker.Blue | TgtPrompt$ Select target creature or planeswalker that's white or blue | NumDmg$ 5 | SpellDescription$ CARDNAME deals 5 damage to target creature or planeswalker that's white or blue.
AI:RemoveDeck:Random
Oracle:This spell can't be countered.\nFry deals 5 damage to target creature or planeswalker that's white or blue.

View File

@@ -2,5 +2,5 @@ Name:Gaea's Herald
ManaCost:1 G
Types:Creature Elf
PT:1/1
S:Mode$ Continuous | Affected$ Creature | AddHiddenKeyword$ CARDNAME can't be countered. | AffectedZone$ Stack | Description$ Creature spells can't be countered.
R:Event$ Counter | ValidSA$ Spell.Creature | Layer$ CantHappen | ActiveZones$ Battlefield | Description$ Creature spells can't be countered.
Oracle:Creature spells can't be countered.

View File

@@ -2,7 +2,7 @@ Name:Gaea's Revenge
ManaCost:5 G G
Types:Creature Elemental
PT:8/5
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
K:Haste
S:Mode$ CantTarget | ValidCard$ Card.Self | ValidSource$ Card.nonGreen | Description$ CARDNAME can't be the target of nongreen spells or abilities from nongreen sources.
Oracle:This spell can't be countered.\nHaste\nGaea's Revenge can't be the target of nongreen spells or abilities from nongreen sources.

View File

@@ -19,7 +19,7 @@ Colors:white,blue
Types:Legendary Artifact Vehicle
PT:1/3
K:Living metal
S:Mode$ Continuous | Affected$ Human.YouCtrl | AddHiddenKeyword$ This spell can't be countered. | AffectedZone$ Stack | Description$ Human spells you control can't be countered.
R:Event$ Counter | ValidSA$ Spell.Human+YouCtrl | Layer$ CantHappen | ActiveZones$ Battlefield | Description$ Human spells you control can't be countered.
T:Mode$ Attacks | ValidCard$ Card.Self | TriggerZones$ Battlefield | IsPresent$ Human.attacking+Other | Execute$ TrigDraw | TriggerDescription$ Whenever NICKNAME and at least one Human attack, draw a card and convert NICKNAME.
SVar:TrigDraw:DB$ Draw | SubAbility$ DBConvert
SVar:DBConvert:DB$ SetState | Mode$ Transform

View File

@@ -4,5 +4,5 @@ Types:Creature Elk
PT:3/3
K:Protection from blue
K:Protection from black
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
Oracle:This spell can't be countered.\nProtection from blue and from black (This creature can't be blocked, targeted, dealt damage, or enchanted by anything blue or black.)

View File

@@ -3,7 +3,7 @@ ManaCost:3 U U U
Types:Creature Elemental Incarnation
PT:6/6
S:Mode$ MinMaxBlocker | ValidCard$ Creature.Self | Min$ 3 | Description$ CARDNAME can't be blocked except by three or more creatures.
R:Event$ Counter | ActiveZones$ Battlefield | ValidType$ Spell | ValidCause$ Card.YouCtrl,Emblem.YouCtrl | ReplaceWith$ DBRemove | Description$ If a spell or ability you control would counter a spell, instead exile that spell and you may play that card without paying its mana cost.
R:Event$ Counter | ActiveZones$ Battlefield | ValidSA$ Spell | ValidCause$ SpellAbility.YouCtrl | ReplaceWith$ DBRemove | Description$ If a spell or ability you control would counter a spell, instead exile that spell and you may play that card without paying its mana cost.
SVar:DBRemove:DB$ ChangeZone | Defined$ ReplacedCard | Origin$ Stack | Destination$ Exile | Fizzle$ True | RememberChanged$ True | SubAbility$ DBPlay
SVar:DBPlay:DB$ Play | Defined$ Remembered | WithoutManaCost$ True | Optional$ True | SubAbility$ DBCleanup
SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True

View File

@@ -1,6 +1,6 @@
Name:Heated Debate
ManaCost:2 R
Types:Instant
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
A:SP$ DealDamage | Cost$ 2 R | ValidTgts$ Creature,Planeswalker | TgtPrompt$ Select target creature or planeswalker. | NumDmg$ 4 | SpellDescription$ CARDNAME deals 4 damage to target creature or planeswalker.
Oracle:This spell can't be countered. (This includes by the ward ability.)\nHeated Debate deals 4 damage to target creature or planeswalker.

View File

@@ -2,7 +2,7 @@ Name:Howlpack Piper
ManaCost:3 G
Types:Creature Human Werewolf
PT:2/2
K:CARDNAME can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
A:AB$ ChangeZone | Cost$ 1 G T | Origin$ Hand | Destination$ Battlefield | ChangeType$ Creature | ChangeNum$ 1 | SorcerySpeed$ True | RememberChanged$ True | SubAbility$ DBUntap | StackDescription$ You may put a creature card from your hand onto the battlefield. If it's a Wolf or Werewolf, untap CARDNAME. | SpellDescription$ You may put a creature card from your hand onto the battlefield. If it's a Wolf or Werewolf, untap CARDNAME. Activate only as a sorcery.
SVar:DBUntap:DB$ Untap | Defined$ Self | ConditionDefined$ Remembered | ConditionPresent$ Wolf,Werewolf | ConditionCompare$ EQ1 | SubAbility$ DBCleanup
SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True

View File

@@ -3,7 +3,7 @@ ManaCost:5 U U
Types:Creature Kraken Horror
PT:7/8
K:Flash
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
T:Mode$ SpellCast | ValidCard$ Card | ValidActivatingPlayer$ You | Execute$ TrigCharm | TriggerZones$ Battlefield | TriggerDescription$ Whenever you cast a spell, ABILITY
SVar:TrigCharm:DB$ Charm | Choices$ ControlReturn,ControlBounce | MinCharmNum$ 0 | CharmNum$ 1
SVar:ControlReturn:DB$ ChangeZone | ValidTgts$ Card.YouDontCtrl | TargetType$ Spell | TgtPrompt$ Select target spell you don't control | TgtZone$ Stack | Origin$ Stack | Fizzle$ True | Destination$ Hand | SpellDescription$ Return target spell you don't control to its owner's hand.

View File

@@ -1,7 +1,7 @@
Name:Hunter's Mark
ManaCost:3 G
Types:Instant
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
S:Mode$ ReduceCost | ValidCard$ Card.Self | Type$ Spell | Amount$ 3 | ValidTarget$ Card.Blue+YouDontCtrl | EffectZone$ All | Description$ This spell costs {3} less to cast if it targets a blue permanent you don't control.
A:SP$ Pump | ValidTgts$ Creature.YouCtrl | AILogic$ PowerDmg | NumAtt$ +1 | NumDef$ +1 | TgtPrompt$ Select target creature you control | SubAbility$ SoulsDamage | StackDescription$ {c:ThisTargetedCard} gets +1/+1 until end of turn. | SpellDescription$ Target creature you control gets +1/+1 until end of turn. It deals damage equal to its power to target creature you don't control.
SVar:SoulsDamage:DB$ DealDamage | ValidTgts$ Creature.YouDontCtrl,Planeswalker.YouDontCtrl | AILogic$ PowerDmg | TgtPrompt$ Select target creature or planeswalker you don't control | NumDmg$ X | DamageSource$ ParentTarget | StackDescription$ Then {c:ParentTarget} deals damage equal to its power to {c:ThisTargetedCard}.

View File

@@ -1,6 +1,6 @@
Name:Inescapable Blaze
ManaCost:4 R R
Types:Instant
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
A:SP$ DealDamage | Cost$ 4 R R | ValidTgts$ Any | NumDmg$ 6 | SpellDescription$ CARDNAME deals 6 damage to any target.
Oracle:This spell can't be countered.\nInescapable Blaze deals 6 damage to any target.

View File

@@ -2,7 +2,7 @@ Name:Inferno of the Star Mounts
ManaCost:4 R R
Types:Legendary Creature Dragon
PT:6/6
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
K:Flying
K:Haste
A:AB$ Pump | Cost$ R | Defined$ Self | NumAtt$ +1 | SubAbility$ DBImmediateTrigger | AILogic$ InfernoOfTheStarMounts | SpellDescription$ CARDNAME gets +1/+0 until end of turn.

View File

@@ -1,9 +1,9 @@
Name:Insist
ManaCost:G
Types:Sorcery
A:SP$ Effect | Triggers$ SpellCastTrig | SubAbility$ DBDraw | SpellDescription$ The next creature spell you cast this turn can't be countered.
A:SP$ DelayedTrigger | Mode$ SpellCast | ValidCard$ Creature | ValidActivatingPlayer$ You | Execute$ DBEffect | ThisTurn$ True | Static$ True | SubAbility$ DBDraw | SpellDescription$ The next creature spell you cast this turn can't be countered.
SVar:DBEffect:DB$ Effect | ReplacementEffects$ AntiMagic | RememberObjects$ TriggeredCard | ForgetOnMoved$ Stack
SVar:AntiMagic:Event$ Counter | ValidCard$ Card.IsRemembered | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
SVar:DBDraw:DB$ Draw | NumCards$ 1 | SpellDescription$ Draw a card.
SVar:SpellCastTrig:Mode$ SpellCast | ValidCard$ Creature | ValidActivatingPlayer$ You | Execute$ Insistence | OneOff$ True | Static$ True | TriggerDescription$ The next creature spell you cast this turn can't be countered.
SVar:Insistence:DB$ Pump | Defined$ TriggeredCard | KW$ HIDDEN CARDNAME can't be countered. | PumpZone$ Stack
AI:RemoveDeck:All
Oracle:The next creature spell you cast this turn can't be countered.\nDraw a card.

View File

@@ -2,7 +2,7 @@ Name:Isao, Enlightened Bushi
ManaCost:2 G
Types:Legendary Creature Human Samurai
PT:2/1
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
K:Bushido:2
A:AB$ Regenerate | Cost$ 2 | ValidTgts$ Samurai | TgtPrompt$ Select target Samurai. | SpellDescription$ Regenerate target Samurai.
DeckHints:Type$Samurai

View File

@@ -2,7 +2,7 @@ Name:Kavu Chameleon
ManaCost:3 G G
Types:Creature Kavu
PT:4/4
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
A:AB$ ChooseColor | Cost$ G | Defined$ You | SubAbility$ Animate | SpellDescription$ CARDNAME becomes the color of your choice until end of turn.
SVar:Animate:DB$ Animate | Defined$ Self | Colors$ ChosenColor | OverwriteColors$ True
Oracle:This spell can't be countered.\n{G}: Kavu Chameleon becomes the color of your choice until end of turn.

View File

@@ -2,7 +2,7 @@ Name:Koma, Cosmos Serpent
ManaCost:3 G G U U
Types:Legendary Creature Serpent
PT:6/6
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
T:Mode$ Phase | Phase$ Upkeep | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ At the beginning of each upkeep, create a 3/3 blue Serpent creature token named Koma's Coil.
SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ komas_coil | TokenOwner$ You
A:AB$ Charm | Cost$ Sac<1/Serpent.Other/another Serpent> | Choices$ DBTap,DBPump

View File

@@ -1,7 +1,7 @@
Name:Last March of the Ents
ManaCost:6 G G
Types:Sorcery
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
A:SP$ Draw | Defined$ You | NumCards$ X | SubAbility$ CheatBattlefield | SpellDescription$ Draw cards equal to the greatest toughness among creatures you control, then put any number of creature cards from your hand onto the battlefield.
SVar:CheatBattlefield:DB$ ChangeZone | Origin$ Hand | Destination$ Battlefield | ChangeType$ Creature | ChangeNum$ Y | StackDescription$ {p:You} puts any number of creature cards from their hand onto the battlefield
SVar:X:Count$Valid Creature.YouCtrl$GreatestToughness

View File

@@ -2,5 +2,5 @@ Name:Last Word
ManaCost:2 U U
Types:Instant
A:SP$ Counter | Cost$ 2 U U | TargetType$ Spell | TgtPrompt$ Select target spell | ValidTgts$ Card | SpellDescription$ Counter target spell.
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
Oracle:This spell can't be countered.\nCounter target spell.

View File

@@ -3,7 +3,7 @@ ManaCost:2 G G
Types:Enchantment
K:MayEffectFromOpeningHand:FromHand
SVar:FromHand:DB$ ChangeZone | Defined$ Self | Origin$ Hand | Destination$ Battlefield | SpellDescription$ If CARDNAME is in your opening hand, you may begin the game with it on the battlefield.
S:Mode$ Continuous | Affected$ Creature | AddHiddenKeyword$ CARDNAME can't be countered. | AffectedZone$ Stack | Description$ Creature spells can't be countered.
R:Event$ Counter | ValidSA$ Spell.Creature | Layer$ CantHappen | ActiveZones$ Battlefield | Description$ Creature spells can't be countered.
SVar:NonStackingEffect:True
AI:RemoveDeck:Random
Oracle:If Leyline of Lifeforce is in your opening hand, you may begin the game with it on the battlefield.\nCreature spells can't be countered.

View File

@@ -2,7 +2,7 @@ Name:Lier, Disciple of the Drowned
ManaCost:3 U U
Types:Legendary Creature Human Wizard
PT:3/4
S:Mode$ Continuous | Affected$ Card | AddHiddenKeyword$ This spell can't be countered. | AffectedZone$ Stack | Description$ Spells can't be countered.
R:Event$ Counter | ValidSA$ Spell | Layer$ CantHappen | ActiveZones$ Battlefield | Description$ Spells can't be countered.
S:Mode$ Continuous | Affected$ Instant.YouOwn,Sorcery.YouOwn | AffectedZone$ Graveyard | AddKeyword$ Flashback | Description$ Each instant and sorcery card in your graveyard has flashback. The flashback cost is equal to that card's mana cost.
DeckHints:Type$Instant|Sorcery
DeckHas:Ability$Graveyard

View File

@@ -2,7 +2,7 @@ Name:Lightning Mare
ManaCost:R R
Types:Creature Elemental Horse
PT:3/1
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
S:Mode$ CantBlockBy | ValidAttacker$ Creature.Self | ValidBlocker$ Creature.Blue | Description$ CARDNAME can't be blocked by blue creatures.
A:AB$ Pump | Cost$ 1 R | ValidCard$ Card.Self | NumAtt$ +1 | NumDef$ +0 | SpellDescription$ CARDNAME gets +1/+0 until end of turn.
Oracle:This spell can't be countered.\nLightning Mare can't be blocked by blue creatures.\n{1}{R}: Lightning Mare gets +1/+0 until end of turn.

View File

@@ -1,7 +1,7 @@
Name:Lithomantic Barrage
ManaCost:R
Types:Sorcery
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
A:SP$ DealDamage | NumDmg$ X | ValidTgts$ Creature,Planeswalker | TgtPrompt$ Select target creature or planeswalker | StackDescription$ REP target creature or planeswalker_{c:Targeted} | IsCurse$ True | AITgts$ Creature.White,Creature.Blue,Planeswalker.White,Planeswalker.Blue | SpellDescription$ CARDNAME deals 1 damage to target creature or planeswalker. It deals 5 damage instead if that target is white and/or blue.
SVar:Y:Targeted$Valid Creature.White,Creature.Blue,Planeswalker.White,Planeswalker.Blue
SVar:X:Count$Compare Y GE1.5.1

View File

@@ -2,7 +2,7 @@ Name:Loxodon Smiter
ManaCost:1 G W
Types:Creature Elephant Soldier
PT:4/4
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
R:Event$ Discard | ActiveZones$ Hand | ValidCard$ Card.Self | ValidSource$ Card.OppCtrl | ReplaceWith$ SurpriseETB | DiscardFromEffect$ True | Description$ If a spell or ability an opponent controls causes you to discard CARDNAME, put it onto the battlefield instead of putting it into your graveyard.
SVar:SurpriseETB:DB$ ChangeZone | DefinedPlayer$ ReplacedPlayer | Defined$ ReplacedCard | Origin$ Hand | Destination$ Battlefield
SVar:DiscardMeByOpp:2

View File

@@ -2,7 +2,7 @@ Name:Lullmage Mentor
ManaCost:1 U U
Types:Creature Merfolk Wizard
PT:2/2
T:Mode$ Countered | ValidCause$ Card.YouCtrl,Emblem.YouCtrl | ValidCard$ Card | ValidType$ Spell | OptionalDecider$ You | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ Whenever a spell or ability you control counters a spell, you may create a 1/1 blue Merfolk creature token.
T:Mode$ Countered | ValidCause$ SpellAbility.YouCtrl | ValidSA$ Spell | OptionalDecider$ You | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ Whenever a spell or ability you control counters a spell, you may create a 1/1 blue Merfolk creature token.
SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ u_1_1_merfolk | TokenOwner$ You
A:AB$ Counter | Cost$ tapXType<7/Merfolk> | TargetType$ Spell | TgtPrompt$ Select target spell | ValidTgts$ Card | SpellDescription$ Counter target spell.
Oracle:Whenever a spell or ability you control counters a spell, you may create a 1/1 blue Merfolk creature token.\nTap seven untapped Merfolk you control: Counter target spell.

View File

@@ -1,6 +1,6 @@
Name:Magic Missile
ManaCost:1 R R
Types:Sorcery
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
A:SP$ DealDamage | Cost$ 1 R R | ValidTgts$ Any | TgtPrompt$ Select any target to distribute damage to | NumDmg$ 3 | TargetMin$ 1 | TargetMax$ 3 | DividedAsYouChoose$ 3 | SpellDescription$ CARDNAME deals 3 damage divided as you choose among one, two, or three targets.
Oracle:This spell can't be countered.\nMagic Missile deals 3 damage divided as you choose among one, two, or three targets.

View File

@@ -16,7 +16,7 @@ Colors:blue
Types:Creature Spirit Wizard
PT:2/2
K:Flying
S:Mode$ Continuous | Affected$ Card.nonCreature+YouCtrl | AffectedZone$ Stack | AddHiddenKeyword$ CARDNAME can't be countered. | Description$ Noncreature spells you control can't be countered.
R:Event$ Counter | ValidSA$ Spell.nonCreature+YouCtrl | Layer$ CantHappen | ActiveZones$ Battlefield | Description$ Noncreature spells you control can't be countered.
R:Event$ Moved | ValidCard$ Card.Self | Destination$ Graveyard | ReplaceWith$ Exile | Description$ If CARDNAME would be put into a graveyard from anywhere, exile it instead.
SVar:Exile:DB$ ChangeZone | Hidden$ True | Origin$ All | Destination$ Exile | Defined$ ReplacedCard
Oracle:Flying\nNoncreature spells you control can't be countered.\nIf Benevolent Geist would be put into a graveyard from anywhere, exile it instead.

View File

@@ -2,7 +2,7 @@ Name:Mistcutter Hydra
ManaCost:X G
Types:Creature Hydra
PT:0/0
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
K:Haste
K:Protection from blue
K:etbCounter:P1P1:X

View File

@@ -2,7 +2,7 @@ Name:Nezahal, Primal Tide
ManaCost:5 U U
Types:Legendary Creature Elder Dinosaur
PT:7/7
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
S:Mode$ Continuous | Affected$ You | SetMaxHandSize$ Unlimited | Description$ You have no maximum hand size.
T:Mode$ SpellCast | TriggerZones$ Battlefield | ValidCard$ Card.nonCreature | ValidActivatingPlayer$ Opponent | Execute$ TrigDraw | TriggerDescription$ Whenever an opponent casts a noncreature spell, draw a card.
SVar:TrigDraw:DB$ Draw | Defined$ You | NumCards$ 1

View File

@@ -3,7 +3,7 @@ ManaCost:U U U R R R
Types:Legendary Creature Dragon Wizard
PT:5/5
K:Flying
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
T:Mode$ Drawn | ValidCard$ Card.YouOwn | TriggerZones$ Battlefield | Execute$ TrigDealDamage | TriggerDescription$ Whenever you draw a card, CARDNAME deals 1 damage to any target.
SVar:TrigDealDamage:DB$ DealDamage | ValidTgts$ Any | NumDmg$ 1
T:Mode$ SpellCast | ValidCard$ Instant,Sorcery | TriggerZones$ Battlefield | Execute$ TrigDraw | TriggerDescription$ Whenever a player casts an instant or sorcery spell, you draw a card.

View File

@@ -2,5 +2,5 @@ Name:Obliterate
ManaCost:6 R R
Types:Sorcery
A:SP$ DestroyAll | Cost$ 6 R R | ValidCards$ Artifact,Creature,Land | NoRegen$ True | SpellDescription$ Destroy all artifacts, creatures, and lands. They can't be regenerated.
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
Oracle:This spell can't be countered.\nDestroy all artifacts, creatures, and lands. They can't be regenerated.

View File

@@ -1,9 +1,9 @@
Name:Overmaster
ManaCost:R
Types:Sorcery
A:SP$ Effect | Triggers$ SpellCastTrig | SubAbility$ DBDraw | SpellDescription$ The next instant or sorcery spell you cast this turn can't be countered.
A:SP$ DelayedTrigger | Mode$ SpellCast | ValidCard$ Instant,Sorcery | ValidActivatingPlayer$ You | Execute$ DBEffect | ThisTurn$ True | Static$ True | SubAbility$ DBDraw | SpellDescription$ The next instant or sorcery spell you cast this turn can't be countered.
SVar:DBEffect:DB$ Effect | ReplacementEffects$ AntiMagic | RememberObjects$ TriggeredCard | ForgetOnMoved$ Stack
SVar:AntiMagic:Event$ Counter | ValidCard$ Card.IsRemembered | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
SVar:DBDraw:DB$ Draw | NumCards$ 1 | SpellDescription$ Draw a card.
SVar:SpellCastTrig:Mode$ SpellCast | ValidCard$ Instant,Sorcery | ValidActivatingPlayer$ You | Execute$ Mastery | OneOff$ True | Static$ True | TriggerDescription$ The next instant or sorcery spell you cast this turn can't be countered.
SVar:Mastery:DB$ Pump | Defined$ TriggeredCard | KW$ HIDDEN CARDNAME can't be countered. | PumpZone$ Stack
AI:RemoveDeck:All
Oracle:The next instant or sorcery spell you cast this turn can't be countered.\nDraw a card.

View File

@@ -3,5 +3,5 @@ ManaCost:2 U U
Types:Instant
K:Surge:U U
A:SP$ Counter | Cost$ 2 U U | TargetType$ Spell | TgtPrompt$ Select target spell | ValidTgts$ Card | SpellDescription$ Counter target spell.
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
Oracle:Surge {U}{U} (You may cast this spell for its surge cost if you or a teammate has cast another spell this turn.)\nThis spell can't be countered.\nCounter target spell.

View File

@@ -4,6 +4,6 @@ Types:Creature Leviathan
PT:6/7
K:Flash
K:Prowess
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
A:AB$ ChangeZone | Cost$ Return<3/Land> | Origin$ Battlefield | Destination$ Hand | SpellDescription$ Return CARDNAME to its owner's hand.
Oracle:Flash\nThis spell can't be countered.\nProwess (Whenever you cast a noncreature spell, this creature gets +1/+1 until end of turn.)\nReturn three lands you control to their owner's hand: Return Pearl Lake Ancient to its owner's hand.

View File

@@ -2,7 +2,7 @@ Name:Petrified Wood-Kin
ManaCost:6 G
Types:Creature Elemental Warrior
PT:3/3
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
K:Bloodthirst:X
K:Protection:Instant:instants
Oracle:This spell can't be countered.\nBloodthirst X (This creature enters the battlefield with X +1/+1 counters on it, where X is the damage dealt to your opponents this turn.)\nProtection from instants

View File

@@ -2,7 +2,7 @@ Name:Prowling Serpopard
ManaCost:1 G G
Types:Creature Cat Snake
PT:4/3
K:This spell can't be countered.
S:Mode$ Continuous | Affected$ Creature.YouCtrl | AffectedZone$ Stack | AddHiddenKeyword$ This spell can't be countered. | Description$ Creature spells you control can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
R:Event$ Counter | ValidSA$ Spell.Creature+YouCtrl | Layer$ CantHappen | ActiveZones$ Battlefield | Description$ Creature spells you control can't be countered.
SVar:PlayMain1:TRUE
Oracle:This spell can't be countered.\nCreature spells you control can't be countered.

View File

@@ -1,7 +1,7 @@
Name:Raze to the Ground
ManaCost:2 R
Types:Sorcery
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
A:SP$ Destroy | ValidTgts$ Artifact | SubAbility$ DBDraw | RememberLKI$ True | AlwaysRemember$ True | SpellDescription$ Destroy target artifact. If its mana value was 1 or less, draw a card.
SVar:DBDraw:DB$ Draw | ConditionCheckSVar$ X | ConditionSVarCompare$ LE1 | SubAbility$ DBCleanup
SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True

View File

@@ -1,7 +1,7 @@
Name:Rending Volley
ManaCost:R
Types:Instant
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
A:SP$ DealDamage | Cost$ R | ValidTgts$ Creature.White,Creature.Blue | NumDmg$ 4 | TgtPrompt$ Select target white or blue creature. | SpellDescription$ CARDNAME deals 4 damage to target white or blue creature.
AI:RemoveDeck:Random
Oracle:This spell can't be countered.\nRending Volley deals 4 damage to target white or blue creature.

View File

@@ -1,7 +1,7 @@
Name:Rhythm of the Wild
ManaCost:1 R G
Types:Enchantment
S:Mode$ Continuous | Affected$ Creature.YouCtrl | AffectedZone$ Stack | AddHiddenKeyword$ CARDNAME can't be countered. | Description$ Creature spells you control can't be countered.
R:Event$ Counter | ValidSA$ Spell.Creature+YouCtrl | Layer$ CantHappen | ActiveZones$ Battlefield | Description$ Creature spells you control can't be countered.
S:Mode$ Continuous | Affected$ Creature.nonToken+YouCtrl | AddKeyword$ Riot | Description$ Nontoken creatures you control have riot. (They enter the battlefield with your choice of a +1/+1 counter or haste.)
SVar:PlayMain1:TRUE
DeckHas:Ability$Counters

View File

@@ -1,7 +1,7 @@
Name:Rise of the Eldrazi
ManaCost:9 C C C
Types:Sorcery
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
A:SP$ Destroy | ValidTgts$ Permanent| SubAbility$ DBDraw | SpellDescription$ Destroy target permanent.
SVar:DBDraw:DB$ Draw | NumCards$ 4 | ValidTgts$ Player | TgtPrompt$ Select target player | SubAbility$ DBExtraTurn | SpellDescription$ Target player draws four cards.
SVar:DBExtraTurn: DB$ AddTurn | Defined$ You | NumTurns$ 1 | SubAbility$ DBChange | SpellDescription$ Take an extra turn after this one.

View File

@@ -2,6 +2,6 @@ Name:Root Sliver
ManaCost:3 G
Types:Creature Sliver
PT:2/2
K:This spell can't be countered.
S:Mode$ Continuous | Affected$ Sliver | AddHiddenKeyword$ This spell can't be countered. | AffectedZone$ Stack | Description$ Sliver spells can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
R:Event$ Counter | ValidSA$ Spell.Sliver | Layer$ CantHappen | ActiveZones$ Battlefield | Description$ Sliver spells can't be countered.
Oracle:This spell can't be countered.\nSliver spells can't be countered.

View File

@@ -2,7 +2,7 @@ Name:A-Lier, Disciple of the Drowned
ManaCost:3 U U
Types:Legendary Creature Human Wizard
PT:3/4
S:Mode$ Continuous | Affected$ Card | AddHiddenKeyword$ This spell can't be countered. | AffectedZone$ Stack | Description$ Spells can't be countered.
R:Event$ Counter | ValidSA$ Spell | Layer$ CantHappen | ActiveZones$ Battlefield | Description$ Spells can't be countered.
S:Mode$ Continuous | Affected$ Instant.YouOwn,Sorcery.YouOwn | AffectedZone$ Graveyard | AddKeyword$ Flashback | Condition$ PlayerTurn | Description$ As long as it's your turn, each instant and sorcery card in your graveyard has flashback. The flashback cost is equal to that card's mana cost.
DeckHints:Type$Instant|Sorcery
DeckHas:Ability$Graveyard

View File

@@ -1,14 +1,13 @@
Name:Savage Summoning
ManaCost:G
Types:Instant
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
A:SP$ Effect | Cost$ G | StaticAbilities$ STFlash | Triggers$ SpellCastTrig | SpellDescription$ The next creature spell you cast this turn can be cast as though it had flash. That spell can't be countered. That creature enters the battlefield with an additional +1/+1 counter on it.
SVar:STFlash:Mode$ CastWithFlash | ValidCard$ Card.Creature | ValidSA$ Spell | EffectZone$ Command | Caster$ You
SVar:SpellCastTrig:Mode$ SpellCast | ValidCard$ Creature | ValidActivatingPlayer$ You | Execute$ SavageSummon | Static$ True | TriggerDescription$ The next creature spell you cast this turn can be cast as though it had flash. That spell can't be countered. That creature enters the battlefield with an additional +1/+1 counter on it.
SVar:SavageSummon:DB$ Effect | StaticAbilities$ STCantBeCountered | ReplacementEffects$ ETBCounters | RememberObjects$ TriggeredCard | SubAbility$ ExileSelf
SVar:STCantBeCountered:Mode$ Continuous | EffectZone$ Command | Affected$ Card.IsRemembered | AddHiddenKeyword$ CARDNAME can't be countered. | AffectedZone$ Stack | Description$ That spell can't be countered.
SVar:STFlash:Mode$ CastWithFlash | ValidCard$ Card.Creature | ValidSA$ Spell | Caster$ You
SVar:SpellCastTrig:Mode$ SpellCast | ValidCard$ Creature | ValidActivatingPlayer$ You | Execute$ SavageSummon | OneOff$ True | Static$ True | TriggerDescription$ The next creature spell you cast this turn can be cast as though it had flash. That spell can't be countered. That creature enters the battlefield with an additional +1/+1 counter on it.
SVar:SavageSummon:DB$ Effect | ReplacementEffects$ AntiMagic,ETBCounters | RememberObjects$ TriggeredCard | ForgetOnMoved$ Stack
SVar:AntiMagic:Event$ Counter | ValidCard$ Card.IsRemembered | ValidSA$ Spell | Layer$ CantHappen | Description$ That spell can't be countered.
SVar:ETBCounters:Event$ Moved | Origin$ Stack | Destination$ Battlefield | ValidCard$ Card.IsRemembered | ReplaceWith$ ETBAddExtraCounter | ReplacementResult$ Updated | Description$ That creature enters the battlefield with an additional +1/+1 counters on it.
SVar:ETBAddExtraCounter:DB$ PutCounter | ETB$ True | Defined$ ReplacedCard | CounterType$ P1P1 | CounterNum$ 1 | SubAbility$ ExileSelf
SVar:ExileSelf:DB$ ChangeZone | Defined$ Self | Origin$ Command | Destination$ Exile
SVar:ETBAddExtraCounter:DB$ PutCounter | ETB$ True | Defined$ ReplacedCard | CounterType$ P1P1 | CounterNum$ 1
AI:RemoveDeck:All
Oracle:This spell can't be countered.\nThe next creature spell you cast this turn can be cast as though it had flash. That spell can't be countered. That creature enters the battlefield with an additional +1/+1 counter on it.

View File

@@ -3,5 +3,5 @@ ManaCost:4 G
Types:Creature Beast
PT:3/4
K:Protection from blue
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
Oracle:This spell can't be countered.\nProtection from blue

View File

@@ -2,7 +2,7 @@ Name:Shifting Ceratops
ManaCost:2 G G
Types:Creature Dinosaur
PT:5/4
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
K:Protection from blue
A:AB$ Pump | Cost$ G | KWChoice$ Reach,Trample,Haste | StackDescription$ SpellDescription | SpellDescription$ CARDNAME gains your choice of reach, trample, or haste until end of turn.
Oracle:This spell can't be countered.\nProtection from blue (This creature can't be blocked, targeted, dealt damage, enchanted, or equipped by anything blue.)\n{G}: Shifting Ceratops gains your choice of reach, trample, or haste until end of turn.

View File

@@ -3,7 +3,7 @@ ManaCost:1 G
Types:Creature Insect
PT:2/2
K:Flash
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
K:Reach
K:Protection from blue
Oracle:Flash\nThis spell can't be countered.\nReach, protection from blue

View File

@@ -1,7 +1,7 @@
Name:Slaughter Games
ManaCost:2 B R
Types:Sorcery
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
A:SP$ NameCard | Cost$ 2 B R | Defined$ You | ValidCards$ Card.nonLand | ValidDesc$ nonland | SubAbility$ ExileYard | SpellDescription$ Choose a nonland card name. Search target opponent's graveyard, hand, and library for any number of cards with that name and exile them. Then that player shuffles.
SVar:ExileYard:DB$ ChangeZone | Origin$ Graveyard | Destination$ Exile | ValidTgts$ Player.Opponent | TgtPrompt$ Select target opponent | ChangeType$ Card.NamedCard | Chooser$ You | ChangeNum$ NumInYard | Hidden$ True | SubAbility$ ExileHand | StackDescription$ Search target opponent's graveyard, hand, and library for any number of cards with that name and exile them. Then that player shuffles their library.
SVar:ExileHand:DB$ ChangeZone | Origin$ Hand | Destination$ Exile | DefinedPlayer$ Targeted | ChangeType$ Card.NamedCard | ChangeNum$ NumInHand | Chooser$ You | SubAbility$ ExileLib | StackDescription$ None

View File

@@ -2,6 +2,6 @@ Name:Spellbreaker Behemoth
ManaCost:1 R G G
Types:Creature Beast
PT:5/5
K:This spell can't be countered.
S:Mode$ Continuous | Affected$ Creature.powerGE5+YouCtrl | AffectedZone$ Stack | AddHiddenKeyword$ This spell can't be countered. | Description$ Creature spells you control with power 5 or greater can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
R:Event$ Counter | ValidSA$ Spell.Creature+powerGE5+YouCtrl | Layer$ CantHappen | ActiveZones$ Battlefield | Description$ Creature spells you control with power 5 or greater can't be countered.
Oracle:This spell can't be countered.\nCreature spells you control with power 5 or greater can't be countered.

View File

@@ -4,6 +4,6 @@ Types:Creature Sphinx
PT:5/5
K:Flying
K:Hexproof
K:This spell can't be countered.
S:Mode$ Continuous | Affected$ Instant.YouCtrl,Sorcery.YouCtrl | AddHiddenKeyword$ This spell can't be countered. | AffectedZone$ Stack | Description$ Instant and sorcery spells you control can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
R:Event$ Counter | ValidSA$ Spell.Instant+YouCtrl,Spell.Sorcery+YouCtrl | Layer$ CantHappen | ActiveZones$ Battlefield | Description$ Instant and sorcery spells you control can't be countered.
Oracle:This spell can't be countered.\nFlying, hexproof\nInstant and sorcery spells you control can't be countered.

View File

@@ -2,12 +2,12 @@ Name:Summoning Trap
ManaCost:4 G G
Types:Instant Trap
#Keep track of countered cards even while in other zones, so no TriggerZones param. Clear tracked number each cleanup.
T:Mode$ Countered | ValidCause$ Card.OppCtrl,Emblem.OppCtrl | ValidCard$ Creature.YouCtrl | ValidType$ Spell | Execute$ TrackValidCounters | Static$ True
T:Mode$ Countered | ValidCause$ SpellAbility.OppCtrl | ValidSA$ Spell.Creature+wasCastByYou | Execute$ TrackValidCounters | Static$ True
SVar:TrackValidCounters:DB$ StoreSVar | SVar$ SetTrap | Type$ CountSVar | Expression$ SetTrap/Plus.1
T:Mode$ Phase | Phase$ Cleanup | Execute$ TrigReset | Static$ True
SVar:TrigReset:DB$ StoreSVar | SVar$ SetTrap | Type$ Number | Expression$ 0
SVar:SetTrap:Number$0
#Set up main abilities
SVar:AltCost:Cost$ 0 | CheckSVar$ SetTrap | SVarCompare$ GE1 | Description$ If a creature spell you cast this turn was countered by a spell or ability an opponent controlled, you may pay {0} rather than pay this spell's mana cost.
A:SP$ Dig | Cost$ 4 G G | DigNum$ 7 | ChangeNum$ 1 | Optional$ True | ChangeValid$ Creature | DestinationZone$ Battlefield | SpellDescription$ Look at the top seven cards of your library. You may put a creature card from among them onto the battlefield. Put the rest on the bottom of your library in any order.
A:SP$ Dig | DigNum$ 7 | ChangeNum$ 1 | Optional$ True | ChangeValid$ Creature | DestinationZone$ Battlefield | SpellDescription$ Look at the top seven cards of your library. You may put a creature card from among them onto the battlefield. Put the rest on the bottom of your library in any order.
Oracle:If a creature spell you cast this turn was countered by a spell or ability an opponent controlled, you may pay {0} rather than pay this spell's mana cost.\nLook at the top seven cards of your library. You may put a creature card from among them onto the battlefield. Put the rest on the bottom of your library in any order.

View File

@@ -1,6 +1,6 @@
Name:Supreme Verdict
ManaCost:1 W W U
Types:Sorcery
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
A:SP$ DestroyAll | Cost$ 1 W W U | ValidCards$ Creature | SpellDescription$ Destroy all creatures.
Oracle:This spell can't be countered.\nDestroy all creatures.

View File

@@ -3,8 +3,8 @@ ManaCost:2 G U R
Types:Legendary Creature Human Warrior
PT:6/6
K:Flash
K:This spell can't be countered.
S:Mode$ Continuous | Affected$ Creature.YouCtrl | AffectedZone$ Stack | AddHiddenKeyword$ This spell can't be countered. | Description$ Creature spells you control can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
R:Event$ Counter | ValidSA$ Spell.Creature+YouCtrl | Layer$ CantHappen | ActiveZones$ Battlefield | Description$ Creature spells you control can't be countered.
S:Mode$ Continuous | Affected$ Creature.Other+YouCtrl | AddKeyword$ Trample | Description$ Other creatures you control have trample.
SVar:PlayMain1:TRUE
Oracle:Flash\nThis spell can't be countered.\nCreature spells you control can't be countered.\nOther creatures you control have trample.

View File

@@ -2,7 +2,7 @@ Name:Taigam, Ojutai Master
ManaCost:2 W U
Types:Legendary Creature Human Monk
PT:3/4
S:Mode$ Continuous | Affected$ Instant.YouCtrl,Sorcery.YouCtrl,Dragon.YouCtrl | AddHiddenKeyword$ CARDNAME can't be countered. | AffectedZone$ Stack | Description$ Instant, sorcery, and Dragon spells you control can't be countered.
R:Event$ Counter | ValidCard$ Instant.YouCtrl,Sorcery.YouCtrl,Dragon.YouCtrl | ValidSA$ Spell | Layer$ CantHappen | ActiveZones$ Battlefield | Description$ Instant, sorcery, and Dragon spells you control can't be countered.
T:Mode$ SpellCast | ValidCard$ Instant.wasCastFromYourHand,Sorcery.wasCastFromYourHand | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | IsPresent$ Card.Self+attackedThisTurn | Execute$ TrigRebound | TriggerDescription$ Whenever you cast an instant or sorcery spell from your hand, if CARDNAME attacked this turn, that spell gains rebound.
SVar:TrigRebound:DB$ Pump | Defined$ TriggeredCard | KW$ Rebound | PumpZone$ Stack
Oracle:Instant, sorcery, and Dragon spells you control can't be countered.\nWhenever you cast an instant or sorcery spell from your hand, if Taigam, Ojutai Master attacked this turn, that spell gains rebound. (Exile the spell as it resolves. At the beginning of your next upkeep, you may cast that card from exile without paying its mana cost.)

View File

@@ -1,6 +1,6 @@
Name:Tears of Valakut
ManaCost:1 R
Types:Instant
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
A:SP$ DealDamage | Cost$ 1 R | ValidTgts$ Creature.withFlying | NumDmg$ 5 | TgtPrompt$ Select target creature with flying. | SpellDescription$ CARDNAME deals 5 damage to target creature with flying.
Oracle:This spell can't be countered.\nTears of Valakut deals 5 damage to target creature with flying.

View File

@@ -3,5 +3,5 @@ ManaCost:3 G G G
Types:Creature Beast
PT:8/8
K:Trample
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
Oracle:This spell can't be countered.\nTrample (This creature can deal excess combat damage to the player or planeswalker it's attacking.)

View File

@@ -1,7 +1,7 @@
Name:Thought Distortion
ManaCost:4 B B
Types:Sorcery
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
A:SP$ RevealHand | Cost$ 4 B B | ValidTgts$ Opponent | IsCurse$ True | SubAbility$ DBExile | SpellDescription$ Target opponent reveals their hand. Exile all noncreature, nonland cards from that player's hand and graveyard.
SVar:DBExile:DB$ ChangeZoneAll | Origin$ Hand,Graveyard | Destination$ Exile | ChangeType$ Card.nonCreature+nonLand+TargetedPlayerCtrl
Oracle:This spell can't be countered.\nTarget opponent reveals their hand. Exile all noncreature, nonland cards from that player's hand and graveyard.

View File

@@ -2,7 +2,7 @@ Name:Thrun, Breaker of Silence
ManaCost:3 G G
Types:Legendary Creature Troll Shaman
PT:5/5
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
K:Trample
S:Mode$ CantTarget | ValidCard$ Card.Self | ValidSource$ Card.nonGreen+OppCtrl | Description$ CARDNAME can't be the target of nongreen spells your opponents control or abilities from nongreen sources your opponents control.
S:Mode$ Continuous | Affected$ Card.Self | AddKeyword$ Indestructible | Condition$ PlayerTurn | Description$ As long as it's your turn, NICKNAME has indestructible.

View File

@@ -3,6 +3,6 @@ ManaCost:2 G G
Types:Legendary Creature Troll Shaman
PT:4/4
A:AB$ Regenerate | Cost$ 1 G | SpellDescription$ Regenerate CARDNAME.
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
K:Hexproof
Oracle:This spell can't be countered.\nHexproof (This creature can't be the target of spells or abilities your opponents control.)\n{1}{G}: Regenerate Thrun, the Last Troll.

View File

@@ -5,5 +5,5 @@ PT:4/5
K:Flash
K:Flying
S:Mode$ ReduceCost | ValidCard$ Card.cmcGE5 | Type$ Spell | Activator$ You | Amount$ 1 | Description$ Spells you cast with mana value 5 or greater cost {1} less to cast and can't be countered.
S:Mode$ Continuous | Affected$ Card.cmcGE5+wasCastByYou | AffectedZone$ Stack | AddHiddenKeyword$ CARDNAME can't be countered. | Secondary$ True | Description$ Spells you cast with mana value 5 or greater cost {1} less to cast and can't be countered.
R:Event$ Counter | ValidCard$ Card.cmcGE5+wasCastByYou | ValidSA$ Spell | Layer$ CantHappen | ActiveZones$ Battlefield | Secondary$ True | Description$ Spells you cast with mana value 5 or greater cost {1} less to cast and can't be countered.
Oracle:Flash\nFlying\nSpells you cast with mana value 5 or greater cost {1} less to cast and can't be countered.

View File

@@ -2,7 +2,7 @@ Name:Torch Breath
ManaCost:X R
Types:Instant
S:Mode$ ReduceCost | ValidCard$ Card.Self | Type$ Spell | Amount$ 2 | ValidTarget$ Permanent.Blue | EffectZone$ All | Description$ This spell costs {2} less to cast if it targets a a blue permanent.
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
A:SP$ DealDamage | ValidTgts$ Creature,Planeswalker | TgtPrompt$ Select target creature or planeswalker | NumDmg$ X | SpellDescription$ CARDNAME deals X damage to target creature or planeswalker.
SVar:X:Count$xPaid
Oracle:This spell costs {2} less to cast if it targets a blue permanent.\nThis spell can't be countered.\nTorch Breath deals X damage to target creature or planeswalker.

View File

@@ -2,7 +2,7 @@ Name:Toski, Bearer of Secrets
ManaCost:3 G
Types:Legendary Creature Squirrel
PT:1/1
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
K:Indestructible
S:Mode$ MustAttack | ValidCreature$ Card.Self | Description$ CARDNAME attacks each combat if able.
T:Mode$ DamageDone | ValidSource$ Creature.YouCtrl | ValidTarget$ Player | CombatDamage$ True | TriggerZones$ Battlefield | Execute$ TrigDraw | TriggerDescription$ Whenever a creature you control deals combat damage to a player, draw a card.

View File

@@ -2,7 +2,7 @@ Name:Tyrranax Rex
ManaCost:4 G G G
Types:Creature Phyrexian Dinosaur
PT:8/8
K:This spell can't be countered.
R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered.
K:Trample
K:Ward:4
K:Haste

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