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 +1,98 @@
#NAME:Arcades Commander 2023
#NAME:Arcades Commander 2023
#DESC:Original Deck by ashby4 (tappedout.net),
#DESC:refined for Wagic by Bob
#HINT:castpriority(commander,*)
Akroma's Will (*) * 1
Arcane Signet (*) * 1
Assault Formation (*) * 1
Aura Shards (*) * 1
Axebane Guardian (*) * 1
Azorius Signet (*) * 1
Bant Panorama (*) * 1
Blossoming Sands (*) * 1
Bountiful Promenade (*) * 1
Branchloft Pathway (*) * 1
Brushland (*) * 1
Canopy Vista (*) * 1
Carven Caryatid (*) * 1
Colossus of Akros (*) * 1
Command Tower (*) * 1
Crashing Drawbridge (*) * 1
Dismantling Wave (*) * 1
Drift of Phantasms (*) * 1
Dusk // Dawn (*) * 1
Farseek (*) * 1
Fell the Mighty (*) * 1
Forest (*) * 4
Fortified Rampart (*) * 1
Fortified Village (*) * 1
Glacial Fortress (*) * 1
Glacial Wall (*) * 1
Hallowed Fountain (*) * 1
High Alert (*) * 1
Hinterland Harbor (*) * 1
Hover Barrier (*) * 1
Irrigated Farmland (*) * 1
Island (*) * 2
Jeskai Barricade (*) * 1
Jungle Barrier (*) * 1
Last March of the Ents (*) *1
Leyline of Vitality (*) * 1
Lightning Greaves (MPS) (*) * 1
Lumithread Field (*) * 1
Meekstone (*) * 1
Mirror Shield (*) * 1
Monastery Flock (*) * 1
Noetic Scales (*) * 1
Oathsworn Giant (*) * 1
Overgrown Battlement (*) * 1
Perimeter Captain (*) * 1
Plains (*) * 4
Port Town (*) * 1
Prairie Stream (*) * 1
Rejuvenating Springs (*) * 1
Sakura-Tribe Elder (*) * 1
Scattered Groves (*) * 1
Sea of Clouds (*) * 1
Seaside Citadel (*) * 1
Selesnya Signet (CMA) (*) * 1
Shield Sphere (*) * 1
Simic Signet (*) * 1
Slagwurm Armor (*) * 1
Slaughter the Strong (*) * 1
Sol Ring (*) * 1
Soulsworn Jury (DIS) (*) * 1
Spidersilk Armor (*) * 1
Stalwart Shield-Bearers (*) * 1
Sunpetal Grove (*) * 1
Sunscape Familiar (*) * 1
Swiftfoot Boots (*) * 1
Swords to Plowshares (*) * 1
Sylvan Caryatid (*) * 1
Temple Garden (*) * 1
Temple of Enlightenment (*) * 1
Temple of Mystery (*) * 1
Temple of Plenty (*) * 1
Tetsuko Umezawa, Fugitive (*) * 1
Teyo, the Shieldmage (*) * 1
Thallid Shell-Dweller (TSR) (*) * 1
Thornwood Falls (*) * 1
Tower Defense (*) * 1
Towering Titan (*) * 1
Tranquil Cove (*) * 1
Tree of Redemption (*) * 1
Treva's Ruins (*) * 1
Vine Trellis (*) * 1
Wall of Blossoms (*) * 1
Wall of Denial (*) * 1
Wall of Faith (*) * 1
Wall of Glare (*) * 1
Wall of Ice (*) * 1
Wall of Junk (*) * 1
Wall of Omens (*) * 1
Wall of Roots (*) * 1
Wall of Stolen Identity (*) * 1
Wall of Tanglecord (*) * 1
Wave of Reckoning (*) * 1
Yavimaya Coast (*) * 1
#CMD:Arcades, the Strategist (*) * 1

View File

@@ -1 +1,97 @@
#NAME:Edgar Markov Commander 2023
#NAME:Edgar Markov Commander 2023
#DESC:Original Deck Concept by DespairFaction (tappedout.net)
#DESC:Designed for Wagic by Bob
#HINT:castpriority(commander,creature,*)
#HINT:alwaysattackwith(Edgar Markov)
Ancient Tomb (*) * 1
Asylum Visitor (*) * 1
Badlands (*) * 1
Basri's Solidarity (*) * 1
Bishop's Soldier (*) * 1
Blackcleave Cliffs (*) * 1
Blade of the Bloodchief (*) * 1
Blood Artist (*) * 1
Blood Burglar (*) * 1
Blood Crypt (*) * 1
Bloodfell Caves (*) * 1
Bloodline Keeper (*) * 1
Bloodmad Vampire (*) * 1
Bold Impaler (*) * 1
Captivating Vampire (*) * 1
Cathars' Crusade (*) * 1
Child of Night (*) * 1
Clifftop Retreat (*) * 1
Coat of Arms (*) * 1
Command Tower (*) * 1
Concealed Courtyard (*) * 1
Cordial Vampire (*) * 1
Crescendo of War (*) * 1
Dark Ritual (*) * 1
Dragonskull Summit (*) * 1
Drana, Liberator of Malakir (*) * 1
Duskborne Skymarcher (*) * 1
Elenda, the Dusk Rose (*) * 1
Exquisite Blood (*) * 1
Falkenrath Exterminator (*) * 1
Falkenrath Noble (*) * 1
Falkenrath Perforator (*) * 1
Gift of Estates (*) * 1
Gifted Aetherborn (*) * 1
Godless Shrine (*) * 1
Guul Draz Vampire (*) * 1
Impact Tremors (*) * 1
Inspiring Vantage (*) * 1
Iroas, God of Victory (*) * 1
Isolated Chapel (*) * 1
Knight of the Ebon Legion (*) * 1
Land Tax (*) * 1
Legion Lieutenant (*) * 1
Legion's Landing (*) * 1
Malakir Cullblade (*) * 1
Markov Baron (*) * 1
Martyr of Dusk (*) * 1
Mountain (*) * 1
Necropolis Regent (*) * 1
Nomad Outpost (*) * 1
Nullpriest of Oblivion (*) * 1
Orcish Oriflamme (EMA) (*) * 1
Path of Ancestry (*) * 1
Path of Bravery (*) * 1
Plains (*) * 3
Plateau (*) * 1
Pulse Tracker (*) * 1
Purphoros, God of the Forge (*) * 1
Quag Vampires (*) * 1
Rising of the Day (*) * 1
Ruthless Cullblade (*) * 1
Sacred Foundry (*) * 1
Sanctum Seeker (*) * 1
Scoured Barrens (*) * 1
Scrubland (*) * 1
Shadow Alley Denizen (*) * 1
Skyblade of the Legion (*) * 1
Skymarcher Aspirant (*) * 1
Smoldering Marsh (*) * 1
Sol Ring (*) * 1
Stensia Masquerade (*) * 1
Stromkirk Captain (*) * 1
Stromkirk Noble (*) * 1
Swamp (ICE) (*) * 4
Swamp (MIR) (*) * 4
Swamp (M20) (*) * 2
Throne of the God-Pharaoh (*) * 1
Tithe (*) * 1
Unholy Officiant (*) * 1
Urborg, Tomb of Yawgmoth (*) * 1
Vampire Cutthroat (*) * 1
Vampire Interloper (*) * 1
Vampire Lacerator (*) * 1
Vampire Neonate (*) * 1
Vampire of the Dire Moon (*) * 1
Vampire Socialite (*) * 1
Vicious Conquistador (*) * 1
Vito, Thorn of the Dusk Rose (*) * 1
Voldaren Stinger (*) * 1
Whispersilk Cloak (*) * 1
Wing-Scarred Crag (*) * 1
#CMD:Edgar Markov (*) * 1

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)

View File

@@ -361,7 +361,8 @@ class Constants
POISONNINETOXIC = 233,
POISONTENTOXIC = 234,
EQPASINST = 235,
NB_BASIC_ABILITIES = 236,
CANLOYALTYASINST = 236,
NB_BASIC_ABILITIES = 237,
RARITY_S = 'S', //Special Rarity
RARITY_M = 'M', //Mythics

View File

@@ -7285,11 +7285,11 @@ int ActivatedAbility::isReactingToClick(MTGCardInstance * card, ManaCost * mana)
howMany += check->counters;
}
}
if(howMany > 1 && card->has(Constants::CANLOYALTYTWICE))
if(howMany > 1)
return 0;
if (player != game->currentPlayer)
if (player != game->currentPlayer && !card->has(Constants::CANLOYALTYASINST))
return 0;
if (!turnSide && (cPhase != MTG_PHASE_FIRSTMAIN && cPhase != MTG_PHASE_SECONDMAIN))
if (!turnSide && !card->has(Constants::CANLOYALTYASINST) && (cPhase != MTG_PHASE_FIRSTMAIN && cPhase != MTG_PHASE_SECONDMAIN))
return 0;
}
if (source->has(Constants::NOACTIVATED) || (source->mutation && source->parentCards.size() > 0)) // Mutated Over/Under card doesn't have to react to click anymore

View File

@@ -266,7 +266,8 @@ const char* Constants::MTGBasicAbilities[] = {
"poisoneighttoxic", // Card has toxic 8
"poisonninetoxic", // Card has toxic 9
"poisontentoxic", // Card has toxic 10
"eqpasinst" // Can equip as instant
"eqpasinst", // Can equip as instant
"canloyaltyasinst" // Can activate loyalty abilities as instant (e.g. "The Wandering Emperor").
};
map<string,int> Constants::MTGBasicAbilitiesMap;

View File

@@ -580,7 +580,7 @@ MTGCardInstance * MTGPlayerCards::putInZone(MTGCardInstance * card, MTGGameZone
// This fix issue types problem when card change zone with different card types than its original version (e.g. double face cards or cards that gained new types before to change zone).
std::vector<int> realTypes;
string realName = copy->name;
if(doCopy && !asCopy && !inplaytoinplay && !equal(copy->types.begin(), copy->types.end(), card->types.begin()) ){
if(doCopy && !asCopy && !inplaytoinplay && !card->isMorphed && ((copy->types.size() != card->types.size()) || ((copy->types.size() == card->types.size()) && (!equal(copy->types.begin(), copy->types.end(), card->types.begin())))) ){
realTypes = copy->types;
copy->types = card->types;
copy->mPropertiesChangedSinceLastUpdate = false;