Fixed ONE, ONC, NEO and DMR dat file, added new primitives from ONC set, fixed primitives, improved Android downloader, updated missing card by set list, updated cards image url links, fixed a bug on parser when reading the substring "equip" with a different meaning.

This commit is contained in:
Vittorio Alfieri
2023-06-01 19:04:28 +02:00
parent d3deae3a6a
commit c0f2635990
11 changed files with 1616 additions and 87 deletions
@@ -14862,6 +14862,19 @@ power=4
toughness=4
[/card]
[card]
name=Chiss-Goria, Forge Tyrant
abilities=flying,haste,affinityartifacts
auto=_ATTACKING_name(Exile top 5 cards) all(*[zpos<=5]|mylibrary) moveto(myexile) and!( becomes(tobechiss) ueot )!
auto=aslongas(tobechiss|myexile) {0}:name(Exiled artifact can be played) target(artifact[tobechiss]|myexile) transforms((,newability[affinityartifacts],newability[canplayfromexile],newability[all(tobechiss|myexile) losesatype(tobechiss)])) ueot
auto=@Chiss-Goriaforge tyrant attacks, exile the top five cards of your library may cast an artifact spell from among them this turnaffinity for artifacts
text=Affinity for artifacts (This spell costs {1} less to cast for each artifact you control.) -- Flying, haste -- Whenever Chiss-Goria, Forge Tyrant attacks, exile the top five cards of your library. You may cast an artifact spell from among them this turn. If you do, it has affinity for artifacts.
mana={6}{R}{R}{R}
type=Legendary Creature
subtype=Dragon
power=5
toughness=4
[/card]
[card]
name=Chittering Doom
auto=@dierolled(*|battlefield) result(4) from(controller):token(Squirrel,Creature Squirrel,1/1,green)
auto=@dierolled(*|battlefield) result(5) from(controller):token(Squirrel,Creature Squirrel,1/1,green)
@@ -15757,6 +15770,14 @@ power=2
toughness=2
[/card]
[card]
name=Clever Concealment
other={convoke} name(Convoke)
auto=target(<anyamount>*[-land]|mybattlefield) phaseout
text=Convoke (Your creatures can help cast this spell. Each creature you tap while casting this spell pays for {1} or one mana of that creature's color.) -- Any number of target nonland permanents you control phase out. (Treat them and anything attached to them as though they don't exist until your next turn.)
mana={2}{W}{W}
type=Instant
[/card]
[card]
name=Clever Conjurer
auto={T}:name(Untap permanent) target(*[-Clever Conjurer]|mybattlefield) untap asSorcery
text=Mage Hand-{T}: Untap target permanent not named Clever Conjurer. Activate only as a sorcery.
@@ -16777,6 +16798,15 @@ mana={1}{U}
type=Sorcery
[/card]
[card]
name=Compleat Devotion
target=creature|myBattlefield
auto=transforms((,newability[2/2 ueot])) ueot
auto=if cantargetcard(creature[poisontoxic|poisontwotoxic|poisonthreetoxic]|*) then name(Draw a card) draw:1 controller
text=Target creature you control gets +2/+2 until end of turn. If that creature has toxic, draw a card.
mana={1}{W}
type=Instant
[/card]
[card]
name=Compleated Conjurer
auto=name(Exile top card) all(*[zpos=1]|myLibrary) moveto(exile) and!( transforms((,newability[canplayfromexile uent])) uent )!
text=When this creature transforms into Compleated Conjurer, exile the top card of your library. Until the end of your next turn, you may play that card.
@@ -17371,6 +17401,18 @@ power=2
toughness=2
[/card]
[card]
name=Contaminant Grafter
abilities=trample,poisontoxic
auto=@combatdamaged(player) from(creature|myBattlefield):_PROLIFERATE_
auto=@each my endofturn restriction{compare(opponentpoisoncount)~morethan~2}:name(Draw a card) draw:1 controller && transforms((,newability[may name(Put land in play) target(land|myhand) moveto(mybattlefield)])) oneshot
text=Trample, toxic 1 -- Whenever one or more creatures you control deal combat damage to one or more players, proliferate. -- Corrupted - At the beginning of your end step, if an opponent has three or more poison counters, draw a card, then you may put a land card from your hand onto the battlefield.
mana={4}{G}
type=Creature
subtype=Phyrexian Druid
power=5
toughness=5
[/card]
[card]
name=Contaminated Aquifer
auto=tap(noevent)
text=({T}: Add {U} or {B}.) -- Contaminated Aquifer enters the battlefield tapped.
@@ -29197,16 +29239,6 @@ power=2
toughness=1
[/card]
[card]
name=Fallaji Archaeologist
auto=name(Mill 3 cards) all(*[zpos<=2]|mylibrary) moveto(mygraveyard) and!( transforms((tobereturn,newability[all(*[zpos=3]|mylibrary) moveto(mygraveyard) and!( transforms((tobereturn,newability[if type(tobereturn[-land&-creature]|mygraveyard)~morethan~0 then choice name(Return a card) name(Return a card) target(tobereturn[-land&-creature]|mygraveyard) moveto(myhand)],newability[choice name(Put 1/1 counter) target(Fallaji Archaeologist[fresh]|mybattlefield) counter(1/1)])) ueot )!])) ueot )!
text=When Fallaji Archaeologist enters the battlefield, mill three cards. You may put a noncreature, nonland card from among the cards milled this way into your hand. If you don't, put a +1/+1 counter on Fallaji Archaeologist. (To mill a card, put the top card of your library into your graveyard.)
mana={1}{U}
type=Creature
subtype=Human Scout
power=0
toughness=3
[/card]
[card]
name=Fall from Favor
target=creature
auto=tap
@@ -29246,6 +29278,16 @@ type=Enchantment
subtype=Saga
[/card]
[card]
name=Fallaji Archaeologist
auto=name(Mill 3 cards) all(*[zpos<=2]|mylibrary) moveto(mygraveyard) and!( transforms((tobereturn,newability[all(*[zpos=3]|mylibrary) moveto(mygraveyard) and!( transforms((tobereturn,newability[if type(tobereturn[-land&-creature]|mygraveyard)~morethan~0 then choice name(Return a card) name(Return a card) target(tobereturn[-land&-creature]|mygraveyard) moveto(myhand)],newability[choice name(Put 1/1 counter) target(Fallaji Archaeologist[fresh]|mybattlefield) counter(1/1)])) ueot )!])) ueot )!
text=When Fallaji Archaeologist enters the battlefield, mill three cards. You may put a noncreature, nonland card from among the cards milled this way into your hand. If you don't, put a +1/+1 counter on Fallaji Archaeologist. (To mill a card, put the top card of your library into your graveyard.)
mana={1}{U}
type=Creature
subtype=Human Scout
power=0
toughness=3
[/card]
[card]
name=Fallaji Chaindancer
auto={2}:double strike ueot
text={2}: Fallaji Chaindancer gains double strike until end of turn.
@@ -31581,6 +31623,17 @@ power=3
toughness=1
[/card]
[card]
name=Flensing Raptor
abilities=flying,poisontoxic
auto=name(Creature gains 1/1 and flying) target(other creature[poisontoxic|poisontwotoxic|poisonthreetoxic]|myBattlefield) transforms((,newability[1/1],newability[flying])) ueot
text=Flying -- Toxic 1 (Players dealt combat damage by this creature also get a poison counter.) -- When Flensing Raptor enters the battlefield, another target creature you control with toxic gets +1/+1 and gains flying until end of turn.
mana={2}{W}
type=Creature
subtype=Phyrexian Bird
power=2
toughness=2
[/card]
[card]
name=Flesh // Blood
target=creature
abilities=hasnokicker
@@ -34236,6 +34289,15 @@ mana={3}{B}{R}
type=Instant
[/card]
[card]
name=Geth's Summons
auto=if type(creature|mybattlefield)~morethan~0 then choice name(Retun your creature) name(Retun your creature) target(creature|mygraveyard) moveto(mybattlefield) and!( transforms((,newability[if compare(opponentpoisoncount)~morethan~2 then may name(Return opponent creature) name(Return opponent creature) target(creature|opponentgraveyard) moveTo(mybattlefield)])) oneshot )!
auto=if compare(opponentpoisoncount)~morethan~2 then choice name(Don't return your creature) name(Don't return your creature) target(creature|opponentgraveyard) moveTo(mybattlefield)
auto=if compare(opponentpoisoncount)~lessthan~3 then choice name(Don't return your creature) name(Don't return your creature) donothing
text=Return up to one target creature card from your graveyard to the battlefield. -- Corrupted - For each opponent who has three or more poison counters as you cast this spell, put up to one target creature card from that player's graveyard onto the battlefield under your control.
mana={2}{B}{B}
type=Sorcery
[/card]
[card]
name=Geth, Thane of Contracts
auto=lord(other creature|myBattlefield) -1/-1
auto={1}{B}{B}{T}:target(creature|mygraveyard) moveTo(mybattlefield) and!( transforms((,newability[exiledeath])) forever )! asSorcery
@@ -34603,39 +34665,6 @@ power=0
toughness=6
[/card]
[card]
name=Glint Raker
abilities=flying
aicode=activate transforms((,newability[if type(artifact[zpos<=thatmuch]|mylibrary)~equalto~0 then all(*[zpos<=thatmuch]|mylibrary) moveto(mygraveyard)],newability[if type(artifact[zpos<=thatmuch]|mylibrary)~morethan~0 then target(artifact[zpos<=thatmuch]|mylibrary) moveto(myhand) and!( all(*[zpos<=thatmuch]|mylibrary) moveto(mygraveyard) )!]
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>0)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>1)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>2)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>3)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>4)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>5)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>6)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>7)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>8)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>9)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>10)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>11)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>12)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>13)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>14)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>15)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>16)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>17)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>18)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>19)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>20)while 1/0
auto=@combatdamaged(player) from(this):may name(Reveal top cards) reveal:thatmuch optionone name(Get an artifact) target(artifact|reveal) moveto(myhand) optiononeend optiontwo name(Put on graveyard) target(*|reveal) moveto(mygraveyard) and!( all(*|reveal) moveto(mygraveyard) )! optiontwoend revealend
text=Flying -- Glint Raker gets +X/+0, where X is the highest mana value among artifacts you control. -- Whenever Glint Raker deals combat damage to a player, you may reveal that many cards from the top of your library. Put an artifact card revealed this way into your hand and the rest into your graveyard.
mana={3}{U}
type=Creature
subtype=Drake
power=1
toughness=3
[/card]
[card]
name=Giant Slug
auto={5}:transforms((,newability[phaseaction[my upkeep sourceinplay]:forestwalk ueot])) forever
auto={5}:transforms((,newability[phaseaction[my upkeep sourceinplay]:mountainwalk ueot])) forever
@@ -35418,6 +35447,16 @@ power=1
toughness=2
[/card]
[card]
name=Glimmer Lens
auto={1}{W}:equip
auto=@combat(attacking) source(mytgt) restriction{type(creature[attacking]|battlefield)~morethan~1}:name(Draw a card) draw:1 controller
auto=livingweapontoken(Rebel,Creature Rebel,2/2,red)
text=For Mirrodin! (When this Equipment enters the battlefield, create a 2/2 red Rebel creature token, then attach this to it.) -- Whenever equipped creature and at least one other creature attack, draw a card. -- Equip {1}{W}
mana={1}{W}
type=Artifact
subtype=Equipment
[/card]
[card]
name=Glimmerbell
abilities=flying
auto={1}{U}:untap(this)
@@ -35459,6 +35498,39 @@ mana={1}{U}
type=Sorcery
[/card]
[card]
name=Glint Raker
abilities=flying
aicode=activate transforms((,newability[if type(artifact[zpos<=thatmuch]|mylibrary)~equalto~0 then all(*[zpos<=thatmuch]|mylibrary) moveto(mygraveyard)],newability[if type(artifact[zpos<=thatmuch]|mylibrary)~morethan~0 then target(artifact[zpos<=thatmuch]|mylibrary) moveto(myhand) and!( all(*[zpos<=thatmuch]|mylibrary) moveto(mygraveyard) )!]
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>0)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>1)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>2)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>3)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>4)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>5)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>6)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>7)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>8)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>9)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>10)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>11)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>12)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>13)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>14)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>15)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>16)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>17)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>18)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>19)while 1/0
auto=this(variable{convertedcost:highest:artifact:mybattlefield}>20)while 1/0
auto=@combatdamaged(player) from(this):may name(Reveal top cards) reveal:thatmuch optionone name(Get an artifact) target(artifact|reveal) moveto(myhand) optiononeend optiontwo name(Put on graveyard) target(*|reveal) moveto(mygraveyard) and!( all(*|reveal) moveto(mygraveyard) )! optiontwoend revealend
text=Flying -- Glint Raker gets +X/+0, where X is the highest mana value among artifacts you control. -- Whenever Glint Raker deals combat damage to a player, you may reveal that many cards from the top of your library. Put an artifact card revealed this way into your hand and the rest into your graveyard.
mana={3}{U}
type=Creature
subtype=Drake
power=1
toughness=3
[/card]
[card]
name=Glint-Horn Buccaneer
abilities=haste
auto=@discarded(*|myhand):damage:1 opponent
@@ -35493,6 +35565,18 @@ power=3
toughness=2
[/card]
[card]
name=Glissa's Retriever
abilities=haste,poisonthreetoxic
auto=cantbeblockedby(creature[power<=2])
auto=@movedto(this|graveyard) from(battlefield) restriction{compare(opponentpoisoncount)~morethan~2}:name(Exile and return) name(Exile and return card) all(trigger[to]) moveto(myexile) and!( name(Return card) target(*|mygraveyard) moveto(myhand) )!
text=Haste, toxic 3 (Players dealt combat damage by this creature also get three poison counters.) -- Glissa's Retriever can't be blocked by creatures with power 2 or less. -- Corrupted - When Glissa's Retriever dies, exile it. When you do, return up to X target cards from your graveyard to your hand, where X is the number of opponents who have three or more poison counters.
mana={5}{G}
type=Creature
subtype=Phyrexian Beast
power=6
toughness=6
[/card]
[card]
name=Glissa, Herald of Predation
auto=@each my combatbegins:name(Choose one) transforms((,newability[choice name(Create Incubate 2 twice) thisforeach(variable{2}) name(Incubate 2) name(Incubate 2) token(Incubator) and!( counter(1/1.2) )!],newability[choice name(Transform all incubator) all(incubator|myBattlefield) flip(backside)],newability[choice name(All phyrexians gain first strike and deathtouch) all(phyrexian|myBattlefield) transforms((,newability[first strike],newability[deathtouch])) ueot])) oneshot
text=At the beginning of combat on your turn, choose one -- Incubate 2 twice. (To incubate 2, create an Incubator token with two +1/+1 counters on it and "{2}: Transform this artifact." It transforms into a 0/0 Phyrexian artifact creature.) -- Transform all Incubator tokens you control. -- Phyrexians you control gain first strike and deathtouch until end of turn.
@@ -35540,6 +35624,24 @@ power=3
toughness=2
[/card]
[card]
name=Glistening Sphere
auto=tap(noevent)
auto=_PROLIFERATE_
auto={T}:add{W}
auto={T}:add{U}
auto={T}:add{B}
auto={T}:add{R}
auto={T}:add{G}
auto=this(variable{opponentpoisoncount}>2) {T}:add{W}{W}{W}
auto=this(variable{opponentpoisoncount}>2) {T}:add{U}{U}{U}
auto=this(variable{opponentpoisoncount}>2) {T}:add{B}{B}{B}
auto=this(variable{opponentpoisoncount}>2) {T}:add{R}{R}{R}
auto=this(variable{opponentpoisoncount}>2) {T}:add{G}{G}{G}
text=Glistening Sphere enters the battlefield tapped. -- When Glistening Sphere enters the battlefield, proliferate. -- {T}: Add one mana of any color. -- Corrupted - {T}: Add three mana of any one color. Activate only if an opponent has three or more poison counters.
mana={3}
type=Artifact
[/card]
[card]
name=Glittering Frost
target=land
auto=teach(land) becomes(snow)
@@ -36825,6 +36927,14 @@ type=Artifact
subtype=Equipment
[/card]
[card]
name=Goldwardens' Gambit
anyzone=affinity(equipment|mybattlefield) reduce({1})
auto=name(Create rebels) token(Rebel,Creature Rebel,2/2,red)*5 and!( transforms((,newability[haste],newability[may name(Attach an equipment) target(equipment|mybattlefield) transforms((,newability[name(Attach to Rebel) rehook target(rebel[-geared&token&fresh]|mybattlefield)])) oneshot])) ueot )!
text=Affinity for Equipment (This spell costs {1} less to cast for each Equipment you control.) -- Create five 2/2 red Rebel creature tokens. They gain haste until end of turn. For each of those tokens, you may attach an Equipment you control to it.
mana={6}{R}{R}
type=Sorcery
[/card]
[card]
name=Golgari Findbroker
auto=target(*[-instant;-sorcery]|mygraveyard) moveto(ownerhand)
text=When Golgari Findbroker enters the battlefield, return target permanent card from your graveyard to your hand.
@@ -40996,6 +41106,17 @@ type=Artifact
subtype=Equipment
[/card]
[card]
name=Hexplate Wallbreaker
auto={3}{R}:equip
auto=teach(creature) 2/2
auto=@combat(attacking) source(mytgt) turnlimited:name(Untap and combat again) all(other creature[attacking]|mybattlefield) untap && emblem transforms((,newability[nextphasealter(add^combatphases^controller^after<combatends>)])) ueot
auto=livingweapontoken(Rebel,Creature Rebel,2/2,red)
text=For Mirrodin! (When this Equipment enters the battlefield, create a 2/2 red Rebel creature token, then attach this to it.) -- Equipped creature gets +2/+2. -- Whenever equipped creature attacks, if it's the first combat phase of the turn, untap each attacking creature. After this phase, there is an additional combat phase. -- Equip {3}{R}
mana={3}{R}{R}
type=Artifact
subtype=Equipment
[/card]
[card]
name=Hezrou // Demonic Stench
abilities=adventure,asflash
other={B} name(Adventure)
@@ -46122,6 +46243,18 @@ power=2
toughness=2
[/card]
[card]
name=Ixhel, Scion of Atraxa
abilities=flying,vigilance,poisontwotoxic
auto=@each my endofturn restriction{compare(opponentpoisoncount)~morethan~2}:name(Exile top card) all(*[zpos=1]|opponentlibrary) moveto(exile) and!( becomes(tobescion) forever )!
auto={0}:name(Can play exiled card) target(tobescion|opponentexile) moveto(myexile) and!( transforms((,newability[canplayfromexile],newability[anytypeofmana],newability[phaseaction[endofturn once checkex] moveTo(ownerexile)],newability[phaseaction[endofturn once checkex] becomes(tobescion) forever])) ueot )!
text=Flying, vigilance, toxic 2 -- Corrupted - At the beginning of your end step, each opponent who has three or more poison counters exiles the top card of their library face down. You may look at and play those cards for as long as they remain exiled, and you may spend mana as though it were mana of any color to cast those spells.
mana={1}{W}{B}{G}
type=Legendary Creature
subtype=Phyrexian Angel
power=2
toughness=5
[/card]
[card]
name=Ixidor's Will
target=*|stack
auto=if type(wizard|battlefield)~equalto~0 then transforms((,newability[pay[[{0}]] name(pay 0 mana) donothing?fizzle])) forever
@@ -48417,6 +48550,16 @@ power=2
toughness=2
[/card]
[card]
name=Kemba's Banner
auto={2}{W}:equip
auto=teach(creature) type:creature:mybattlefield/type:creature:mybattlefield nonstatic
auto=livingweapontoken(Rebel,Creature Rebel,2/2,red)
text=For Mirrodin! (When this Equipment enters the battlefield, create a 2/2 red Rebel creature token, then attach this to it.) -- Equipped creature gets +1/+1 for each creature you control. -- Equip {2}{W}
mana={3}{W}
type=Artifact
subtype=Equipment
[/card]
[card]
name=Kemba's Legion
abilities=vigilance
text=Vigilance -- Kemba's Legion can block an additional creature for each Equipment attached to Kemba's Legion.
@@ -56485,6 +56628,17 @@ mana={3}
type=Artifact
[/card]
[card]
name=Mirage Mockery
other={2}{U} name(Entwine)
auto=ifnot paid(alternative) then if type(creature[artifact]|mybattlefield)~morethan~0 then choice name(Create a copy of artifact creature) name(Create a copy of artifact creature) target(creature[artifact]|mybattlefield) clone
auto=ifnot paid(alternative) then if type(creature[-artifact]|mybattlefield)~morethan~0 then choice name(Create a copy of nonartifact creature) name(Create a copy of nonartifact creature) target(creature[-artifact]|mybattlefield) clone
auto=if paid(alternative) then name(Create a copy of artifact creature) ability$!name(Create a copy of artifact creature) target(creature[artifact]|mybattlefield) clone!$ controller
auto=if paid(alternative) then name(Create a copy of nonartifact creature) ability$!name(Create a copy of nonartifact creature) target(creature[-artifact]|mybattlefield) clone!$ controller
text=Choose one -- Create a token that's a copy of target artifact creature you control. -- Create a token that's a copy of target nonartifact creature you control. -- Entwine {2}{U} (Choose both if you pay the entwine cost.)
mana={2}{U}
type=Sorcery
[/card]
[card]
name=Mirage Phalanx
abilities=soulbond
auto=soulbond transforms((,newability[@each my combatbegins:name(Create copy) clone and!( transforms((,newability[haste],newability[-soulbond],newability[phaseaction[combatends once sourceinplay] moveto(exile)])) forever)!]))
@@ -60004,6 +60158,18 @@ mana={5}{U}{U}
type=Instant
[/card]
[card]
name=Neyali, Suns' Vanguard
auto=lord(*[token&attacking]|myBattlefield) double strike
auto=@combat(attacking) source(*[token]|mybattlefield):name(Exile top card) all(*[zpos=1]|mylibrary) moveto(myexile) and!( transforms((,newability[aslongas(*[token&attacking]|mybattlefield) canplayfromexile >0])) forever )!
auto=@one or more tokens you control attack a playerexile the top card of your library during any turn you attackedtoken, may play that card
text=Attacking tokens you control have double strike. -- Whenever one or more tokens you control attack a player, exile the top card of your library. During any turn you attacked with a token, you may play that card.
mana={2}{R}{W}
type=Legendary Creature
subtype=Human Rebel
power=3
toughness=3
[/card]
[card]
name=Neyith of the Dire Hunt
auto=@combat(blocked) source(creature|mybattlefield) turnlimited:name(Draw a card) draw:1 controller
auto=@damaged(creature) from(creature[-attacking;-blocking]|mybattlefield) turnlimited:may name(Draw a card) draw:1 controller
@@ -60809,6 +60975,15 @@ power=5
toughness=4
[/card]
[card]
name=Norn's Decree
auto=@each my blockers restriction{compare(opponentpoisoncount)~morethan~0}:name(Draw a card) draw:1 controller
auto=@each opponent blockers restriction{compare(poisoncount)~morethan~0}:name(Draw a card) draw:1 opponent
auto=@combatdamageof(player):name(Poison opponent) alterpoison:1 opponent
text=Whenever one or more creatures an opponent controls deal combat damage to you, that opponent gets a poison counter. -- Whenever a player attacks, if one or more players being attacked are poisoned, the attacking player draws a card.
mana={2}{W}
type=Enchantment
[/card]
[card]
name=Norn's Inquisitor
auto=name(Incubate 2) name(Incubate 2) token(Incubator) and!( counter(1/1.2) )!
auto=@transformed(*[phyrexian]|mybattlefield):name(Put 1/1 counter) name(Put 1/1 counter) all(trigger) counter(1/1)
@@ -63191,6 +63366,18 @@ power=1
toughness=2
[/card]
[card]
name=Otharri, Suns' Glory
abilities=flying,haste,lifelink
auto=_ATTACKING_name(Get experience and create rebel) alterexperience:1 controller && token(Rebel,Creature Rebel,2/2,red,battleready)*pexperience
autograveyard={2}{R}{W}{T(rebel[-tapped]|mybattlefield)}:name(Return to battlefield) moveto(mybattlefield) and!( tap(noevent) )!
text=Flying, lifelink, haste -- Whenever Otharri, Suns' Glory attacks, you get an experience counter. Then create a 2/2 red Rebel creature token that's tapped and attacking for each experience counter you have. -- {2}{R}{W}, Tap an untapped Rebel you control: Return Otharri from your graveyard to the battlefield tapped.
mana={3}{R}{W}
type=Legendary Creature
subtype=Phoenix
power=3
toughness=3
[/card]
[card]
name=Otherworldly Gaze
flashback={1}{U}
aicode=activate transforms((,newability[target(<anyamount>*[zpos<=3]|mylibrary) moveto(mygraveyard)])) oneshot
@@ -65003,6 +65190,13 @@ power=5
toughness=5
[/card]
[card]
name=Phyresis Outbreak
auto=alterpoison:1 opponent && ability$!name(Creature get poisoned) all(creature|opponentbattlefield) -opponentpoisoncount/-opponentpoisoncount ueot!$ controller
text=Each opponent gets a poison counter. Then each creature your opponents control gets -1/-1 until end of turn for each poison counter its controller has.
mana={2}{B}
type=Sorcery
[/card]
[card]
name=Phyrexian
backside=Incubator
type=Artifact Creature
@@ -65326,6 +65520,17 @@ power=9
toughness=9
[/card]
[card]
name=Phyrexian Vindicator
abilities=flying,undamageable
auto=@damaged(this):name(Deal damage) target(player,creature,planeswalker) damage:thatmuch
text=Flying -- If damage would be dealt to Phyrexian Vindicator, prevent that damage. When damage is prevented this way, Phyrexian Vindicator deals that much damage to any other target.
mana={W}{W}{W}{W}
type=Creature
subtype=Phyrexian Horror
power=5
toughness=5
[/card]
[card]
name=Phyrexian Vivisector
auto=@movedTo(creature|graveyard) from(mybattlefield):_SCRY1_
text=Whenever a creature you control dies, scry 1. (Look at the top card of your library. You may put that card on the bottom of your library.)
@@ -66395,6 +66600,16 @@ type=Legendary Enchantment
subtype=Background
[/card]
[card]
name=Porcelain Zealot
auto=@each my combatbegins:name(Creature gains 1/1) target(creature|myBattlefield) transforms((,newability[1/1 ueot],newability[if cantargetcard(creature[poisontoxic|poisontwotoxic|poisonthreetoxic]|*) then 1/1 ueot])) ueot
text=At the beginning of combat on your turn, target creature you control gets +1/+1 until end of turn. If that creature has toxic, instead it gets +2/+2 until end of turn.
mana={3}{W}
type=Creature
subtype=Phyrexian Soldier
power=2
toughness=3
[/card]
[card]
name=Porcuparrot
abilities=mutate
otherrestriction=type(creature[-human]|mybattlefield)~morethan~0
@@ -73176,6 +73391,14 @@ power=3
toughness=2
[/card]
[card]
name=Roar of Resistance
auto=lord(creature[token]|myBattlefield) haste
auto=@each my blockers:may name(Pay and get 2/0) pay({1}{R}) name(Pay and get 2/0) all(creature[attacking]|mybattlefield) transforms((,newability[2/0])) ueot
text=Creature tokens you control have haste. -- Whenever one or more creatures attack, you may pay {1}{R}. If you do, creatures attacking your opponents and/or planeswalkers they control get +2/+0 until end of turn.
mana={1}{R}
type=Enchantment
[/card]
[card]
name=Robber of the Rich
abilities=reach,haste
auto=@combat(attacking) source(this) restriction{compare(ohandcount)~morethan~compare(phandcount)}:name(Exile top card) all(*[zpos=1]|opponentlibrary) moveto(exile) and!( counter(0/0,1,RobberExiled) notrg )!
@@ -81398,6 +81621,18 @@ power=3
toughness=3
[/card]
[card]
name=Skyhunter Strike Force
abilities=flying
auto=@combat(attacking) source(this):name(Melee) all(trigger[to]) 1/1 ueot
auto=@combat(attacking) source(other creature|mybattlefield) restriction{type(*[iscommander]|mybattlefield)~morethan~0}:name(Melee) all(trigger[to]) 1/1 ueot
text=Flying -- Melee (Whenever this creature attacks, it gets +1/+1 until end of turn for each opponent you attacked this combat.) -- Lieutenant - As long as you control your commander, other creatures you control have melee.
mana={2}{W}
type=Creature
subtype=Cat Knight
power=2
toughness=2
[/card]
[card]
name=Skyknight Vanguard
abilities=flying
auto=_ATTACKING_token(Soldier,Creature Soldier,1/1,white,battleready)
@@ -84878,6 +85113,15 @@ mana={3}
type=Artifact
[/card]
[card]
name=Staff of the Storyteller
auto=token(Spirit,Creature Spirit,1/1,white,flying)
auto=@tokencreated(*|myBattlefield):name(Add story counter) counter(0/0,1,Story)
auto={W}{T}{C(0/0,-1,Story)}:name(Draw a card) draw:1 controller
text=When Staff of the Storyteller enters the battlefield, create a 1/1 white Spirit creature token with flying. -- Whenever you create one or more creature tokens, put a story counter on Staff of the Storyteller. -- {W}, {T}, Remove a story counter from Staff of the Storyteller: Draw a card.
mana={1}{W}
type=Artifact
[/card]
[card]
name=Staggering Insight
target=creature
auto=1/1
@@ -88037,6 +88281,37 @@ power=1
toughness=2
[/card]
[card]
name=Synthesis Pod
other={3}{L:2} name(Pay 2 life)
auto={1}{U}{C(0/0,1,SynthesisEffect)}:name(Exile spell) target(*|mystack) spellmover(exile)
auto={1}{L:2}{C(0/0,1,SynthesisEffect)}:name(Pay life and exile spell) target(*|mystack) spellmover(exile)
auto=@movedto(*|myexile) from(mystack) restriction{compare(hascntsynthesiseffect)~morethan~0}:name(Effexct ends) removeallcounters(0/0,1,SynthesisEffect) notrg
auto=@movedto(*[manacost=0]|myexile) from(mystack) restriction{compare(hascntsynthesiseffect)~morethan~0}:name(Cast opponent card) target(*[manacost=1]|opponentlibrary) moveto(myexile) and!( transforms((,newability[choice name(Cast card) activate castcard(normal)],newability[choice name(Don't cast card) moveto(ownerexile)])) oneshot )!
auto=@movedto(*[manacost=1]|myexile) from(mystack) restriction{compare(hascntsynthesiseffect)~morethan~0}:name(Cast opponent card) target(*[manacost=2]|opponentlibrary) moveto(myexile) and!( transforms((,newability[choice name(Cast card) activate castcard(normal)],newability[choice name(Don't cast card) moveto(ownerexile)])) oneshot )!
auto=@movedto(*[manacost=2]|myexile) from(mystack) restriction{compare(hascntsynthesiseffect)~morethan~0}:name(Cast opponent card) target(*[manacost=3]|opponentlibrary) moveto(myexile) and!( transforms((,newability[choice name(Cast card) activate castcard(normal)],newability[choice name(Don't cast card) moveto(ownerexile)])) oneshot )!
auto=@movedto(*[manacost=3]|myexile) from(mystack) restriction{compare(hascntsynthesiseffect)~morethan~0}:name(Cast opponent card) target(*[manacost=4]|opponentlibrary) moveto(myexile) and!( transforms((,newability[choice name(Cast card) activate castcard(normal)],newability[choice name(Don't cast card) moveto(ownerexile)])) oneshot )!
auto=@movedto(*[manacost=4]|myexile) from(mystack) restriction{compare(hascntsynthesiseffect)~morethan~0}:name(Cast opponent card) target(*[manacost=5]|opponentlibrary) moveto(myexile) and!( transforms((,newability[choice name(Cast card) activate castcard(normal)],newability[choice name(Don't cast card) moveto(ownerexile)])) oneshot )!
auto=@movedto(*[manacost=5]|myexile) from(mystack) restriction{compare(hascntsynthesiseffect)~morethan~0}:name(Cast opponent card) target(*[manacost=6]|opponentlibrary) moveto(myexile) and!( transforms((,newability[choice name(Cast card) activate castcard(normal)],newability[choice name(Don't cast card) moveto(ownerexile)])) oneshot )!
auto=@movedto(*[manacost=6]|myexile) from(mystack) restriction{compare(hascntsynthesiseffect)~morethan~0}:name(Cast opponent card) target(*[manacost=7]|opponentlibrary) moveto(myexile) and!( transforms((,newability[choice name(Cast card) activate castcard(normal)],newability[choice name(Don't cast card) moveto(ownerexile)])) oneshot )!
auto=@movedto(*[manacost=7]|myexile) from(mystack) restriction{compare(hascntsynthesiseffect)~morethan~0}:name(Cast opponent card) target(*[manacost=8]|opponentlibrary) moveto(myexile) and!( transforms((,newability[choice name(Cast card) activate castcard(normal)],newability[choice name(Don't cast card) moveto(ownerexile)])) oneshot )!
auto=@movedto(*[manacost=8]|myexile) from(mystack) restriction{compare(hascntsynthesiseffect)~morethan~0}:name(Cast opponent card) target(*[manacost=9]|opponentlibrary) moveto(myexile) and!( transforms((,newability[choice name(Cast card) activate castcard(normal)],newability[choice name(Don't cast card) moveto(ownerexile)])) oneshot )!
auto=@movedto(*[manacost=9]|myexile) from(mystack) restriction{compare(hascntsynthesiseffect)~morethan~0}:name(Cast opponent card) target(*[manacost=10]|opponentlibrary) moveto(myexile) and!( transforms((,newability[choice name(Cast card) activate castcard(normal)],newability[choice name(Don't cast card) moveto(ownerexile)])) oneshot )!
auto=@movedto(*[manacost=10]|myexile) from(mystack) restriction{compare(hascntsynthesiseffect)~morethan~0}:name(Cast opponent card) target(*[manacost=11]|opponentlibrary) moveto(myexile) and!( transforms((,newability[choice name(Cast card) activate castcard(normal)],newability[choice name(Don't cast card) moveto(ownerexile)])) oneshot )!
auto=@movedto(*[manacost=11]|myexile) from(mystack) restriction{compare(hascntsynthesiseffect)~morethan~0}:name(Cast opponent card) target(*[manacost=12]|opponentlibrary) moveto(myexile) and!( transforms((,newability[choice name(Cast card) activate castcard(normal)],newability[choice name(Don't cast card) moveto(ownerexile)])) oneshot )!
auto=@movedto(*[manacost=12]|myexile) from(mystack) restriction{compare(hascntsynthesiseffect)~morethan~0}:name(Cast opponent card) target(*[manacost=13]|opponentlibrary) moveto(myexile) and!( transforms((,newability[choice name(Cast card) activate castcard(normal)],newability[choice name(Don't cast card) moveto(ownerexile)])) oneshot )!
auto=@movedto(*[manacost=13]|myexile) from(mystack) restriction{compare(hascntsynthesiseffect)~morethan~0}:name(Cast opponent card) target(*[manacost=14]|opponentlibrary) moveto(myexile) and!( transforms((,newability[choice name(Cast card) activate castcard(normal)],newability[choice name(Don't cast card) moveto(ownerexile)])) oneshot )!
auto=@movedto(*[manacost=14]|myexile) from(mystack) restriction{compare(hascntsynthesiseffect)~morethan~0}:name(Cast opponent card) target(*[manacost=15]|opponentlibrary) moveto(myexile) and!( transforms((,newability[choice name(Cast card) activate castcard(normal)],newability[choice name(Don't cast card) moveto(ownerexile)])) oneshot )!
auto=@movedto(*[manacost=15]|myexile) from(mystack) restriction{compare(hascntsynthesiseffect)~morethan~0}:name(Cast opponent card) target(*[manacost=16]|opponentlibrary) moveto(myexile) and!( transforms((,newability[choice name(Cast card) activate castcard(normal)],newability[choice name(Don't cast card) moveto(ownerexile)])) oneshot )!
auto=@movedto(*[manacost=16]|myexile) from(mystack) restriction{compare(hascntsynthesiseffect)~morethan~0}:name(Cast opponent card) target(*[manacost=17]|opponentlibrary) moveto(myexile) and!( transforms((,newability[choice name(Cast card) activate castcard(normal)],newability[choice name(Don't cast card) moveto(ownerexile)])) oneshot )!
auto=@movedto(*[manacost=17]|myexile) from(mystack) restriction{compare(hascntsynthesiseffect)~morethan~0}:name(Cast opponent card) target(*[manacost=18]|opponentlibrary) moveto(myexile) and!( transforms((,newability[choice name(Cast card) activate castcard(normal)],newability[choice name(Don't cast card) moveto(ownerexile)])) oneshot )!
auto=@movedto(*[manacost=18]|myexile) from(mystack) restriction{compare(hascntsynthesiseffect)~morethan~0}:name(Cast opponent card) target(*[manacost=19]|opponentlibrary) moveto(myexile) and!( transforms((,newability[choice name(Cast card) activate castcard(normal)],newability[choice name(Don't cast card) moveto(ownerexile)])) oneshot )!
auto=@movedto(*[manacost=19]|myexile) from(mystack) restriction{compare(hascntsynthesiseffect)~morethan~0}:name(Cast opponent card) target(*[manacost=20]|opponentlibrary) moveto(myexile) and!( transforms((,newability[choice name(Cast card) activate castcard(normal)],newability[choice name(Don't cast card) moveto(ownerexile)])) oneshot )!
auto=@movedto(*[manacost>=20]|myexile) from(mystack) restriction{compare(hascntsynthesiseffect)~morethan~0}:name(Cast opponent card) target(*[manacost=21]|opponentlibrary) moveto(myexile) and!( transforms((,newability[choice name(Cast card) activate castcard(normal)],newability[choice name(Don't cast card) moveto(ownerexile)])) oneshot )!
text=({U/P} can be paid with either {U} or 2 life.) -- {1}{U/P}, {T}, Exile a spell you control: Target opponent reveals cards from the top of their library until they reveal a card with mana value equal to 1 plus the exiled spellâ??s mana value. Exile that card, then that player shuffles. You may cast that exiled card without paying its mana cost.
mana={3}{U}
type=Artifact
[/card]
[card]
name=Synthetic Destiny
auto=count(type:creature:mybattlefield)
auto=all(creature|myBattlefield) moveto(exile)
@@ -98962,6 +99237,14 @@ power=2
toughness=3
[/card]
[card]
name=Vulshok Factory
auto={T}:name(Add mana and charge) add{R} && counter(0/0,1,Charge)
auto={2}{R}{T}{S}:name(Create golem) token(Golem,Creature Artifact Golem,hascntcharge/hascntcharge,haste) asSorcery
text={T}: Add {R}. Put a charge counter on Vulshok Factory. -- {2}{R}, {T}, Sacrifice Vulshok Factory: Create an X/X colorless Golem artifact creature token with haste, where X is the number of charge counters on Vulshok Factory. Activate only as a sorcery.
mana={2}{R}
type=Artifact
[/card]
[card]
name=Vulshok Splitter
auto=teach(creature) 2/0
auto={2}{R}:equip
@@ -101466,6 +101749,14 @@ power=4
toughness=4
[/card]
[card]
name=Wondrous Crucible
auto=@targeted(*|mybattlefield) from(*|opponentzones):choice name(This spell costs 2 more) name(This spell costs 2 more) target(*|opponentzones) transforms((,newability[pay[[{2}]] name(pay 2 mana) donothing?fizzle])) oneshot
auto=@each my endofturn:name(Mill and exile) deplete:2 controller && ability$!name(Exile a random card) name(Exile a random card) target(*[-land]|opponentgraveyard) moveto(opponentexile) and!( transforms((,newability[if cantargetcard(*[-instant;-sorcery]|*) then choice name(Cast the copy) name(Cast the copy) clone],newability[if cantargetcard(*[instant;sorcery]|*) then choice name(Cast the copy) name(Cast the copy) activate castcard(copied)],newability[choice name(Don't cast copy) donothing])) oneshot )!!$ opponent
text=Permanents you control have ward {2}. -- At the beginning of your end step, mill two cards, then exile a nonland card at random from your graveyard. Copy it. You may cast the copy without paying its mana cost. (A copy of a permanent spell becomes a token.)
mana={7}
type=Artifact
[/card]
[card]
name=Wood Sage
aicode=activate target(<4>creature[chosenname;zpos<=4]|mylibrary) moveto(myhand) and!( all(*[zpos<=4]|mylibrary) moveto(mygraveyard) )!
auto={T}:name(Name a creature) ability$!chooseaname reveal:4 optionone name(Put named creatures in hand) name(Put named creatures in hand) target(<4>creature[chosenname]|reveal) moveto(myhand) optiononeend optiontwo name(Put in graveyard) target(<4>*|reveal) moveto(mygraveyard) optiontwoend revealend chooseend nonland!$ controller
@@ -101477,14 +101768,6 @@ power=1
toughness=1
[/card]
[card]
name=Wondrous Crucible
auto=@targeted(*|mybattlefield) from(*|opponentzones):choice name(This spell costs 2 more) name(This spell costs 2 more) target(*|opponentzones) transforms((,newability[pay[[{2}]] name(pay 2 mana) donothing?fizzle])) oneshot
auto=@each my endofturn:name(Mill and exile) deplete:2 controller && ability$!name(Exile a random card) name(Exile a random card) target(*[-land]|opponentgraveyard) moveto(opponentexile) and!( transforms((,newability[if cantargetcard(*[-instant;-sorcery]|*) then choice name(Cast the copy) name(Cast the copy) clone],newability[if cantargetcard(*[instant;sorcery]|*) then choice name(Cast the copy) name(Cast the copy) activate castcard(copied)],newability[choice name(Don't cast copy) donothing])) oneshot )!!$ opponent
text=Permanents you control have ward {2}. -- At the beginning of your end step, mill two cards, then exile a nonland card at random from your graveyard. Copy it. You may cast the copy without paying its mana cost. (A copy of a permanent spell becomes a token.)
mana={7}
type=Artifact
[/card]
[card]
name=Woodcaller Automaton
other={2}{G}{G} name(prototype)
auto=if paid(alternative) then becomes(,3/3,green)
@@ -101884,6 +102167,14 @@ power=4
toughness=4
[/card]
[card]
name=Wurmquake
auto=name(Create wurm) token(Phyrexian Wurm,Creature Phyrexian Wurm,totmanaspent/totmanaspent,green,trample,poisontoxic)
flashback={8}{G}{G}
text=Corrupted - Create an X/X green Phyrexian Wurm creature token with trample and toxic 1, where X is the amount of mana spent to cast this spell. Then for each opponent with three or more poison counters, you create another one of those tokens. -- Flashback {8}{G}{G} (You may cast this card from your graveyard for its flashback cost. Then exile it.)
mana={4}{G}{G}
type=Sorcery
[/card]
[card]
name=Wyleth, Soul of Steel
abilities=trample
auto=_ATTACKING_thisforeach(auras > 0) draw:1 controller
@@ -6055,6 +6055,12 @@ power=0
toughness=0
[/card]
[card]
name=Lux Artillery
text=Whenever you cast an artifact creature spell, it gains sunburst. (It enters the battlefield with a +1/+1 counter on it for each color of mana spent to cast it.) -- At the beginning of your end step, if there are thirty or more counters among artifacts and creatures you control, Lux Artillery deals 10 damage to each opponent.
mana={4}
type=Artifact
[/card]
[card]
name=Maddening Imp
abilities=flying
text=Flying -- {T}: Non-Wall creatures the active player controls attack this turn if able. At the beginning of the next end step, destroy each of those creatures that didn't attack this turn. Activate this ability only during an opponent's turn and only before combat.