From 961f00441f1e50726e8f0a122402579a2f198b62 Mon Sep 17 00:00:00 2001 From: Eduardo MG Date: Sun, 28 May 2023 18:36:46 -0600 Subject: [PATCH] Sagas from Kamigawa: Neon Dynasty (NEO) Still some missing Cards added: Fable of the Mirror-Breaker Reflection of Kiki-Jiki Okiba Reckoner Raid Nezumi Road Captain Era of Enlightenment Hand of Enlightenment Befriending the Moths Imperial Moth Tales of Master Seshiro Seshiro's Living Legacy The Modern Age Vector Glider The Shattered States Era Nameless Conqueror Bug fixes: Fry Liliana, the Last Hope Brinelin, the Moon Kraken --- .../bin/Res/sets/primitives/borderline.txt | 190 +++++++++++++++++- .../bin/Res/sets/primitives/planeswalkers.txt | 2 +- 2 files changed, 185 insertions(+), 7 deletions(-) diff --git a/projects/mtg/bin/Res/sets/primitives/borderline.txt b/projects/mtg/bin/Res/sets/primitives/borderline.txt index 7ccec0993..32c2ce528 100644 --- a/projects/mtg/bin/Res/sets/primitives/borderline.txt +++ b/projects/mtg/bin/Res/sets/primitives/borderline.txt @@ -14,8 +14,8 @@ subtype=Equipment [card] name=A-Haywire Mite auto=life:3 controller -auto={G}{S}:name(Exile enchantment) target(enchantment[-creature] moveTo(ownerexile) -auto={G}{S}:name(Exile artifact) target(artifact[-creature] moveTo(ownerexile) +auto={G}{S}:name(Exile enchantment) target(enchantment[-creature]) moveTo(ownerexile) +auto={G}{S}:name(Exile artifact) target(artifact[-creature]) moveTo(ownerexile) text=When Haywire Mite dies, you gain 3 life. -- {G}, Sacrifice Haywire Mite: Exile target noncreature artifact or noncreature enchantment. mana={1} type=Artifact Creature @@ -7103,6 +7103,22 @@ mana={B}{B}{R} type=Instant [/card] [card] +name=Befriending the Moths +backside=Imperial Moth +restriction=compare(isflipped)~equalto~0 +anyzone={0}:doubleside(backside) +abilities=flying +auto=counter(0/0,1,Lore) +auto=@each my firstmain:counter(0/0,1,Lore) +auto=target(creature|myBattlefield) transforms((,newability[1/1],flying)) ueot +auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.2.Lore}<=2) target(creature|myBattlefield) transforms((,newability[1/1],flying)) ueot +auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.3.Lore}) this(counter{0/0.3.Lore}) moveto(exile) and!( flip(backside) forcetype(Creature) )! asSorcery +text=(As this Saga enters and after your draw step, add a lore counter.) -- I, II - Target creature you control gets +1/+1 and gains flying until end of turn. -- III - Exile this Saga, then return it to the battlefield transformed under your control. +mana={3}{W} +type=Enchantment +subtype=Saga +[/card] +[card] name=Befuddle target=creature auto=-4/-0 @@ -11193,7 +11209,7 @@ subtype=Aura [card] name=Brinelin, the Moon Kraken abilities=partner -auto=moveto(ownerhand) target(*[-land]|battlefield) +auto=may moveto(ownerhand) target(*[-land]|battlefield) auto=@movedto(*[manacost>=6]|mystack):moveto(ownerhand) target(*[-land]|battlefield) text=When Brinelin, the Moon Kraken enters the battlefield or whenever you cast a spell with mana value 6 or greater, you may return target nonland permanent to its owner's hand. -- Partner (You can have two commanders if both have partner.) mana={6}{U}{U} @@ -27237,6 +27253,21 @@ power=4 toughness=4 [/card] [card] +name=Era of Enlightenment +backside=Hand of Enlightenment +restriction=compare(isflipped)~equalto~0 +anyzone={0}:doubleside(backside) +auto=counter(0/0,1,Lore) +auto=@each my firstmain:counter(0/0,1,Lore) +auto=_SCRY2_ +auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.2.Lore}<=2) life:2 +auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.3.Lore}) this(counter{0/0.3.Lore}) moveto(exile) and!( flip(backside) forcetype(Creature) )! asSorcery +text=(As this Saga enters and after your draw step, add a lore counter.) -- I - Scry 2. -- II - You gain 2 life. -- III - Exile this Saga, then return it to the battlefield transformed under your control. +mana={1}{W} +type=Enchantment +subtype=Saga +[/card] +[card] name=Eradicator Valkyrie abilities=boast,flying,lifelink auto=protection from(planeswalker) @@ -28654,6 +28685,21 @@ power=1 toughness=1 [/card] [card] +name=Fable of the Mirror-Breaker +backside=Reflection of Kiki-Jiki +restriction=compare(isflipped)~equalto~0 +anyzone={0}:doubleside(backside) +auto=counter(0/0,1,Lore) +auto=Create(Goblin:Goblin Shaman Creature:2/2:red) and!( transforms((,newability[@combat(attacking) source(this):token(Treasure Sur)])) )! +auto=@each my firstmain:counter(0/0,1,Lore) +auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.2.Lore}<=2) reject notatarget(*|myhand) and!( draw:1 controller )! +auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.3.Lore}) this(counter{0/0.3.Lore}) moveto(exile) and!( flip(backside) forcetype(Creature) )! asSorcery +text=(As this Saga enters and after your draw step, add a lore counter.) -- I - Create a 2/2 red Goblin Shaman creature token with "Whenever this creature attacks, create a Treasure token." -- II - You may discard up to two cards. If you do, draw that many cards. -- III - Exile this Saga, then return it to the battlefield transformed under your control. +mana={2}{R} +type=Enchantment +subtype=Saga +[/card] +[card] name=Fabled Passage auto={T}{S}:name(Search basic land) target(land[basic]|mylibrary) moveto(mybattlefield) and!( transforms((,newability[shuffle],newability[tap(noevent)],newability[if type(land|myBattlefield)~morethan~3 then untap])) oneshot )! text={T}, Sacrifice Fabled Passage: Search your library for a basic land card, put it onto the battlefield tapped, then shuffle your library. Then if you control four or more lands, untap that land. @@ -32737,8 +32783,8 @@ toughness=7 [card] name=Fry abilities=nofizzle -target=creature,planeswalker[white;blue] -auto=damage:6 +target=*[creature;planeswalker;white;blue] +auto=damage:5 text=This spell can't be countered. -- Fry deals 5 damage to target creature or planeswalker that's white or blue. mana={1}{R} type=Instant @@ -38623,7 +38669,7 @@ restriction=compare(isflipped)~equalto~0,type(land[basic]|opponentBattlefield)~m otherrestriction=type(land[basic]|opponentBattlefield)~equalto~0 anyzone={0}:doubleside(Hagra Broodpit) autohand={0}:restriction{can play land,compare(isflipped)~equalto~1} name(Hagra Broodpit) name(Hagra Broodpit) flip(Hagra Broodpit) forcetype(land) -other={1}{B}{B} name(Cast for 1 less +other={1}{B}{B} name(Cast for 1 less) auto=name(Destroy a creature) name(Destroy a creature) destroy target(creature) text=This spell costs {1} less if an opponent controls no basic lands. -- Destroy target creature. // Hagra Broodpit mana={2}{B}{B} @@ -39036,6 +39082,16 @@ power=5 toughness=5 [/card] [card] +name=Hand of Enlightenment +abilities=first strike +text=First strike +color=white +type=Enchantment Creature +subtype=Human Monk +power=2 +toughness=2 +[/card] +[card] name=Hand of Vecna auto={0}:name(Pay life and equip) target(creature|myBattlefield) rehook && life:-phandcount controller asSorcery auto={2}:equip @@ -43143,6 +43199,16 @@ power=1 toughness=1 [/card] [card] +name=Imperial Moth +abilities=flying +text=Flying +color=white +type=Enchantment Creature +subtype=Insect +power=2 +toughness=4 +[/card] +[card] name=Imperial Oath auto=create(Samurai:creature Samurai:2/2:white:vigilance)*3 auto=_SCRY3_ @@ -58284,6 +58350,16 @@ power=3 toughness=3 [/card] [card] +name=Nameless Conqueror +abilities=haste,trample +text=Trample, haste +color=red +type=Enchantment Creature +subtype=Human Samurai +power=3 +toughness=3 +[/card] +[card] name=Narfi, Betrayer King auto=lord(other *[zombie;snow]|mybattlefield) 1/1 autograveyard={i}{i}{i}:moveto(mybattlefield) and!( tap(noevent) )! @@ -59311,6 +59387,17 @@ power=3 toughness=1 [/card] [card] +name=Nezumi Road Captain +abilities=menace +auto=lord(Vehicle|myBattlefield) menace +text=Menace -- Vehicles you control have menace. (They can't be blocked except by two or more creatures.) +color=black +type=Enchantment Creature +subtype=Rat Rogue +power=2 +toughness=2 +[/card] +[card] name=Niambi, Esteemed Speaker abilities=flash auto=may moveTo(myHand) and!(transforms((,newability[dynamicability])))! target(other creature|myBattlefield) @@ -61081,6 +61168,21 @@ mana={3} type=Legendary Artifact [/card] [card] +name=Okiba Reckoner Raid +backside=Nezumi Road Captain +restriction=compare(isflipped)~equalto~0 +anyzone={0}:doubleside(backside) +auto=counter(0/0,1,Lore) +auto=@each my firstmain:counter(0/0,1,Lore) +auto=life:-1 opponent && life:1 +auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.2.Lore}<=2) life:-1 opponent && life:1 +auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.3.Lore}) this(counter{0/0.3.Lore}) moveto(exile) and!( flip(backside) forcetype(Creature) )! asSorcery +text=(As this Saga enters and after your draw step, add a lore counter.) -- I, II - Each opponent loses 1 life and you gain 1 life. -- III - Exile this Saga, then return it to the battlefield transformed under your control. +mana={B} +type=Enchantment +subtype=Saga +[/card] +[card] name=Oko's Accomplices abilities=flying text=Flying @@ -69952,6 +70054,16 @@ power=2 toughness=2 [/card] [card] +name=Reflection of Kiki-Jiki +auto={1}{T}:clone with(treason,haste) target(creature[-legendary]|mybattlefield) +text={1}, {T}: Create a token that's a copy of another target nonlegendary creature you control, except it has haste. Sacrifice it at the beginning of the next end step. +color=red +type=Enchantment Creature +subtype=Goblin Shaman +power=2 +toughness=2 +[/card] +[card] name=Reflections of Littjara auto=chooseatype all(this) transforms((,newability[@movedTo(*[chosentype]|mystack):all(trigger[to]) clone])) forever chooseend text=As Reflections of Littjara enters the battlefield, choose a creature type. -- Whenever you cast a spell of the chosen type, copy that spell. (A copy of a permanent spell becomes a token.) @@ -77136,6 +77248,16 @@ power=4 toughness=4 [/card] [card] +name=Seshiro's Living Legacy +abilities=haste,vigilance +text=Vigilance, haste +color=green +type=Enchantment Creature +subtype=Snake Warrior +power=5 +toughness=5 +[/card] +[card] name=Setessan Champion auto=_CONSTELLATION_all(this) counter(1/1) && draw:1 controller text=Constellation - Whenever an enchantment enters the battlefield under your control, put a +1/+1 counter on Setessan Champion and draw a card. @@ -87415,6 +87537,22 @@ mana={1}{U} type=Instant [/card] [card] +name=Tales of Master Seshiro +backside=Seshiro's Living Legacy +restriction=compare(isflipped)~equalto~0 +anyzone={0}:doubleside(backside) +abilities=vigilance +auto=counter(0/0,1,Lore) +auto=@each my firstmain:counter(0/0,1,Lore) +auto=target(creature,vehicle|myBattlefield) transforms((,newability[counter(1/1)],vigilance)) ueot +auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.2.Lore}<=2) target(creature,vehicle|myBattlefield) transforms((,newability[counter(1/1)],vigilance)) ueot +auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.3.Lore}) this(counter{0/0.3.Lore}) moveto(exile) and!( flip(backside) forcetype(Creature) )! asSorcery +text=(As this Saga enters and after your draw step, add a lore counter.) -- I, II - Put a +1/+1 counter on target creature or Vehicle you control. It gains vigilance until end of turn. -- III - Exile this Saga, then return it to the battlefield transformed under your control. +mana={4}{G} +type=Enchantment +subtype=Saga +[/card] +[card] name=Tales of the Ancestors abilities=foretell autohand=_FORETELL_ @@ -89510,6 +89648,21 @@ type=Enchantment subtype=Saga [/card] [card] +name=The Modern Age +backside=Vector Glider +restriction=compare(isflipped)~equalto~0 +anyzone={0}:doubleside(backside) +auto=counter(0/0,1,Lore) +auto=@each my firstmain:counter(0/0,1,Lore) +auto=_LOOT_ +auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.2.Lore}<=2) _LOOT_ +auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.3.Lore}) this(counter{0/0.3.Lore}) moveto(exile) and!( flip(backside) forcetype(Creature) )! asSorcery +text=(As this Saga enters and after your draw step, add a lore counter.) -- I, II - Draw a card, then discard a card. -- III - Exile this Saga, then return it to the battlefield transformed under your control. +mana={1}{U} +type=Enchantment +subtype=Saga +[/card] +[card] name=The Monarch abilities=shroud,indestructible,doublefacedeath,nofizzle auto=becomesmonarch controller @@ -89629,6 +89782,21 @@ power=6 toughness=5 [/card] [card] +name=The Shattered States Era +backside=Nameless Conqueror +restriction=compare(isflipped)~equalto~0 +anyzone={0}:doubleside(backside) +auto=counter(0/0,1,Lore) +auto=@each my firstmain:counter(0/0,1,Lore) +auto=target(creature) moveto(mybattlefield) and!(transforms((,newability[untap],newability[haste],newability[phaseaction[endofturn sourceinplay] moveTo(previousbattlefield)])) ueot)! +auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.2.Lore}<=2) all(other creature|myBattlefield) 1/0 +auto=@counteradded(0/0,1,Lore) from(this):this(counter{0/0.3.Lore}) this(counter{0/0.3.Lore}) moveto(exile) and!( flip(backside) forcetype(Creature) )! asSorcery +text=(As this Saga enters and after your draw step, add a lore counter.) -- I - Gain control of target creature until end of turn. Untap it. It gains haste until end of turn. -- II - Creatures you control get +1/+0 until end of turn. -- III - Exile this Saga, then return it to the battlefield transformed under your control. +mana={4}{R} +type=Enchantment +subtype=Saga +[/card] +[card] name=The Stasis Coffin auto={2}{T}{E}:name(Gain protection) token(Coffin Protection,Emblem,0/0,indestructible,shroud,controllershroud,notrigger) and!( transforms((,newability[preventalldamage to(controller) from(*|opponentzones)],newability[preventalldamage to(controller) from(*|myzones)],newability[@each my untap:sacrifice])) forever )! text={2}, {T}, Exile The Stasis Coffin: You gain protection from everything until your next turn. @@ -95518,6 +95686,16 @@ type=Artifact subtype=Equipment [/card] [card] +name=Vector Glider +abilities=flying +text=Flying +color=blue +type=Enchantment Creature +subtype=Spirit +power=2 +toughness=3 +[/card] +[card] name=Vedalken Engineer auto=this(variable{type:artifact:myrestrictedcastingzone}>0) {T}:add{W}{W} auto=this(variable{type:artifact:myBattlefield}>0) {T}:add{W}{W} diff --git a/projects/mtg/bin/Res/sets/primitives/planeswalkers.txt b/projects/mtg/bin/Res/sets/primitives/planeswalkers.txt index 1d0f7aa60..21add120e 100644 --- a/projects/mtg/bin/Res/sets/primitives/planeswalkers.txt +++ b/projects/mtg/bin/Res/sets/primitives/planeswalkers.txt @@ -1870,7 +1870,7 @@ subtype=Liliana name=Liliana, the Last Hope auto=counter(0/0,3,Loyalty) auto={C(0/0,1,Loyalty)}:name(+1: Do not target any creature) donothing -auto={C(0/0,1,Loyalty)}:name(+1: Target creature gets -2/-1) target(creature) -2/-1 uynt +auto={C(0/0,1,Loyalty)}:name(+1: Target creature gets -2/-1) target(creature) transforms((,newability[-2/-1])) uynt auto={C(0/0,-2,Loyalty)}:name(-2: Mils two and return a creature) deplete:2 controller && ability$!may name(Move to hand) moveto(myhand) target(creature|mygraveyard)!$ controller auto={C(0/0,-7,Loyalty)}:name(-7: Emblem: "Each my end of turn create X 2/2 Zombie plus two") emblem transforms((,newability[phaseactionmulti[my endofturn] foreach(zombie|mybattlefield) _ZOMBIETOKEN_ && _ZOMBIETOKEN_*2])) forever dontremove text=+1: Up to one target creature gets -2/-1 until your next turn. -- -2: Put the top two cards of your library into your graveyard, then you may return a creature card from your graveyard to your hand. -- -7: You get an emblem with "At the beginning of your end step, put X 2/2 black Zombie creature tokens onto the battlefield, where X is two plus the number of Zombies you control."