Fixed some primitives from issue #1085, fixed some primitived from Discord channel, updated some AI decks, added new ability "canloyaltyasinst" to allow a planeswalker to activate loyalty abilities as instant (e.g. "The Wandering Emperor"), fixed a possible crash when a card change zone with different card types than its original version (e.g. morphed cards).

This commit is contained in:
Vittorio Alfieri
2023-07-24 19:08:20 +02:00
parent 6625907180
commit 751fda6521
9 changed files with 446 additions and 209 deletions

View File

@@ -1,7 +1,7 @@
grade=borderline
#Bordeline Primitives Pack for Wagic the Homebrew.
#Please keep these card alphabetized, and try to have the "name=" line at the top of each card
#I sorted this programmatically - Thanks to Vitty85 21-07-2023
#I sorted this programmatically - Thanks to Vitty85 24-07-2023
[card]
name=+2 Mace
auto={3}:equip
@@ -3751,9 +3751,10 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={5}{U} name(Mutate)
auto=transforms((,newability[@mutated(this):name(Tap X creatures) thisforeach(mutations) may target(creature) freeze]))
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
auto=@mutated(this):may name(Tap X creatures) target(<upto:mutations>creature|battlefield) freeze
auto=@mutated(mytgt):may name(Tap X creatures) target(<upto:mutations>creature|battlefield) freeze
text=Mutate {5}{U} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Whenever this creature mutates, tap up to X target creatures, where X is the number of times this creature has mutated. Those creatures don't untap during their controller's next untap step.
mana={5}{U}{U}
type=Creature
@@ -5504,10 +5505,10 @@ auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzon
auto={9999}:equip
other={5}{G} name(Mutate)
aicode=activate transforms((,newability[target(*[zpos=findfirsttypepermanent]|mylibrary) moveto(myexile) and!( moveto(myBattlefield) and!( all(*[zpos<=findfirsttypepermanent]|mylibrary) moveto(myexile) )! )!])) oneshot
auto=transforms((,newability[@mutated(this):thisforeach(mutations) ability$!name(Reveal) reveal:1 revealuntil(*[-instant;-sorcery]|mylibrary) optionone name(Exile permanent and play) target(*[-sorcery;-instant]|myreveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(Exile all non permanents) target(*[sorcery;instant]|myreveal) moveto(myexile) and!( all(*[sorcery;instant]|myreveal) moveto(myexile) )! optiontwoend afterrevealed all(tobecast|myexile) moveTo(myBattlefield) afterrevealedend revealend!$ controller]))
auto=ifnot paid(alternative) then transforms((,newability[becomes(,,green)])) forever all(this)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) && mutateover target(other creature[-human]|mybattlefield) && transforms((,newability[becomes(,,green)])) forever
auto=if paid(alternative) then name(Mutate Under) this(mutations<1) name(Mutate Under) choice name(Mutate Under)&& mutateunder target(other creature[-human]|mybattlefield)
auto=@mutated(this):thisforeach(mutations) ability$!name(Reveal) reveal:1 revealuntil(*[-instant;-sorcery]|mylibrary) optionone name(Exile permanent and play) target(*[-sorcery;-instant]|myreveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(Exile all non permanents) target(*[sorcery;instant]|myreveal) moveto(myexile) and!( all(*[sorcery;instant]|myreveal) moveto(myexile) )! optiontwoend afterrevealed all(tobecast|myexile) moveTo(myBattlefield) afterrevealedend revealend!$ controller
auto=@mutated(mytgt):thisforeach(mutations) ability$!name(Reveal) reveal:1 revealuntil(*[-instant;-sorcery]|mylibrary) optionone name(Exile permanent and play) target(*[-sorcery;-instant]|myreveal) moveto(myexile) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(Exile all non permanents) target(*[sorcery;instant]|myreveal) moveto(myexile) and!( all(*[sorcery;instant]|myreveal) moveto(myexile) )! optiontwoend afterrevealed all(tobecast|myexile) moveTo(myBattlefield) afterrevealedend revealend!$ controller
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
text=Mutate {5}{G} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Whenever this creature mutates, exile cards from the top of your library until you exile X permanent cards, where X is the number of times this creature has mutated. Put those permanent cards onto the battlefield.
mana={4}{G}
type=Creature
@@ -10937,9 +10938,10 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={2}{BG}{BG} name(Mutate)
auto=transforms((,newability[@mutated(this):moveto(myhand) target(*|mygraveyard)]))
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
auto=@mutated(this):name(Return to hand) target(*[-instant&-sorcery]|mygraveyard) moveto(myhand)
auto=@mutated(mytgt):name(Return to hand) target(*[-instant&-sorcery]|mygraveyard) moveto(myhand)
text=Mutate {2}{BG}{BG} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Whenever this creature mutates, return target permanent card from your graveyard to your hand.
mana={2}{B}{G}
type=Creature
@@ -12350,10 +12352,9 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={2}{UB}{G}{G} name(Mutate)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then name(Mutate Under) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
autograveyard={2}{U}{G}{G}:if type(creature[-human]|mybattlefield)~morethan~0 then name(Mutate from graveyard) name(Mutate from graveyard) choice name(Mutate from graveyard) activate castcard(alternative) else add{2}{U}{G}{G}
autograveyard={2}{B}{G}{G}:if type(creature[-human]|mybattlefield)~morethan~0 then name(Mutate from graveyard) name(Mutate from graveyard) choice name(Mutate from graveyard) activate castcard(alternative) else add{2}{B}{G}{G}
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
autograveyard={2}{UB}{G}{G} restriction{can play creature,type(creature[-human]|mybattlefield)~morethan~0}:name(Mutate from graveyard) name(Mutate from graveyard) name(Mutate from graveyard) transforms((,newability[activate castcard(alternative)])) oneshot
text=Mutate {2}{UB}{G}{G} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Trample -- You may cast Brokkos, Apex of Forever from your graveyard using its mutate ability.
mana={2}{B}{G}{U}
type=Legendary Creature
@@ -14478,9 +14479,10 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={3}{B} name(Mutate)
auto=transforms((,newability[@mutated(this):ability$!name(discard) target(*|myhand) reject!$ opponent]))
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
auto=@mutated(this):name(Discard a card) ability$!name(Discard a card) target(*|myhand) reject!$ opponent
auto=@mutated(mytgt):name(Discard a card) ability$!name(Discard a card) target(*|myhand) reject!$ opponent
text=Mutate {3}{B} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Menace (This creature can't be blocked except by two or more creatures.) -- Whenever this creature mutates, each opponent discards a card.
mana={4}{B}
type=Creature
@@ -16063,9 +16065,10 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={4}{B} name(Mutate)
auto=transforms((,newability[@mutated(this):ability$!sacrifice name(opponent sacrifices creature) notatarget(creature|mybattlefield)!$ opponent]))
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
auto=@mutated(this):name(Opponent sacrifices creature) ability$!name(Sacrifice a creature) sacrifice notatarget(creature|mybattlefield)!$ opponent
auto=@mutated(mytgt):name(Oppponent sacrifices creature) ability$!name(Sacrifice a creature) sacrifice notatarget(creature|mybattlefield)!$ opponent
text=Mutate {4}{B} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Whenever this creature mutates, each opponent sacrifices a creature.
mana={5}{B}
type=Creature
@@ -17216,9 +17219,10 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={3}{R} name(Mutate)
auto=transforms((,newability[@mutated(this):may _DISCARD&DRAW_]))
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
auto=@mutated(this):may _DISCARD&DRAW_
auto=@mutated(mytgt):may _DISCARD&DRAW_
text=Mutate {3}{R} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Reach -- Whenever this creature mutates, you may discard a card. If you do, draw a card.
mana={4}{R}
type=Creature
@@ -20285,9 +20289,10 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={2}{W}{W} name(Mutate)
auto=transforms((,newability[@mutated(this):token(Cat Cub)*2]))
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
auto=@mutated(this):name(Create cat) token(Cat Cub)*2
auto=@mutated(mytgt):name(Create cat) token(Cat Cub)*2
text=Mutate {2}{W}{W} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Lifelink -- Whenever this creature mutates, create two 1/1 white Cat creature tokens with lifelink.
mana={3}{W}
type=Creature
@@ -24165,9 +24170,10 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={2}{B}{B} name(Mutate)
auto=transforms((,newability[@mutated(this):target(*[creature;planeswalker]|opponentBattlefield) destroy]))
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
auto=@mutated(this):name(Destroy creature or planeswalker) target(*[creature;planeswalker]|opponentBattlefield) destroy
auto=@mutated(mytgt):name(Destroy creature or planeswalker)target(*[creature;planeswalker]|opponentBattlefield) destroy
text=Mutate {4}{B}{B} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Flash -- Flying -- Whenever this creature mutates, destroy target creature or planeswalker an opponent controls.
mana={2}{B}{B}
type=Creature
@@ -26118,9 +26124,10 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={3}{U} name(Mutate)
auto=transforms((,newability[@mutated(this):draw:1 controller]))
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
auto=@mutated(this):name(Draw a card) draw:1 controller
auto=@mutated(mytgt):name(Draw a card) draw:1 controller
text=Mutate {3}{U} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Flying -- Whenever this creature mutates, draw a card.
mana={4}{U}
type=Creature
@@ -29867,8 +29874,8 @@ type=Sorcery
[/card]
[card]
name=Essence Symbiote
auto=@mutated(creature|mybattlefield):all(trigger[to]) counter(1/1)
auto=@mutated(creature|mybattlefield):life:2
auto=@mutated(creature|mybattlefield):name(Put 1/1 counter) all(trigger[to]) name(Put 1/1 counter) counter(1/1)
auto=@mutated(creature|mybattlefield):name(Gain 2 life) life:2 controller
text=Whenever a creature you control mutates, put a +1/+1 counter on that creature and you gain 2 life.
mana={1}{G}
type=Creature
@@ -30265,9 +30272,10 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={3}{R} name(Mutate)
auto=transforms((,newability[@mutated(this):token(Feather Eve)]))
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
auto=@mutated(this):name(Create feather eve) token(Feather Eve)
auto=@mutated(mytgt):name(Create feather eve) token(Feather Eve)
text=Mutate {3}{R} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Flying -- Whenever this creature mutates, create a red artifact token named Feather with "{1}, Sacrifice Feather: Return target Phoenix card from your graveyard to the battlefield tapped."
mana={2}{R}{R}
type=Creature
@@ -32698,7 +32706,9 @@ toughness=6
[/card]
[card]
name=Feather Eve
auto={1}{S}:target(*[Phoenix]|mygraveyard) moveto(myBattlefield) and!(tap(noevent))!
auto={1}{S}:name(Return a phoenix) target(*[phoenix]|mygraveyard) moveto(myBattlefield) and!( tap(noevent) )!
text={1}, Sacrifice Feather: Return target Phoenix card from your graveyard to the battlefield tapped.
color=red
type=Artifact
[/card]
[card]
@@ -37134,10 +37144,10 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={1}{G}{G} name(Mutate)
auto=transforms((,newability[@mutated(this):target(*[artifact;enchantment]|opponentBattlefield) destroy]))
auto=ifnot paid(alternative) then transforms((,newability[becomes(,,green)])) forever all(this)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield) && transforms((,newability[becomes(,,green)])) forever
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
auto=@mutated(this):name(Destroy artifact or enchantment) target(*[artifact;enchantment]|opponentBattlefield) destroy
auto=@mutated(mytgt):name(Destroy artifact or enchantment) target(*[artifact;enchantment]|opponentBattlefield) destroy
text=Mutate {1}{G}{G} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Reach, trample -- Whenever this creature mutates, destroy target artifact or enchantment an opponent controls.
mana={3}{G}
type=Creature
@@ -39118,9 +39128,9 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={3}{G} name(Mutate)
auto=transforms((,newability[@mutated(this):counter(1/1) && counter(1/1)]))
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover && transforms((,newability[counter(1/1.2)],newability[@mutated(this):name(Put 1/1 counters) counter(1/1.2)])) forever
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder && transforms((,newability[counter(1/1.2)],newability[@mutated(this):name(Put 1/1 counters) counter(1/1.2)])) forever
auto=ifnot paid(alternative) then transforms((,newability[@mutated(this):name(Put 1/1 counters) counter(1/1.2)])) forever
text=Mutate {3}{G} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Reach -- Whenever this creature mutates, put two +1/+1 counters on it.
mana={2}{G}
type=Creature
@@ -42801,8 +42811,8 @@ type=Land
[card]
name=Hall of Storm Giants
auto=if compare(type:land:myBattlefield)~morethan~2 then tap(noevent)
auto={T}:Add{U}
auto={5}{U}:name(Becomes giant) transforms((,newability[becomes(Creature Giant^7/7^blue) ueot],newability[@targeted(this) from(*|opponentstack):choice name(This spell costs 3 more) name(This spell costs 3 more) target(*|opponentstack) transforms((,newability[pay[[{3}]] name(pay 3 mana) donothing?fizzle])) oneshot])) ueot
auto={T}:add{U}
auto={5}{U}:name(Becomes giant) transforms((Creature Giant,setpower=7,settoughness=7,newability[becomes(^^blue) ueot],newability[@targeted(this) from(*|opponentzones):choice name(This spell costs 3 more) name(This spell costs 3 more) target(*|opponentstack) transforms((,newability[pay[[{3}]] name(pay 3 mana) donothing?fizzle])) oneshot])) ueot
text=If you control two or more other lands, Hall of Storm Giants enters the battlefield tapped. -- {T}: Add {U}. -- {5}{U}: Until end of turn, Hall of Storm Giants becomes a 7/7 blue Giant creature with ward {3}. it's still a land. (Whenever it becomes the target of a spell or ability an opponent controls, counter it unless that player pays {3}.)
type=Land
[/card]
@@ -43000,13 +43010,27 @@ type=Sorcery
[/card]
[card]
name=Hammer Jammer
auto={3}{G}:all(this) rolld6 6 winability counter(1/1,lastrollresult) winabilityend loseability counter(1/1,lastrollresult) loseabilityend rolld6end
auto=@dierolled(*|battlefield) result(1) from(controller):name(Get counter) name(Get counter) removeallcounters(1/1) && transforms((,newability[counter(1/1)])) all(this)
auto=@dierolled(*|battlefield) result(2) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.2)])) all(this)
auto=@dierolled(*|battlefield) result(3) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.3)])) all(this)
auto=@dierolled(*|battlefield) result(4) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.4)])) all(this)
auto=@dierolled(*|battlefield) result(5) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.5)])) all(this)
auto=@dierolled(*|battlefield) result(6) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.6)])) all(this)
auto=name(Roll a die) rolld6 6 winability counter(1/1,lastrollresult) winabilityend loseability counter(1/1,lastrollresult) loseabilityend rolld6end
auto=@dierolled(*|mybattlefield) result(1) from(controller):name(Get counter) name(Get counter) removeallcounters(1/1) && transforms((,newability[counter(1/1)])) all(this)
auto=@dierolled(*|mybattlefield) result(2) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.2)])) all(this)
auto=@dierolled(*|mybattlefield) result(3) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.3)])) all(this)
auto=@dierolled(*|mybattlefield) result(4) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.4)])) all(this)
auto=@dierolled(*|mybattlefield) result(5) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.5)])) all(this)
auto=@dierolled(*|mybattlefield) result(6) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.6)])) all(this)
auto=@dierolled(*|mybattlefield) result(7) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.7)])) all(this)
auto=@dierolled(*|mybattlefield) result(8) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.8)])) all(this)
auto=@dierolled(*|mybattlefield) result(9) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.9)])) all(this)
auto=@dierolled(*|mybattlefield) result(10) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.10)])) all(this)
auto=@dierolled(*|mybattlefield) result(11) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.11)])) all(this)
auto=@dierolled(*|mybattlefield) result(12) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.12)])) all(this)
auto=@dierolled(*|mybattlefield) result(13) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.13)])) all(this)
auto=@dierolled(*|mybattlefield) result(14) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.14)])) all(this)
auto=@dierolled(*|mybattlefield) result(15) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.15)])) all(this)
auto=@dierolled(*|mybattlefield) result(16) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.16)])) all(this)
auto=@dierolled(*|mybattlefield) result(17) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.17)])) all(this)
auto=@dierolled(*|mybattlefield) result(18) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.18)])) all(this)
auto=@dierolled(*|mybattlefield) result(19) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.19)])) all(this)
auto=@dierolled(*|mybattlefield) result(20) from(controller):name(Get counters) name(Get counters) removeallcounters(1/1) && transforms((,newability[counter(1/1.20)])) all(this)
text=As Hammer Jammer enters the battlefield, roll a six-sided die. Hammer Jammer enters the battlefield with a number of +1/+1 counters on it equal to the result. -- Whenever you roll a die, remove all +1/+1 counters from Hammer Jammer, then put a number of +1/+1 counters on it equal to the result.
mana={3}{R}
type=Creature
@@ -43312,7 +43336,7 @@ toughness=2
name=Harmonic Prodigy
#MISSING: not possible to trigger twice any ability ATM
abilities=prowess
auto=@movedTo(*[-creature]|mystack):1/1 ueot
auto=@movedTo(*[-creature]|mystack):name(Gains 1/1 ueot) 1/1 ueot
text=Prowess (Whenever you cast a noncreature spell, this creature gets +1/+1 until end of turn.) -- If an ability of a Shaman or another Wizard you control triggers, that ability triggers an additional time.
mana={1}{R}
type=Creature
@@ -43452,27 +43476,30 @@ toughness=1
[/card]
[card]
name=Harvest Pyre
target=creature
auto=if type(*|mygraveyard)~morethan~0 then choice name(Exile 1 card) ability$!moveTo(exile) notatarget(*|mygraveyard)!$ controller && damage:1 target(creature)
auto=if type(*|mygraveyard)~morethan~1 then choice name(Exile 2 cards) ability$!moveTo(exile) notatarget(<2>*|mygraveyard)!$ controller && damage:2 target(creature)
auto=if type(*|mygraveyard)~morethan~2 then choice name(Exile 3 cards) ability$!moveTo(exile) notatarget(<3>*|mygraveyard)!$ controller && damage:3 target(creature)
auto=if type(*|mygraveyard)~morethan~3 then choice name(Exile 4 cards) ability$!moveTo(exile) notatarget(<4>*|mygraveyard)!$ controller && damage:4 target(creature)
auto=if type(*|mygraveyard)~morethan~4 then choice name(Exile 5 cards) ability$!moveTo(exile) notatarget(<5>*|mygraveyard)!$ controller && damage:5 target(creature)
auto=if type(*|mygraveyard)~morethan~5 then choice name(Exile 6 cards) ability$!moveTo(exile) notatarget(<6>*|mygraveyard)!$ controller && damage:6 target(creature)
auto=if type(*|mygraveyard)~morethan~6 then choice name(Exile 7 cards) ability$!moveTo(exile) notatarget(<7>*|mygraveyard)!$ controller && damage:7 target(creature)
auto=if type(*|mygraveyard)~morethan~7 then choice name(Exile 8 cards) ability$!moveTo(exile) notatarget(<8>*|mygraveyard)!$ controller && damage:8 target(creature)
auto=if type(*|mygraveyard)~morethan~8 then choice name(Exile 9 cards) ability$!moveTo(exile) notatarget(<9>*|mygraveyard)!$ controller && damage:9 target(creature)
auto=if type(*|mygraveyard)~morethan~9 then choice name(Exile 10 cards) ability$!moveTo(exile) notatarget(<10>*|mygraveyard)!$ controller && damage:10 target(creature)
auto=if type(*|mygraveyard)~morethan~10 then choice name(Exile 11 cards) ability$!moveTo(exile) notatarget(<11>*|mygraveyard)!$ controller && damage:11 target(creature)
auto=if type(*|mygraveyard)~morethan~11 then choice name(Exile 12 cards) ability$!moveTo(exile) notatarget(<12>*|mygraveyard)!$ controller && damage:12 target(creature)
auto=if type(*|mygraveyard)~morethan~12 then choice name(Exile 13 cards) ability$!moveTo(exile) notatarget(<13>*|mygraveyard)!$ controller && damage:13 target(creature)
auto=if type(*|mygraveyard)~morethan~13 then choice name(Exile 14 cards) ability$!moveTo(exile) notatarget(<14>*|mygraveyard)!$ controller && damage:14 target(creature)
auto=if type(*|mygraveyard)~morethan~14 then choice name(Exile 15 cards) ability$!moveTo(exile) notatarget(<15>*|mygraveyard)!$ controller && damage:15 target(creature)
auto=if type(*|mygraveyard)~morethan~15 then choice name(Exile 16 cards) ability$!moveTo(exile) notatarget(<16>*|mygraveyard)!$ controller && damage:16 target(creature)
auto=if type(*|mygraveyard)~morethan~16 then choice name(Exile 17 cards) ability$!moveTo(exile) notatarget(<17>*|mygraveyard)!$ controller && damage:17 target(creature)
auto=if type(*|mygraveyard)~morethan~17 then choice name(Exile 18 cards) ability$!moveTo(exile) notatarget(<18>*|mygraveyard)!$ controller && damage:18 target(creature)
auto=if type(*|mygraveyard)~morethan~18 then choice name(Exile 19 cards) ability$!moveTo(exile) notatarget(<19>*|mygraveyard)!$ controller && damage:19 target(creature)
auto=if type(*|mygraveyard)~morethan~19 then choice name(Exile 20 cards) ability$!moveTo(exile) notatarget(<20>*|mygraveyard)!$ controller && damage:20 target(creature)
other={1}{R} name(Cast and exile cards)
otherrestriction=type(*|mygraveyard)~morethan~0,type(creature|battlefield)~morethan~0
restriction=type(creature|battlefield)~morethan~0
auto=if paid(alternative) then if type(*|mygraveyard)~morethan~0 then choice name(Damage creature and exile 1 card) name(Damage creature and exile 1 card) name(Damage creature and exile 1 card) activate castcard(copied noevent costx!:1:! named!:Harvest Pyre:!) and!( ability$!name(Exile 1 card) target(*|mygraveyard) moveto(myexile)!$ controller )!
auto=if paid(alternative) then if type(*|mygraveyard)~morethan~1 then choice name(Damage creature and exile 2 cards) name(Damage creature and exile 2 cards) name(Damage creature and exile 2 cards) activate castcard(copied noevent costx!:2:! named!:Harvest Pyre:!) and!( ability$!name(Exile 2 cards) target(<2>*|mygraveyard) moveto(myexile)!$ controller )!
auto=if paid(alternative) then if type(*|mygraveyard)~morethan~2 then choice name(Damage creature and exile 3 cards) name(Damage creature and exile 3 cards) name(Damage creature and exile 3 cards) activate castcard(copied noevent costx!:3:! named!:Harvest Pyre:!) and!( ability$!name(Exile 3 cards) target(<3>*|mygraveyard) moveto(myexile)!$ controller )!
auto=if paid(alternative) then if type(*|mygraveyard)~morethan~3 then choice name(Damage creature and exile 4 cards) name(Damage creature and exile 4 cards) name(Damage creature and exile 4 cards) activate castcard(copied noevent costx!:4:! named!:Harvest Pyre:!) and!( ability$!name(Exile 4 cards) target(<4>*|mygraveyard) moveto(myexile)!$ controller )!
auto=if paid(alternative) then if type(*|mygraveyard)~morethan~4 then choice name(Damage creature and exile 5 cards) name(Damage creature and exile 5 cards) name(Damage creature and exile 5 cards) activate castcard(copied noevent costx!:5:! named!:Harvest Pyre:!) and!( ability$!name(Exile 5 cards) target(<5>*|mygraveyard) moveto(myexile)!$ controller )!
auto=if paid(alternative) then if type(*|mygraveyard)~morethan~5 then choice name(Damage creature and exile 6 cards) name(Damage creature and exile 6 cards) name(Damage creature and exile 6 cards) activate castcard(copied noevent costx!:6:! named!:Harvest Pyre:!) and!( ability$!name(Exile 6 cards) target(<6>*|mygraveyard) moveto(myexile)!$ controller )!
auto=if paid(alternative) then if type(*|mygraveyard)~morethan~6 then choice name(Damage creature and exile 7 cards) name(Damage creature and exile 7 cards) name(Damage creature and exile 7 cards) activate castcard(copied noevent costx!:7:! named!:Harvest Pyre:!) and!( ability$!name(Exile 7 cards) target(<7>*|mygraveyard) moveto(myexile)!$ controller )!
auto=if paid(alternative) then if type(*|mygraveyard)~morethan~7 then choice name(Damage creature and exile 8 cards) name(Damage creature and exile 8 cards) name(Damage creature and exile 8 cards) activate castcard(copied noevent costx!:8:! named!:Harvest Pyre:!) and!( ability$!name(Exile 8 cards) target(<8>*|mygraveyard) moveto(myexile)!$ controller )!
auto=if paid(alternative) then if type(*|mygraveyard)~morethan~8 then choice name(Damage creature and exile 9 cards) name(Damage creature and exile 9 cards) name(Damage creature and exile 9 cards) activate castcard(copied noevent costx!:9:! named!:Harvest Pyre:!) and!( ability$!name(Exile 9 cards) target(<9>*|mygraveyard) moveto(myexile)!$ controller )!
auto=if paid(alternative) then if type(*|mygraveyard)~morethan~9 then choice name(Damage creature and exile 10 cards) name(Damage creature and exile 10 cards) name(Damage creature and exile 10 cards) activate castcard(copied noevent costx!:10:! named!:Harvest Pyre:!) and!( ability$!name(Exile 10 cards) target(<10>*|mygraveyard) moveto(myexile)!$ controller )!
auto=if paid(alternative) then if type(*|mygraveyard)~morethan~10 then choice name(Damage creature and exile 11 cards) name(Damage creature and exile 11 cards) name(Damage creature and exile 11 cards) activate castcard(copied noevent costx!:11:! named!:Harvest Pyre:!) and!( ability$!name(Exile 11 cards) target(<11>*|mygraveyard) moveto(myexile)!$ controller )!
auto=if paid(alternative) then if type(*|mygraveyard)~morethan~11 then choice name(Damage creature and exile 12 cards) name(Damage creature and exile 12 cards) name(Damage creature and exile 12 cards) activate castcard(copied noevent costx!:12:! named!:Harvest Pyre:!) and!( ability$!name(Exile 12 cards) target(<12>*|mygraveyard) moveto(myexile)!$ controller )!
auto=if paid(alternative) then if type(*|mygraveyard)~morethan~12 then choice name(Damage creature and exile 13 cards) name(Damage creature and exile 13 cards) name(Damage creature and exile 13 cards) activate castcard(copied noevent costx!:13:! named!:Harvest Pyre:!) and!( ability$!name(Exile 13 cards) target(<13>*|mygraveyard) moveto(myexile)!$ controller )!
auto=if paid(alternative) then if type(*|mygraveyard)~morethan~13 then choice name(Damage creature and exile 14 cards) name(Damage creature and exile 14 cards) name(Damage creature and exile 14 cards) activate castcard(copied noevent costx!:14:! named!:Harvest Pyre:!) and!( ability$!name(Exile 14 cards) target(<14>*|mygraveyard) moveto(myexile)!$ controller )!
auto=if paid(alternative) then if type(*|mygraveyard)~morethan~14 then choice name(Damage creature and exile 15 cards) name(Damage creature and exile 15 cards) name(Damage creature and exile 15 cards) activate castcard(copied noevent costx!:15:! named!:Harvest Pyre:!) and!( ability$!name(Exile 15 cards) target(<15>*|mygraveyard) moveto(myexile)!$ controller )!
auto=if paid(alternative) then if type(*|mygraveyard)~morethan~15 then choice name(Damage creature and exile 16 cards) name(Damage creature and exile 16 cards) name(Damage creature and exile 16 cards) activate castcard(copied noevent costx!:16:! named!:Harvest Pyre:!) and!( ability$!name(Exile 16 cards) target(<16>*|mygraveyard) moveto(myexile)!$ controller )!
auto=if paid(alternative) then if type(*|mygraveyard)~morethan~16 then choice name(Damage creature and exile 17 cards) name(Damage creature and exile 17 cards) name(Damage creature and exile 17 cards) activate castcard(copied noevent costx!:17:! named!:Harvest Pyre:!) and!( ability$!name(Exile 17 cards) target(<17>*|mygraveyard) moveto(myexile)!$ controller )!
auto=if paid(alternative) then if type(*|mygraveyard)~morethan~17 then choice name(Damage creature and exile 18 cards) name(Damage creature and exile 18 cards) name(Damage creature and exile 18 cards) activate castcard(copied noevent costx!:18:! named!:Harvest Pyre:!) and!( ability$!name(Exile 18 cards) target(<18>*|mygraveyard) moveto(myexile)!$ controller )!
auto=if paid(alternative) then if type(*|mygraveyard)~morethan~18 then choice name(Damage creature and exile 19 cards) name(Damage creature and exile 19 cards) name(Damage creature and exile 19 cards) activate castcard(copied noevent costx!:19:! named!:Harvest Pyre:!) and!( ability$!name(Exile 19 cards) target(<19>*|mygraveyard) moveto(myexile)!$ controller )!
auto=if paid(alternative) then if type(*|mygraveyard)~morethan~19 then choice name(Damage creature and exile 20 cards) name(Damage creature and exile 20 cards) name(Damage creature and exile 20 cards) activate castcard(copied noevent costx!:20:! named!:Harvest Pyre:!) and!( ability$!name(Exile 20 cards) target(<20>*|mygraveyard) moveto(myexile)!$ controller )!
auto=ifnot paid(alternative) then name(Damage creature) name(Damage creature) target(creature|battlefield) damage:fullpaid
text=As an additional cost to cast Harvest Pyre, exile X cards from your graveyard. -- Harvest Pyre deals X damage to target creature.
mana={1}{R}
type=Instant
@@ -43601,8 +43628,8 @@ toughness=4
[card]
name=Hauken's Insight
backside=Jacob Hauken, Inspector
auto=@each my upkeep:name(Exile top card) all(*[zpos=1]|mylibrary) moveto(myexile) and!( counter(0/0,1,GlassExiled) )!
auto=lord(*[counter{0/0.1.GlassExiled}]|myexile) transforms((,newability[this(variable{controllerturn}>0) canplayfromexile],newability[this(variable{controllerturn}>0) zerocast]))
auto=@each my upkeep:name(Exile top card) all(*[zpos=1]|mylibrary) moveto(myexile) and!( becomes(GlassExiled) forever )!
auto=this(variable{controllerturn}>0) {0}:name(Can cast exiled card) name(Can cast exiled card) target(GlassExiled|myexile) transforms((,newability[canplayfromexile ueot],newability[zerocast ueot])) ueot limit:1
text=At the beginning of your upkeep, exile the top card of your library face-down. You may look at that card for as long as it remains exiled. -- Once during each of your turns, you may play a land or cast a spell from the cards exiled by this permanent without paying its mana cost. // Jacob Hauken, Inspector
color=blue
type=Legendary Enchantment
@@ -43812,8 +43839,7 @@ type=Legendary Artifact
[/card]
[card]
name=Hazoret's Undying Fury
auto=moverandom(<upto:3>*[manacost<=5;-land]) from(mylibrary) to(mybattlefield)
auto=all(land|mybattlefield) frozen
auto=shuffle controller && all(*[zpos=4]|mylibrary) moveto(myexile) and!( transforms((tobehaz,newability[all(land|mybattlefield) frozen],newability[all(*[zpos<=4]|mylibrary) moveto(myexile) and!( becomes(tobehaz) ueot)!],newability[name(Cast exiled cards) target(<anyamount>tobehaz[-land&manacost<=5]|myexile) activate castcard(normal)])) ueot )!
text=Shuffle your library, then exile the top four cards. You may cast any number of nonland cards with mana value 5 or less from among them without paying their mana costs. Lands you control don't untap during your next untap step.
mana={4}{R}{R}
type=Sorcery
@@ -44476,8 +44502,7 @@ toughness=4
[/card]
[card]
name=Herald's Horn
auto=chooseatype transforms(([@each my upkeep:name(Reveal) reveal:1 optionone target(chosentype|reveal) transforms(([may moveTo(myhand)])) oneshot optiononeend optiontwo target(*|reveal) moveto(mylibrary) optiontwoend revealend])) chooseend
auto=lord(*[creature&chosentype]|mycastingzone) altercost(colorless,-1)
auto=chooseatype transforms((,newability[lord(creature[chosentype]|mycastingzone) changecost(colorless:-1)],newability[@each my upkeep restriction{type(creature[chosentype&zpos=1]|mylibrary)~equalto~0}:name(Look top card) all(*[zpos=1]|mylibrary) moveto(myhand) and!( name(Put back) target(*[fresh]|myhand) moveto(mylibrary) )!],newability[@each my upkeep restriction{type(creature[chosentype&zpos=1]|mylibrary)~morethan~0}:name(Look top card) all(*[zpos=1]|mylibrary) moveto(myhand) and!( transforms((,newability[choice name(Keep in hand) donothing],newability[choice name(Put back) moveto(mylibrary)])) oneshot )! ])) forever chooseend
text=As Herald's Horn enters the battlefield, choose a creature type. -- Creature spells you cast of the chosen type cost {1} less to cast. -- At the beginning of your upkeep, look at the top card of your library. If it's a creature card of the chosen type, you may reveal it and put it into your hand.
mana={3}
type=Artifact
@@ -44670,8 +44695,8 @@ type=Sorcery
[card]
name=Heron of Hope
abilities=flying,lifefaker
auto=@lifeof(player) from(*[-lifefaker]|*):life:1 controller
auto={1}{W}:name(Gains lifelink) transforms((,newability[lifelink])) ueot
auto=@lifeof(player) from(*[-lifefaker]|*):name(Gain 1 life) life:1 controller
auto={1}{W}:name(Gains lifelink) transforms((,newability[lifelink],newability[@damaged(player) from(this):name(Gain 1 life) life:1 controller],newability[@damaged(*|battlefield) from(this):name(Gain 1 life) life:1 controller])) ueot
text=Flying -- If you would gain life, you gain that much life plus 1 instead. -- {1}{W}: Heron of Hope gains lifelink until end of turn.
mana={3}{W}
type=Creature
@@ -46474,9 +46499,9 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={2}{W} name(Mutate)
auto=transforms((,newability[@mutated(this):name(All creatures X/X ueot) thisforeach(mutations) all(other creature|myBattlefield) 1/1 ueot]))
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover && transforms((,newability[name(All creatures X/X ueot) thisforeach(mutations) all(other creature|myBattlefield) 1/1 ueot],newability[@mutated(this):name(All creatures X/X ueot) thisforeach(mutations) all(other creature|myBattlefield) 1/1 ueot])) forever
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder && transforms((,newability[name(All creatures X/X ueot) thisforeach(mutations) all(other creature|myBattlefield) 1/1 ueot],newability[@mutated(this):name(All creatures X/X ueot) thisforeach(mutations) all(other creature|myBattlefield) 1/1 ueot])) forever
auto=ifnot paid(alternative) then transforms((,newability[@mutated(this):name(All creatures X/X ueot) thisforeach(mutations) all(other creature|myBattlefield) 1/1 ueot])) forever
text=Mutate {2}{W} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Whenever this creature mutates, other creatures you control get +X/+X until end of turn, where X is the number of times this creature has mutated.
mana={3}{W}
type=Creature
@@ -47170,10 +47195,11 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={3}{RG}{U}{U} name(Mutate)
auto=transforms((,newability[@mutated(this):ability$!name(Reveal) reveal:1 revealzone(mylibrary) revealuntil(*[-land;-instant;-sorcery]|mylibrary) optionone name(May move non land permanent on battlefield) target(<upto:1>*[-land;-instant;-sorcery]|myreveal) moveto(mybattlefield) optiononeend optiontwo name(Move revealed cards to exile) all(*|myreveal) moveto(myexile) optiontwoend afterrevealed name(Move last exiled non land permanent to hand) moveto(myhand) target(*[fresh;-land;-instant;-sorcery]|myexile) afterrevealedend revealend!$ controller]))
auto=ifnot paid(alternative) then transforms((,newability[becomes(,,green,blue,red)])) forever all(this)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield) && transforms((,newability[becomes(,,green,blue,red)])) forever
auto=if paid(alternative) then name(Mutate Under) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
aicode=activate transforms((,newability[target(*[zpos=findfirsttypepermanent]|mylibrary) moveto(myexile) and!( transforms((,newability[if cantargetcard(*[land]|*) then moveto(myexile) and!( all(*[zpos<=findfirsttypepermanent]|mylibrary) moveto(myexile) )!],newability[if cantargetcard(*[creature]|*) then moveto(mybattlefield) and!( all(*[zpos<=findfirsttypepermanent]|mylibrary) moveto(myexile) )!],newability[if cantargetcard(*[-land&-creature]|*) then moveto(myhand) and!( all(*[zpos<=findfirsttypepermanent]|mylibrary) moveto(myexile) )!])) oneshot )!])) oneshot
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
auto=@mutated(this):name(Exile top cards) reveal:1 revealzone(mylibrary) revealuntil(*[-land&permanent]|mylibrary) optionone name(Choose nonland permanent) target(*[-land&permanent]|myreveal) moveto(myexile) and!( becomes(tobeill) ueot )! optiononeend optiontwo name(Exile revealed cards) all(*|myreveal) moveto(myexile) optiontwoend afterrevealed all(*[tobeill]|myexile) transforms((,newability[choice name(Put in play) moveto(mybattlefield)],newability[choice name(Put in hand) moveto(myhand)])) oneshot afterrevealedend revealend
auto=@mutated(mytgt):name(Exile top cards) reveal:1 revealzone(mylibrary) revealuntil(*[-land&permanent]|mylibrary) optionone name(Choose nonland permanent) target(*[-land&permanent]|myreveal) moveto(myexile) and!( becomes(tobeill) ueot )! optiononeend optiontwo name(Exile revealed cards) all(*|myreveal) moveto(myexile) optiontwoend afterrevealed all(*[tobeill]|myexile) transforms((,newability[choice name(Put in play) moveto(mybattlefield)],newability[choice name(Put in hand) moveto(myhand)])) oneshot afterrevealedend revealend
text=Mutate {3}{RG}{U}{U} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Flying, trample -- Whenever this creature mutates, exile cards from the top of your library until you exile a nonland permanent card. Put that card onto the battlefield or into your hand.
mana={2}{G}{U}{R}
type=Legendary Creature
@@ -48654,9 +48680,10 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={2}{B} name(Mutate)
auto=transforms((,newability[@mutated(this):name(Life and damage) thisforeach(mutations) life:1 controller && life:-1 opponent]))
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
auto=@mutated(this):name(Gain life) lifeleech:-mutations opponent
auto=@mutated(mytgt):name(Gain life) lifeleech:-mutations opponent
text=Mutate {2}{B} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Deathtouch -- Whenever this creature mutates, each opponent loses X life and you gain X life, where X is the number of times this creature has mutated.
mana={3}{B}
type=Creature
@@ -57311,28 +57338,28 @@ toughness=1
[/card]
[card]
name=Lonis, Cryptozoologist
aicode=activate target(*[-land;zpos<=1]|opponentlibrary) moveto(myBattlefield)
aicode=activate transforms((,newability[target(*[-land&zpos<=1]|opponentlibrary) moveto(myBattlefield)])) oneshot
auto=@movedTo(other creature[-token]|mybattlefield):name(Create clue) token(Clue)
auto={T}{S(clue[token]|myBattlefield)}:name(Sacrifice 1 clue) reveal:1 revealzone(opponentlibrary) optionone target(<upto:1>*|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 2 clues) reveal:2 revealzone(opponentlibrary) optionone target(<upto:1>*|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 3 clues) reveal:3 revealzone(opponentlibrary) optionone target(<upto:1>*|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 4 clues) reveal:4 revealzone(opponentlibrary) optionone target(<upto:1>*|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 5 clues) reveal:5 revealzone(opponentlibrary) optionone target(<upto:1>*|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 6 clues) reveal:6 revealzone(opponentlibrary) optionone target(<upto:1>*|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 7 clues) reveal:7 revealzone(opponentlibrary) optionone target(<upto:1>*|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 8 clues) reveal:8 revealzone(opponentlibrary) optionone target(<upto:1>*|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 9 clues) reveal:9 revealzone(opponentlibrary) optionone target(<upto:1>*|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 10 clues) reveal:10 revealzone(opponentlibrary) optionone target(<upto:1>*|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 11 clues) reveal:11 revealzone(opponentlibrary) optionone target(<upto:1>*|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 12 clues) reveal:12 revealzone(opponentlibrary) optionone target(<upto:1>*|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 13 clues) reveal:13 revealzone(opponentlibrary) optionone target(<upto:1>*|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 14 clues) reveal:14 revealzone(opponentlibrary) optionone target(<upto:1>*|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 15 clues) reveal:15 revealzone(opponentlibrary) optionone target(<upto:1>*|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 16 clues) reveal:16 revealzone(opponentlibrary) optionone target(<upto:1>*|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 17 clues) reveal:17 revealzone(opponentlibrary) optionone target(<upto:1>*|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 18 clues) reveal:18 revealzone(opponentlibrary) optionone target(<upto:1>*|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 19 clues) reveal:19 revealzone(opponentlibrary) optionone target(<upto:1>*|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 20 clues) reveal:20 revealzone(opponentlibrary) optionone target(<upto:1>*|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}:name(Sacrifice 1 clue) reveal:1 revealzone(opponentlibrary) optionone target(<upto:1>*[-land;manacost<=1]|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 2 clues) reveal:2 revealzone(opponentlibrary) optionone target(<upto:1>*[-land;manacost<=2]|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 3 clues) reveal:3 revealzone(opponentlibrary) optionone target(<upto:1>*[-land;manacost<=3]|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 4 clues) reveal:4 revealzone(opponentlibrary) optionone target(<upto:1>*[-land;manacost<=4]|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 5 clues) reveal:5 revealzone(opponentlibrary) optionone target(<upto:1>*[-land;manacost<=5]|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 6 clues) reveal:6 revealzone(opponentlibrary) optionone target(<upto:1>*[-land;manacost<=6]|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 7 clues) reveal:7 revealzone(opponentlibrary) optionone target(<upto:1>*[-land;manacost<=7]|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 8 clues) reveal:8 revealzone(opponentlibrary) optionone target(<upto:1>*[-land;manacost<=8]|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 9 clues) reveal:9 revealzone(opponentlibrary) optionone target(<upto:1>*[-land;manacost<=9]|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 10 clues) reveal:10 revealzone(opponentlibrary) optionone target(<upto:1>*[-land;manacost<=10]|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 11 clues) reveal:11 revealzone(opponentlibrary) optionone target(<upto:1>*[-land;manacost<=11]|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 12 clues) reveal:12 revealzone(opponentlibrary) optionone target(<upto:1>*[-land;manacost<=12]|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 13 clues) reveal:13 revealzone(opponentlibrary) optionone target(<upto:1>*[-land;manacost<=13]|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 14 clues) reveal:14 revealzone(opponentlibrary) optionone target(<upto:1>*[-land;manacost<=14]|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 15 clues) reveal:15 revealzone(opponentlibrary) optionone target(<upto:1>*[-land;manacost<=15]|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 16 clues) reveal:16 revealzone(opponentlibrary) optionone target(<upto:1>*[-land;manacost<=16]|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 17 clues) reveal:17 revealzone(opponentlibrary) optionone target(<upto:1>*[-land;manacost<=17]|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 18 clues) reveal:18 revealzone(opponentlibrary) optionone target(<upto:1>*[-land;manacost<=18]|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 19 clues) reveal:19 revealzone(opponentlibrary) optionone target(<upto:1>*[-land;manacost<=19]|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
auto={T}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}{S(clue[token]|myBattlefield)}:name(Sacrifice 20 clues) reveal:20 revealzone(opponentlibrary) optionone target(<upto:1>*[-land;manacost<=20]|reveal) moveto(myBattlefield) optiononeend optiontwo target(*|reveal) bottomoflibrary and!( all(*|reveal) bottomoflibrary )! optiontwoend revealend
text=Whenever another nontoken creature enters the battlefield under your control, investigate. -- {T}, Sacrifice X Clues: Target opponent reveals the top X cards of their library. You may put a nonland permanent card with mana value X or less from among them onto the battlefield under your control. That player puts the rest on the bottom of their library in a random order.
mana={G}{U}
type=Legendary Creature
@@ -57495,9 +57522,10 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={UR}{UR} name(Mutate)
auto=transforms((,newability[@mutated(this):moveto(myhand) target(*[instant;sorcery]|mygraveyard)]))
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
auto=@mutated(this):name(Return to hand) target(*[instant;sorcery]|mygraveyard) moveto(myhand)
auto=@mutated(mytgt):name(Return to hand) target(*[instant;sorcery]|mygraveyard) moveto(myhand)
text=Mutate {UR}{UR} -- (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Whenever this creature mutates, return target instant or sorcery card from your graveyard to your hand.
mana={1}{U}{R}
type=Creature
@@ -58763,9 +58791,10 @@ auto=@movedTo(mytgt|library) from(battlefield):all(this) moveTo(myLibrary)
auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
auto=transforms((,newability[@mutated(this):life:4 controller]))
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
auto=@mutated(this):name(Gain 4 life) life:4 controller
auto=@mutated(this):name(Gain 4 life) life:4 controller
text=Mutate {3}{W} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Vigilance -- Whenever this creature mutates, you gain 4 life.
mana={4}{W}
type=Creature
@@ -61187,10 +61216,10 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={2}{G} name(Mutate)
auto=transforms((,newability[@mutated(this):name(Search basic land) target(land[basic]|mylibrary) moveto(myBattlefield) and!( tap(noevent) )!]))
auto=ifnot paid(alternative) then transforms((,newability[becomes(,,green)])) forever all(this)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield) && transforms((,newability[becomes(,,green)])) forever
auto=if paid(alternative) then name(Mutate Under) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
auto=@mutated(this):name(Search basic land) target(land[basic]|mylibrary) moveto(myBattlefield) and!( transforms((,newability[tap(noevent)],newability[shuffle])) oneshot )!
auto=@mutated(mytgt):name(Search basic land) target(land[basic]|mylibrary) moveto(myBattlefield) and!( transforms((,newability[tap(noevent)],newability[shuffle])) oneshot )!
text=Mutate {2}{G} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Whenever this creature mutates, search your library for a basic land card, put it onto the battlefield tapped, then shuffle your library.
mana={3}{G}
type=Creature
@@ -61419,10 +61448,10 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={4}{B} name(Mutate)
auto=transforms((,newability[@mutated(this):ability$!name(Reveal) reveal:1 revealzone(opponentlibrary) optionone name(Exile opponent top card?) target(<upto:1>*|myreveal) moveto(opponentexile) optiononeend optiontwo name(Play exiled card) target(<1>*|myreveal) activate castcard(normal) optiontwoend revealend!$ controller]))
auto=ifnot paid(alternative) then transforms((,newability[becomes(,,black)])) forever all(this)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield) && transforms((,newability[becomes(,,black)])) forever
auto=if paid(alternative) then name(Mutate Under) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
auto=@mutated(this):name(Exile top card) all(*[zpos=1]|opponentlibrary) moveto(myexile) and!( transforms((,newability[canplayfromexile forever])) forever )!
auto=@mutated(mytgt):name(Exile top card) all(*[zpos=1]|opponentlibrary) moveto(myexile) and!( transforms((,newability[canplayfromexile forever])) forever )!
text=Mutate {4}{B} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Flying -- Whenever this creature mutates, exile the top card of each opponent's library face down. You may look at and play those cards for as long as they remain exiled.
mana={4}{B}{B}
type=Creature
@@ -64111,7 +64140,7 @@ toughness=5
[/card]
[card]
name=Mysterious Egg
auto=@mutated(this):counter(1/1)
auto=@mutated(this):name(Put 1/1 counter) counter(1/1)
text=Whenever this creature mutates, put a +1/+1 counter on it.
mana={1}
type=Creature
@@ -64989,9 +65018,10 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={2}{WB}{WB} name(Mutate)
auto=transforms((,newability[@mutated(this):target(creature[manacost<=3]|mygraveyard) moveTo(myBattlefield)]))
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
auto=@mutated(this):name(Return creature) target(creature[manacost<=3]|mygraveyard) moveTo(myBattlefield)
auto=@mutated(mytgt):name(Return creature) target(creature[manacost<=3]|mygraveyard) moveTo(myBattlefield)
text=Mutate {2}{WB}{WB} -- (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Whenever this creature mutates, return target creature card with mana value 3 or less from your graveyard to the battlefield.
mana={1}{W}{B}
type=Creature
@@ -65392,9 +65422,10 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={4}{GW}{B}{B} name(Mutate)
auto=transforms((,newability[@mutated(this):target(<anyamount>creature[manacost<=10]|mygraveyard) moveTo(myBattlefield)]))
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
auto=@mutated(this):name(Return creatures) target(<anyamount>creature[power<=10]|mygraveyard) moveTo(myBattlefield)
auto=@mutated(mytgt):name(Return creatures) target(<anyamount>creature[power<=10]|mygraveyard) moveTo(myBattlefield)
text=Mutate {4}{GW}{B}{B} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Deathtouch, lifelink -- Whenever this creature mutates, return any number of target creature cards with total power 10 or less from your graveyard to the battlefield.
mana={2}{W}{B}{G}
type=Legendary Creature
@@ -69108,9 +69139,10 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={1}{B}{G}{U} name(Mutate)
auto=transforms((,newability[@combatdamaged(player) from(this):moveto(myhand) target(creature[mutate]|mygraveyard)]))
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
auto=@combatdamaged(player) from(this):name(Return creature) target(creature[mutate]|mygraveyard) moveto(myhand)
auto=@combatdamaged(player) from(mytgt):name(Return creature) target(creature[mutate]|mygraveyard) moveto(myhand)
text=Mutate {1}{B}{G}{U} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Trample -- Whenever this creature deals combat damage to a player, return target creature card with mutate from your graveyard to your hand.
mana={3}{B}{G}{U}
type=Legendary Creature
@@ -69992,10 +70024,9 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={G}{U} name(Mutate)
auto=ifnot paid(alternative) then transforms((,newability[becomes(,,blue,green)])) forever all(this)
auto=transforms((,newability[name(Look top card) {1}{T}:ability$!name(Reveal) reveal:1 optionone if type(*[-land]|reveal)~morethan~0 then name(put card into your hand) name(put card into your hand) target(*|reveal) moveto(myhand) else name(May move to battlefield) target(<upto:1>*[land]|reveal) moveto(mybattlefield) optiononeend optiontwo name(Put land in hand) target(<1>*[land]|reveal) moveto(myhand) optiontwoend revealend!$ controller]))
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield) && becomes(,,blue,green) forever
auto=if paid(alternative) then name(Mutate Under) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
auto=transforms((,newability[{1}{T}:name(Look top card) all(*[zpos=1]|mylibrary) moveto(myhand) and!( transforms((,newability[if cantargetcard(*[land]|*) then choice name(Put in play) name(Put in play) moveto(mybattlefield)],newability[if cantargetcard(*[land]|*) then choice name(Don't in play) name(Don't in play) donothing])) forever )!]))
text=Mutate {G}{U} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- {1}, {T}: Look at the top card of your library. If it's a land card, you may put it onto the battlefield. If you don't put the card onto the battlefield, put it into your hand.
mana={2}{G}{U}
type=Creature
@@ -72271,7 +72302,7 @@ toughness=1
[/card]
[card]
name=Pollywog Symbiote
auto=lord(*[mutate]|myhand) altercost(colorless,-1)
auto=lord(creature[mutate]|mycastingzone) altercost(colorless,-1)
auto=@movedTo(creature[mutate]|mystack):_LOOT_
text=Each creature spell you cast costs {1} less to cast if it has mutate. -- Whenever you cast a creature spell, if it has mutate, draw a card, then discard a card.
mana={1}{U}
@@ -72486,9 +72517,9 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={2}{R} name(Mutate)
auto=transforms((,newability[name(damage target) {T}:name(damage target) thisforeach(mutations) damage:1 target(*)]))
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover && transforms((,newability[{T}:name(Damage target) name(Damage target) damage:mutations target(anytarget)])) forever
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder && transforms((,newability[{T}:name(Damage target) name(Damage target) damage:mutations target(anytarget)])) forever
auto=ifnot paid(alternative) then transforms((,newability[{T}:name(Damage target) name(Damage target) damage:mutations target(anytarget)])) forever
text=Mutate {2}{R} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- {T}: This creature deals X damage to any target, where X is the number of times this creature has mutated.
mana={3}{R}
type=Creature
@@ -72636,9 +72667,10 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={3}{U} name(Mutate)
auto=transforms((,newability[@mutated(this):may target(creature|opponentbattlefield) moveTo(opponenthand)]))
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
auto=@mutated(this):may name(Return to hand) target(creature|opponentbattlefield) moveTo(opponenthand)
auto=@mutated(mytgt):may name(Return to hand) target(creature|opponentbattlefield) moveTo(opponenthand)
text=Mutate {3}{U} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Flash -- Whenever this creature mutates, you may return target creature an opponent controls to its owner's hand.
mana={4}{U}
type=Creature
@@ -77305,9 +77337,9 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={1}{RW}{RW} name(Mutate)
auto=transforms((,newability[@mutated(this):all(other creature|myBattlefield) 2/1 ueot]))
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover && transforms((,newability[name(All creatures gain 2/1) all(other creature|myBattlefield) 2/1 ueot],newability[@mutated(this):name(All creatures gain 2/1) all(other creature|myBattlefield) 2/1 ueot])) forever
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder && transforms((,newability[name(All creatures gain 2/1) all(other creature|myBattlefield) 2/1 ueot],newability[@mutated(this):name(All creatures gain 2/1) all(other creature|myBattlefield) 2/1 ueot])) forever
auto=ifnot paid(alternative) then transforms((,newability[@mutated(this):name(All creatures gain 2/1) all(other creature|myBattlefield) 2/1 ueot])) forever
text=Mutate {1}{RW}{RW} -- (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Whenever this creature mutates, other creatures you control get +2/+1 until end of turn.
mana={R}{W}
type=Creature
@@ -82950,9 +82982,10 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={3}{G} name(Mutate)
auto=transforms((,newability[@mutated(this):name(Destroy and create token) ability$!name(Choose one) choice name(Controller) target(*[-creature]|myBattlefield) destroy && token(Beast Saw) controller _ choice name(opponent) target(*[-creature]|opponentBattlefield) destroy && token(Beast Saw) opponent!$ controller]))
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then name(Mutate Under) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
auto=@mutated(this):name(Destroy and create token) target(*[-creature]|battlefield) destroy and!( transforms((,newability[token(Beast Saw) controller])) oneshot )!
auto=@mutated(mytgt):name(Destroy and create token) target(*[-creature]|battlefield) destroy and!( transforms((,newability[token(Beast Saw) controller])) oneshot )!
text=Mutate {3}{G} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Trample -- Whenever this creature mutates, destroy target noncreature permanent. Its controller creates a 3/3 green Beast creature token.
mana={4}{G}{G}
type=Creature
@@ -83961,9 +83994,10 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={1}{U} name(Mutate)
auto=transforms((,newability[@combatdamaged(player) from(this):draw:1 controller]))
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
auto=@combatdamaged(player) from(this):name(Draw a card) draw:1 controller
auto=@combatdamaged(player) from(mytgt):name(Draw a card) draw:1 controller
text=Mutate {1}{U} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Flash -- Whenever this creature deals combat damage to a player, draw a card.
mana={1}{U}{U}
type=Creature
@@ -89434,9 +89468,12 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={2}{BR}{W}{W} name(Mutate)
auto=transforms((,newability[@mutated(this):life:4 controller],newability[@mutated(this):damage:4 target(*[creature;planeswalker]|opponentBattlefield)]))
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
auto=@mutated(this):name(Gain 4 life) life:4 controller
auto=@mutated(this):name(Damage creature or planeswalker) damage:4 target(*[creature;planeswalker]|opponentBattlefield)
auto=@mutated(mytgt):name(Gain 4 life) life:4 controller
auto=@mutated(mytgt):name(Damage creature or planeswalker) damage:4 target(*[creature;planeswalker]|opponentBattlefield)
text=Mutate {2}{BR}{W}{W} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Double strike -- Whenever this creature mutates, it deals 4 damage to target creature or planeswalker an opponent controls and you gain 4 life.
mana={1}{R}{W}{B}
type=Legendary Creature
@@ -90549,10 +90586,10 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={5}{U} name(Mutate)
auto=transforms((,newability[@mutated(this):target(artifact[-creature]|opponentbattlefield) moveTo(myBattlefield)]))
auto=ifnot paid(alternative) then transforms((,newability[becomes(,,blue)])) forever all(this)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield) && transforms((,newability[becomes(,,blue)])) forever
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
auto=@mutated(this):name(Steal noncreature artifact) target(artifact[-creature]|opponentbattlefield) moveTo(myBattlefield)
auto=@mutated(mytgt):name(Steal noncreature artifact) target(artifact[-creature]|opponentbattlefield) moveTo(myBattlefield)
text=Mutate {5}{U} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Flying -- Whenever this creature mutates, gain control of target noncreature artifact.
mana={4}{U}
type=Creature
@@ -94908,8 +94945,8 @@ toughness=5
[card]
name=Surgeon General Commander
#The augment trigger is not supported ATM
auto=@targeted(creature|myBattlefield) from(Aura|mycastingzone):draw:1 controller
auto=@mutated(creature|myBattlefield):draw:1 controller
auto=@targeted(creature|myBattlefield) from(Aura|mycastingzone):name(Draw a card) draw:1 controller
auto=@mutated(creature|myBattlefield):name(Draw a card) draw:1 controller
auto={T}:add{W}
auto={T}:add{U}
auto={T}:add{B}
@@ -99047,17 +99084,6 @@ power=10
toughness=10
[/card]
[card]
name=The Wandering Emperor
abilities=flash
auto=counter(0/0,3,loyalty)
auto={C(0/0,+1,Loyalty)}:target(creature) counter(1/1) && first strike ueot
auto={C(0/0,-1,Loyalty)}:create(samurai:creature samurai:2/2:white:vigilance)
auto={C(0/0,-2,Loyalty)}:moveto(exile) target(creature[tapped ]) && life:2
text=Flash -- As long as The Wandering Emperor entered the battlefield this turn, you may activate her loyalty abilities any time you could cast an instant. -- [+1]: Put a +1/+1 counter on up to one target creature. It gains first strike until end of turn. -- [-1]: Create a 2/2 white Samurai creature token with vigilance. -- [-2]: Exile target tapped creature. You gain 2 life.
mana={2}{W}{W}
type=Legendary Planeswalker
[/card]
[card]
name=The Watcher in the Water
auto=tap(noevent)
auto=counter(0/0,9,Stun)
@@ -102466,9 +102492,10 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={3}{GU}{GU} name(Mutate)
auto=transforms((,newability[@mutated(this):token(Beast Tru)]))
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
auto=@mutated(this):name(Create beast) token(Beast Tru)
auto=@mutated(mytgt):name(Create beast) token(Beast Tru)
text=Mutate {3}{GU}{GU} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Whenever this creature mutates, create a 3/3 green Beast creature token.
mana={1}{G}{U}
type=Creature
@@ -104602,9 +104629,10 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={1}{WU}{R}{R} name(Mutate)
auto=transforms((,newability[@mutated(this):may castcard(normal) target(*[-creature;manacost<=3]|mygraveyard)]))
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder
auto=@mutated(this):may name(Cast noncreature card) target(*[-creature&manacost<=3]|mygraveyard) activate castcard(normal)
auto=@mutated(mytgt):may name(Cast noncreature card) target(*[-creature&manacost<=3]|mygraveyard) activate castcard(normal)
text=Mutate {1}{WU}{R}{R} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Flying, first strike -- Whenever this creature mutates, you may cast target noncreature card with mana value 3 or less from your graveyard without paying its mana cost.
mana={U}{R}{W}
type=Legendary Creature
@@ -105426,7 +105454,8 @@ toughness=4
[card]
name=Venerated Rotpriest
abilities=poisontoxic
auto=@targeted(creature|mybattlefield) from(*|myCastingzone):alterpoison:1 target(opponent)
auto=@targeted(creature|mybattlefield) from(*|myCastingzone):name(Opponent gets a poison counter) alterpoison:1 opponent
auto=@targeted(creature|mybattlefield) from(*|opponentCastingzone):name(Opponent gets a poison counter) alterpoison:1 opponent
text=Toxic 1 (Players dealt combat damage by this creature also get a poison counter.) -- Whenever a creature you control becomes the target of a spell, target opponent gets a poison counter.
mana={G}
type=Creature
@@ -106756,7 +106785,7 @@ toughness=0
[/card]
[card]
name=Vizier of Remedies
auto=@counteradded(-1/-1) from(creature|myBattlefield):counter(-1/-1,-1) all(trigger[from]) limit:1
auto=@totalcounteradded(-1/-1) from(creature|myBattlefield):name(That many minus one) all(trigger[from]) name(That many minus one) counter(-1/-1,-1)
text=If one or more -1/-1 counters would be put on a creature you control, that many -1/-1 counters minus one are put on it instead.
mana={1}{W}
type=Creature
@@ -107483,9 +107512,9 @@ auto=@movedTo(mytgt|sideboard) from(battlefield):all(this) moveTo(mySideboard)
auto=@movedTo(mytgt|commandzone) from(battlefield):all(this) moveTo(myCommandzone)
auto={9999}:equip
other={2}{W} name(Mutate)
auto=transforms((,newability[@mutated(this):counter(1/1)]))
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Over) choice name(Mutate Over) mutateover target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then name(Mutate Over) this(mutations<1) name(Mutate Under) choice name(Mutate Under) mutateunder target(other creature[-human]|mybattlefield)
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Over) name(Mutate Over) target(other creature[-human]|mybattlefield) mutateover && transforms((,newability[counter(1/1)],newability[@mutated(this):name(Put 1/1 counter) counter(1/1)])) forever
auto=if paid(alternative) then if compare(mutations)~equalto~0 then choice name(Mutate Over) name(Mutate Under) name(Mutate Under) target(other creature[-human]|mybattlefield) mutateunder && transforms((,newability[counter(1/1)],newability[@mutated(this):name(Put 1/1 counter) counter(1/1)])) forever
auto=ifnot paid(alternative) then transforms((,newability[@mutated(this):name(Put 1/1 counter) counter(1/1)])) forever
text=Mutate {2}{W} (If you cast this spell for its mutate cost, put it over or under target non-Human creature you own. They mutate into the creature on top plus all abilities from under it.) -- Flying -- Whenever this creature mutates, put a +1/+1 counter on it.
mana={3}{W}
type=Creature
@@ -111292,7 +111321,7 @@ type=Artifact
[/card]
[card]
name=Zagoth Mamba
auto=@mutated(this):target(creature|opponentBattlefield) -2/-2 ueot
auto=@mutated(this):name(Opponent creature gains -2/-2) target(creature|opponentBattlefield) -2/-2 ueot
text=Whenever this creature mutates, target creature an opponent controls gets -2/-2 until end of turn.
mana={B}
type=Creature

View File

@@ -1,6 +1,6 @@
#Primitives Pack for Wagic the Homebrew.
#Please keep these card alphabetized, and try to have the "name=" line at the top of each card
#I sorted this programmatically so the other comments are removed except for AUTO_DEFINE - Vitty85 21-07-2023
#I sorted this programmatically so the other comments are removed except for AUTO_DEFINE - Vitty85 24-07-2023
[card]
name=Abandon Reason
target=<upto:2>creature
@@ -29105,8 +29105,8 @@ toughness=2
[/card]
[card]
name=Devoted Druid
auto={T}:Add{G}
auto={C(-1/-1,1)}:untap
auto={T}:add{G}
auto={0}:name(Put counter and untap) transforms((,newability[counter(-1/-1)],newability[untap])) oneshot
text={T}: Add {G} to your mana pool. -- Put a -1/-1 counter on Devoted Druid: Untap Devoted Druid.
mana={1}{G}
type=Creature
@@ -55019,7 +55019,8 @@ toughness=3
[card]
name=Hollow Specter
abilities=flying
auto=@combatdamagefoeof(player) from(this):may pay({1}) name(Specter Pay 1) Reveal:1 revealzone(opponenthand) optionone choice name(choose Discards) target(<1>*|reveal) transforms((,newability[moveto(ownerhand) and!(reject)!])) oneshot optiononeend optiontwo name(Put Back) target(*|reveal) transforms((,newability[all(*|reveal) moveto(ownerhand)])) oneshot optiontwoend revealend
auto=@combatdamagefoeof(player) from(this) restriction{type(*|opponenthand)~morethan~0}:may name(Pay x and look) transforms((,newability[choice name(Pay 1 and look) ability$!name(Pay 1 and look) pay({1}) name(Pay 1 and look) target(*[zpos<=1]|opponenthand) reject!$ controller],newability[if type(*|opponenthand)~morethan~1 then choice name(Pay 2 and look) name(Pay 2 and look) ability$!name(Pay 2 and look) pay({2}) name(Pay 2 and look) target(*[zpos<=2]|opponenthand) reject!$ controller],newability[if type(*|opponenthand)~morethan~2 then choice name(Pay 3 and look) name(Pay 3 and look) name(Pay 3 and look) ability$!name(Pay 3 and look) pay({3}) name(Pay 3 and look) target(*[zpos<=3]|opponenthand) reject!$ controller],newability[if type(*|opponenthand)~morethan~3 then choice name(Pay 4 and look) name(Pay 4 and look) name(Pay 4 and look) ability$!name(Pay 4 and look) pay({4}) name(Pay 4 and look) target(*[zpos<=4]|opponenthand) reject!$ controller],newability[if type(*|opponenthand)~morethan~4 then choice name(Pay 5 and look) name(Pay 5 and look) name(Pay 5 and look) ability$!name(Pay 5 and look) pay({5}) name(Pay 5 and look) target(*[zpos<=5]|opponenthand) reject!$ controller],newability[if type(*|opponenthand)~morethan~5 then choice name(Pay 6 and look) name(Pay 6 and look) name(Pay 6 and look) ability$!name(Pay 6 and look) pay({6}) name(Pay 6 and look) target(*[zpos<=6]|opponenthand) reject!$ controller],newability[if type(*|opponenthand)~morethan~6 then choice name(Pay 7 and look) name(Pay 7 and look) name(Pay 7 and look) ability$!name(Pay 7 and look) pay({7}) name(Pay 7 and look) target(*[zpos<=7]|opponenthand) reject!$ controller],newability[if type(*|opponenthand)~morethan~7 then choice name(Pay 8 and look) name(Pay 8 and look) name(Pay 8 and look) ability$!name(Pay 8 and look) pay({8}) name(Pay 8 and look) target(*[zpos<=8]|opponenthand) reject!$ controller],newability[if type(*|opponenthand)~morethan~8 then choice name(Pay 9 and look) name(Pay 9 and look) name(Pay 9 and look) ability$!name(Pay 9 and look) pay({9}) name(Pay 9 and look) target(*[zpos<=9]|opponenthand) reject!$ controller],newability[if type(*|opponenthand)~morethan~9 then choice name(Pay 10 and look) name(Pay 10 and look) name(Pay 10 and look) ability$!name(Pay 10 and look) pay({10}) name(Pay 10 and look) target(*[zpos<=10]|opponenthand) reject!$ controller],newability[if type(*|opponenthand)~morethan~10 then choice name(Pay 11 and look) name(Pay 11 and look) name(Pay 11 and look) ability$!name(Pay 11 and look) pay({11}) name(Pay 11 and look) target(*[zpos<=11]|opponenthand) reject!$ controller],newability[if type(*|opponenthand)~morethan~11 then choice name(Pay 12 and look) name(Pay 12 and look) name(Pay 12 and look) ability$!name(Pay 12 and look) pay({12}) name(Pay 12 and look) target(*[zpos<=12]|opponenthand) reject!$ controller],newability[if type(*|opponenthand)~morethan~12 then choice name(Pay 13 and look) name(Pay 13 and look) name(Pay 13 and look) ability$!name(Pay 13 and look) pay({13}) name(Pay 13 and look) target(*[zpos<=13]|opponenthand) reject!$ controller],newability[if type(*|opponenthand)~morethan~13 then choice name(Pay 14 and look) name(Pay 14 and look) name(Pay 14 and look) ability$!name(Pay 14 and look) pay({14}) name(Pay 14 and look) target(*[zpos<=14]|opponenthand) reject!$ controller],newability[if type(*|opponenthand)~morethan~14 then choice name(Pay 15 and look) name(Pay 15 and look) name(Pay 15 and look) ability$!name(Pay 15 and look) pay({15}) name(Pay 15 and look) target(*[zpos<=15]|opponenthand) reject!$ controller],newability[if type(*|opponenthand)~morethan~15 then choice name(Pay 16 and look) name(Pay 16 and look) name(Pay 16 and look) ability$!name(Pay 16 and look) pay({16}) name(Pay 16 and look) target(*[zpos<=16]|opponenthand) reject!$ controller],newability[if type(*|opponenthand)~morethan~16 then choice name(Pay 17 and look) name(Pay 17 and look) name(Pay 17 and look) ability$!name(Pay 17 and look) pay({17}) name(Pay 17 and look) target(*[zpos<=17]|opponenthand) reject!$ controller],newability[if type(*|opponenthand)~morethan~17 then choice name(Pay 18 and look) name(Pay 18 and look) name(Pay 18 and look) ability$!name(Pay 18 and look) pay({18}) name(Pay 18 and look) target(*[zpos<=18]|opponenthand) reject!$ controller],newability[if type(*|opponenthand)~morethan~18 then choice name(Pay 19 and look) name(Pay 19 and look) name(Pay 19 and look) ability$!name(Pay 19 and look) pay({19}) name(Pay 19 and look) target(*[zpos<=19]|opponenthand) reject!$ controller],newability[if type(*|opponenthand)~morethan~19 then choice name(Pay 20 and look) name(Pay 20 and look) name(Pay 20 and look) ability$!name(Pay 20 and look) pay({20}) name(Pay 20 and look) target(*[zpos<=20]|opponenthand) reject!$ controller])) oneshot
auto=@combatdamageof(player) from(this) restriction{type(*|myhand)~morethan~0}:may name(Pay x and look) transforms((,newability[choice name(Pay 1 and look) ability$!name(Pay 1 and look) pay({1}) name(Pay 1 and look) target(*[zpos<=1]|myhand) reject!$ controller],newability[if type(*|myhand)~morethan~1 then choice name(Pay 2 and look) name(Pay 2 and look) ability$!name(Pay 2 and look) pay({2}) name(Pay 2 and look) target(*[zpos<=2]|myhand) reject!$ controller],newability[if type(*|myhand)~morethan~2 then choice name(Pay 3 and look) name(Pay 3 and look) name(Pay 3 and look) ability$!name(Pay 3 and look) pay({3}) name(Pay 3 and look) target(*[zpos<=3]|myhand) reject!$ controller],newability[if type(*|myhand)~morethan~3 then choice name(Pay 4 and look) name(Pay 4 and look) name(Pay 4 and look) ability$!name(Pay 4 and look) pay({4}) name(Pay 4 and look) target(*[zpos<=4]|myhand) reject!$ controller],newability[if type(*|myhand)~morethan~4 then choice name(Pay 5 and look) name(Pay 5 and look) name(Pay 5 and look) ability$!name(Pay 5 and look) pay({5}) name(Pay 5 and look) target(*[zpos<=5]|myhand) reject!$ controller],newability[if type(*|myhand)~morethan~5 then choice name(Pay 6 and look) name(Pay 6 and look) name(Pay 6 and look) ability$!name(Pay 6 and look) pay({6}) name(Pay 6 and look) target(*[zpos<=6]|myhand) reject!$ controller],newability[if type(*|myhand)~morethan~6 then choice name(Pay 7 and look) name(Pay 7 and look) name(Pay 7 and look) ability$!name(Pay 7 and look) pay({7}) name(Pay 7 and look) target(*[zpos<=7]|myhand) reject!$ controller],newability[if type(*|myhand)~morethan~7 then choice name(Pay 8 and look) name(Pay 8 and look) name(Pay 8 and look) ability$!name(Pay 8 and look) pay({8}) name(Pay 8 and look) target(*[zpos<=8]|myhand) reject!$ controller],newability[if type(*|myhand)~morethan~8 then choice name(Pay 9 and look) name(Pay 9 and look) name(Pay 9 and look) ability$!name(Pay 9 and look) pay({9}) name(Pay 9 and look) target(*[zpos<=9]|myhand) reject!$ controller],newability[if type(*|myhand)~morethan~9 then choice name(Pay 10 and look) name(Pay 10 and look) name(Pay 10 and look) ability$!name(Pay 10 and look) pay({10}) name(Pay 10 and look) target(*[zpos<=10]|myhand) reject!$ controller],newability[if type(*|myhand)~morethan~10 then choice name(Pay 11 and look) name(Pay 11 and look) name(Pay 11 and look) ability$!name(Pay 11 and look) pay({11}) name(Pay 11 and look) target(*[zpos<=11]|myhand) reject!$ controller],newability[if type(*|myhand)~morethan~11 then choice name(Pay 12 and look) name(Pay 12 and look) name(Pay 12 and look) ability$!name(Pay 12 and look) pay({12}) name(Pay 12 and look) target(*[zpos<=12]|myhand) reject!$ controller],newability[if type(*|myhand)~morethan~12 then choice name(Pay 13 and look) name(Pay 13 and look) name(Pay 13 and look) ability$!name(Pay 13 and look) pay({13}) name(Pay 13 and look) target(*[zpos<=13]|myhand) reject!$ controller],newability[if type(*|myhand)~morethan~13 then choice name(Pay 14 and look) name(Pay 14 and look) name(Pay 14 and look) ability$!name(Pay 14 and look) pay({14}) name(Pay 14 and look) target(*[zpos<=14]|myhand) reject!$ controller],newability[if type(*|myhand)~morethan~14 then choice name(Pay 15 and look) name(Pay 15 and look) name(Pay 15 and look) ability$!name(Pay 15 and look) pay({15}) name(Pay 15 and look) target(*[zpos<=15]|myhand) reject!$ controller],newability[if type(*|myhand)~morethan~15 then choice name(Pay 16 and look) name(Pay 16 and look) name(Pay 16 and look) ability$!name(Pay 16 and look) pay({16}) name(Pay 16 and look) target(*[zpos<=16]|myhand) reject!$ controller],newability[if type(*|myhand)~morethan~16 then choice name(Pay 17 and look) name(Pay 17 and look) name(Pay 17 and look) ability$!name(Pay 17 and look) pay({17}) name(Pay 17 and look) target(*[zpos<=17]|myhand) reject!$ controller],newability[if type(*|myhand)~morethan~17 then choice name(Pay 18 and look) name(Pay 18 and look) name(Pay 18 and look) ability$!name(Pay 18 and look) pay({18}) name(Pay 18 and look) target(*[zpos<=18]|myhand) reject!$ controller],newability[if type(*|myhand)~morethan~18 then choice name(Pay 19 and look) name(Pay 19 and look) name(Pay 19 and look) ability$!name(Pay 19 and look) pay({19}) name(Pay 19 and look) target(*[zpos<=19]|myhand) reject!$ controller],newability[if type(*|myhand)~morethan~19 then choice name(Pay 20 and look) name(Pay 20 and look) name(Pay 20 and look) ability$!name(Pay 20 and look) pay({20}) name(Pay 20 and look) target(*[zpos<=20]|myhand) reject!$ controller])) oneshot
text=Flying -- Whenever Hollow Specter deals combat damage to a player, you may pay {X}. If you do, that player reveals X cards from his or her hand and you choose one of them. That player discards that card.
mana={1}{B}{B}
type=Creature
@@ -55365,10 +55366,9 @@ toughness=2
[card]
name=Hooded Hydra
facedown={3}
autofacedown={3}{G}{G}:morph
autofaceup=counter(1/1,5)
autofacedown={3}{G}{G}:counter(1/1,5) && morph
auto=counter(1/1,X)
auto=_DIES_thisforeach(counter{1/1.1}) token(Snake,Creature Snake,1/1,green)
auto=_DIES_name(Create snakes) thisforeach(counter{1/1.1}) token(Snake,Creature Snake,1/1,green)
text=Hooded Hydra enters the battlefield with X +1/+1 counters on it. -- When Hooded Hydra dies, put a 1/1 green Snake creature token onto the battlefield for each +1/+1 counter on it. -- Morph {3}G}{G}: As Hooded Hydra is turned face up, put five +1/+1 counters on it.
mana={X}{G}{G}
type=Creature
@@ -55812,7 +55812,7 @@ subtype=Aura
name=Hot Soup
auto={3}:equip
auto=teach(creature) unblockable
auto=@damaged(mytgt):destroy all(mytgt)
auto=teach(creature) transforms((,newability[@damaged(this):name(Destroy equipped creature) destroy]))
text=Equipped creature is unblockable. -- Whenever equipped creature is dealt damage, destroy it. -- Equip {3} ({3}: Attach to target creature you control. Equip only as a sorcery.)
mana={1}
type=Artifact

View File

@@ -1,6 +1,6 @@
#Planeswalkers Primitives Pack for Wagic the Homebrew.
#Please keep these card alphabetized, and try to have the "name=" line at the top of each card
#We sorted this in alphabetical order - Luruz & Vitty85 21-07-2023
#We sorted this in alphabetical order - Luruz & Vitty85 24-07-2023
[card]
name=Abian, Luvion Usurper
auto=counter(0/0,5,loyalty)
@@ -3345,6 +3345,19 @@ mana={3}{W}
type=Legendary Planeswalker
[/card]
[card]
name=The Wandering Emperor
abilities=flash
auto=transforms((,newability[canloyaltyasinst])) ueot
auto=counter(0/0,3,loyalty)
auto={C(0/0,+1,Loyalty)}:name(+1: Don't put any counter) donothing
auto={C(0/0,+1,Loyalty)}:name(+1: Put +1/+1 counter) target(creature|battlefield) transforms((,newability[counter(1/1)],newability[first strike])) ueot
auto={C(0/0,-1,Loyalty)}:name(-1: Create Samurai) token(Samurai,Creature Samurai,2/2,white,vigilance)
auto={C(0/0,-2,Loyalty)}:name(-2: Exile creature) target(creature[tapped]|battlefield) moveto(exile) and!( life:2 controller )!
text=Flash -- As long as The Wandering Emperor entered the battlefield this turn, you may activate her loyalty abilities any time you could cast an instant. -- [+1]: Put a +1/+1 counter on up to one target creature. It gains first strike until end of turn. -- [-1]: Create a 2/2 white Samurai creature token with vigilance. -- [-2]: Exile target tapped creature. You gain 2 life.
mana={2}{W}{W}
type=Legendary Planeswalker
[/card]
[card]
name=Tibalt, Cosmic Impostor
backside=Valki, God of Lies
auto=counter(0/0,5,Loyalty)