diff --git a/forge-ai/src/main/java/forge/ai/ability/ChangeZoneAi.java b/forge-ai/src/main/java/forge/ai/ability/ChangeZoneAi.java index f9c97cf30f5..b99f6d8598f 100644 --- a/forge-ai/src/main/java/forge/ai/ability/ChangeZoneAi.java +++ b/forge-ai/src/main/java/forge/ai/ability/ChangeZoneAi.java @@ -1211,7 +1211,6 @@ public class ChangeZoneAi extends SpellAbilityAi { if (choice == null) { // Could not find a creature. if (ai.getLife() <= 5) { // Desperate? // Get something AI can cast soon. - System.out.println("5 Life or less, trying to find something castable."); CardLists.sortByCmcDesc(nonLands); for (Card potentialCard : nonLands) { if (ComputerUtilMana.hasEnoughManaSourcesToCast(potentialCard.getFirstSpellAbility(), ai)) { @@ -1221,7 +1220,6 @@ public class ChangeZoneAi extends SpellAbilityAi { } } else { // Get the best card in there. - System.out.println("No creature and lots of life, finding something good."); choice = ComputerUtilCard.getBestAI(nonLands); } } @@ -1487,7 +1485,6 @@ public class ChangeZoneAi extends SpellAbilityAi { if (choice == null) { // Could not find a creature. if (ai.getLife() <= 5) { // Desperate? // Get something AI can cast soon. - System.out.println("5 Life or less, trying to find something castable."); CardLists.sortByCmcDesc(nonLands); for (Card potentialCard : nonLands) { if (ComputerUtilMana.hasEnoughManaSourcesToCast(potentialCard.getFirstSpellAbility(), ai)) { @@ -1497,7 +1494,6 @@ public class ChangeZoneAi extends SpellAbilityAi { } } else { // Get the best card in there. - System.out.println("No creature and lots of life, finding something good."); choice = ComputerUtilCard.getBestAI(nonLands); } } @@ -1680,12 +1676,10 @@ public class ChangeZoneAi extends SpellAbilityAi { canCastSomething = canCastSomething || ComputerUtilMana.hasEnoughManaSourcesToCast(cardInHand.getFirstSpellAbility(), decider); } if (!canCastSomething) { - System.out.println("Pulling a land as there are none in hand, less than 4 on the board, and nothing in hand is castable."); c = basicManaFixing(decider, fetchList); } } if (c == null) { - System.out.println("Don't need a land or none available; trying for a creature."); fetchList = CardLists.getNotType(fetchList, "Land"); // Prefer to pull a creature, generally more useful for AI. c = chooseCreature(decider, CardLists.filter(fetchList, CardPredicates.Presets.CREATURES)); @@ -1693,7 +1687,6 @@ public class ChangeZoneAi extends SpellAbilityAi { if (c == null) { // Could not find a creature. if (decider.getLife() <= 5) { // Desperate? // Get something AI can cast soon. - System.out.println("5 Life or less, trying to find something castable."); CardLists.sortByCmcDesc(fetchList); for (Card potentialCard : fetchList) { if (ComputerUtilMana.hasEnoughManaSourcesToCast(potentialCard.getFirstSpellAbility(), decider)) { @@ -1703,7 +1696,6 @@ public class ChangeZoneAi extends SpellAbilityAi { } } else { // Get the best card in there. - System.out.println("No creature and lots of life, finding something good."); c = ComputerUtilCard.getBestAI(fetchList); } } diff --git a/forge-game/src/main/java/forge/game/zone/PlayerZone.java b/forge-game/src/main/java/forge/game/zone/PlayerZone.java index 808576e8fcc..160042f0bed 100644 --- a/forge-game/src/main/java/forge/game/zone/PlayerZone.java +++ b/forge-game/src/main/java/forge/game/zone/PlayerZone.java @@ -61,7 +61,8 @@ public class PlayerZone extends Zone { } boolean graveyardCastable = c.hasKeyword(Keyword.FLASHBACK) || - c.hasKeyword(Keyword.RETRACE) || c.hasKeyword(Keyword.JUMP_START) || c.hasKeyword(Keyword.ESCAPE); + c.hasKeyword(Keyword.RETRACE) || c.hasKeyword(Keyword.JUMP_START) || c.hasKeyword(Keyword.ESCAPE) || + c.hasKeyword(Keyword.DISTURB); boolean exileCastable = (c.isAdventureCard() || c.isForetold()) && c.isInZone(ZoneType.Exile); for (final SpellAbility sa : c.getSpellAbilities()) { final ZoneType restrictZone = sa.getRestrictions().getZone(); diff --git a/forge-gui/release-files/CONTRIBUTORS.txt b/forge-gui/release-files/CONTRIBUTORS.txt index 6267fb2e4e8..052b0783e1f 100644 --- a/forge-gui/release-files/CONTRIBUTORS.txt +++ b/forge-gui/release-files/CONTRIBUTORS.txt @@ -22,7 +22,7 @@ leriomaggio Luke Marek14 Marvel -mcrawford620 +mcrawford medusa Meerkov Monkey Gland Sauce diff --git a/forge-gui/res/cardsfolder/o/oathsworn_vampire.txt b/forge-gui/res/cardsfolder/o/oathsworn_vampire.txt index dd8be58653f..088a14801c9 100644 --- a/forge-gui/res/cardsfolder/o/oathsworn_vampire.txt +++ b/forge-gui/res/cardsfolder/o/oathsworn_vampire.txt @@ -3,9 +3,9 @@ ManaCost:1 B Types:Creature Vampire Knight PT:2/2 K:CARDNAME enters the battlefield tapped. -S:Mode$ Continuous | Affected$ Card.Self | EffectZone$ Graveyard | MayPlay$ True | CheckSVar$ X | SVarCompare$ GE1 | Description$ You may cast CARDNAME from your graveyard if you gained life this turn. +S:Mode$ Continuous | Affected$ Card.Self | AffectedZone$ Graveyard | EffectZone$ Graveyard | MayPlay$ True | CheckSVar$ X | SVarCompare$ GE1 | Description$ You may cast CARDNAME from your graveyard if you gained life this turn. SVar:X:Count$LifeYouGainedThisTurn SVar:SacMe:3 SVar:DiscardMe:3 SVar:Picture:http://www.wizards.com/global/images/magic/general/oathsworn_vampire.jpg -Oracle:Oathsworn Vampire enters the battlefield tapped.\nYou may cast Oathsworn Vampire from your graveyard if you gained life this turn. \ No newline at end of file +Oracle:Oathsworn Vampire enters the battlefield tapped.\nYou may cast Oathsworn Vampire from your graveyard if you gained life this turn. diff --git a/forge-gui/res/cardsfolder/upcoming/ancestral_anger.txt b/forge-gui/res/cardsfolder/upcoming/ancestral_anger.txt new file mode 100644 index 00000000000..70795457d36 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/ancestral_anger.txt @@ -0,0 +1,7 @@ +Name:Ancestral Anger +ManaCost:R +Types:Sorcery +A:SP$ Pump | Cost$ R | NumCards$ 1 | ValidTgts$ Creature | KW$ Trample | NumAtt$ +X | SpellDescription$ Until end of turn, target creature gains trample and gets +X/+0, where X is 1 plus the number of cards named Ancestral Anger in your graveyard. +SVar:X:Count$ValidGraveyard Card.YouOwn+namedAncestral Anger/Plus.1 +DeckHints:Name$Ancestral Anger +Oracle:Until end of turn, target creature gains trample and gets +X/+0, where X is 1 plus the number of cards named Ancestral Anger in your graveyard. diff --git a/forge-gui/res/cardsfolder/upcoming/blood_petal_celebrant.txt b/forge-gui/res/cardsfolder/upcoming/blood_petal_celebrant.txt new file mode 100644 index 00000000000..6bca4e41a14 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/blood_petal_celebrant.txt @@ -0,0 +1,9 @@ +Name:Blood Petal Celebrant +ManaCost:1 R +Types:Creature Vampire +PT:2/1 +S:Mode$ Continuous | Affected$ Card.Self+attacking | AddKeyword$ First strike | Description$ CARDNAME has first strike as long as it's attacking. +T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When CARDNAME dies, create a Blood token. (It's an artifact with "{1}, {T}, Discard a card, Sacrifice this artifact: Draw a card.") +SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_a_blood_draw | TokenOwner$ You +DeckHas:Ability$Token & Ability$Sacrifice & Type$Blood +Oracle:Blood Petal Celebrant has first strike as long as it's attacking.\nWhen Blood Petal Celebrant dies, create a Blood token. (It's an artifact with "{1}, {T}, Discard a card, Sacrifice this artifact: Draw a card.") diff --git a/forge-gui/res/cardsfolder/upcoming/bloody_betrayal.txt b/forge-gui/res/cardsfolder/upcoming/bloody_betrayal.txt new file mode 100755 index 00000000000..18163b3da11 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/bloody_betrayal.txt @@ -0,0 +1,7 @@ +Name:Bloody Betrayal +ManaCost:2 R +Types:Sorcery +A:SP$ GainControl | ValidTgts$ Creature | TgtPrompt$ Select target creature | Untap$ True | AddKWs$ Haste | LoseControl$ EOT | SubAbility$ DBToken | SpellDescription$ Gain control of target creature until end of turn. Untap that creature. It gains haste until end of turn. +SVar:DBToken:DB$ Token | TokenScript$ c_a_blood_draw | SpellDescription$ Create a Blood token. (It's an artifact with "{1}, {T}, Discard a card, Sacrifice this artifact: Draw a card.") +DeckHas:Ability$Token & Ability$Sacrifice & Type$Blood +Oracle:Gain control of target creature until end of turn. Untap that creature. It gains haste until end of turn. Create a Blood token. (It's an artifact with "{1}, {T}, Discard a card, Sacrifice this artifact: Draw a card.") diff --git a/forge-gui/res/cardsfolder/upcoming/desperate_farmer_depraved_harvester.txt b/forge-gui/res/cardsfolder/upcoming/desperate_farmer_depraved_harvester.txt new file mode 100644 index 00000000000..b34f6acb496 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/desperate_farmer_depraved_harvester.txt @@ -0,0 +1,21 @@ +Name:Desperate Farmer +ManaCost:2 B +Types:Creature Human Peasant +PT:2/2 +K:Lifelink +T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Creature.Other+YouCtrl | TriggerZones$ Battlefield | Execute$ TrigTransform | TriggerDescription$ When another creature you control dies, transform CARDNAME. +SVar:TrigTransform:DB$ SetState | Defined$ Self | Mode$ Transform +AlternateMode:DoubleFaced +DeckHas:Ability$LifeGain +Oracle:Lifelink\nWhen another creature you control dies, transform Desperate Farmer. + +ALTERNATE + +Name:Depraved Harvester +ManaCost:no cost +Types:Creature Human Knight +Colors:black +PT:4/3 +K:Lifelink +DeckHas:Ability$LifeGain +Oracle:Lifelink diff --git a/forge-gui/res/cardsfolder/upcoming/end_the_festivities.txt b/forge-gui/res/cardsfolder/upcoming/end_the_festivities.txt new file mode 100755 index 00000000000..60bdefbcd32 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/end_the_festivities.txt @@ -0,0 +1,5 @@ +Name:End the Festivities +ManaCost:R +Types:Sorcery +A:SP$ DamageAll | NumDmg$ 1 | ValidPlayers$ Player.Opponent | ValidCards$ Creature.OppCtrl,Planeswalker.OppCtrl | ValidDescription$ each opponent and each creature and planeswalker they control. | SpellDescription$ CARDNAME deals 1 damage to each opponent and each creature and planeswalker they control. +Oracle:End the Festivities deals 1 damage to each opponent and each creature and planeswalker they control. diff --git a/forge-gui/res/cardsfolder/upcoming/falkenrath_celebrants.txt b/forge-gui/res/cardsfolder/upcoming/falkenrath_celebrants.txt new file mode 100755 index 00000000000..0e2db23295a --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/falkenrath_celebrants.txt @@ -0,0 +1,9 @@ +Name:Falkenrath Celebrants +ManaCost:4 R +Types:Creature Vampire +PT:4/4 +K:Menace +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When CARDNAME enters the battlefield, create two Blood tokens. (They're artifacts with "{1}, {T}, Discard a card, Sacrifice this artifact: Draw a card.") +SVar:TrigToken:DB$ Token | TokenAmount$ 2 | TokenScript$ c_a_blood_draw +DeckHas:Ability$Token & Ability$Sacrifice & Type$ Blood +Oracle:Menace (This creature can't be blocked except by two or more creatures.)\nWhen Falkenrath Celebrants enters the battlefield, create two Blood tokens. (They're artifacts with "{1}, {T}, Discard a card, Sacrifice this artifact: Draw a card.") diff --git a/forge-gui/res/cardsfolder/upcoming/gutter_skulker_gutter_shortcut.txt b/forge-gui/res/cardsfolder/upcoming/gutter_skulker_gutter_shortcut.txt new file mode 100644 index 00000000000..ffbbc6b8e5d --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/gutter_skulker_gutter_shortcut.txt @@ -0,0 +1,22 @@ +Name:Gutter Skulker +ManaCost:3 U +Types:Creature Spirit +PT:3/3 +K:Disturb:3 U +S:Mode$ Continuous | Affected$ Card.Self+attacking | AddHiddenKeyword$ Unblockable | IsPresent$ Card.Other+attacking | PresentCompare$ EQ0 | Description$ CARDNAME can't be blocked as long as it's attacking alone. +AlternateMode:DoubleFaced +DeckHas:Ability$Graveyard +Oracle:Gutter Skulker can't be blocked as long as it's attacking alone.\nDisturb {3}{U} (You may cast this card from your graveyard transformed for its disturb cost.) + +ALTERNATE + +Name:Gutter Shortcut +ManaCost:no cost +Colors:blue +Types:Enchantment Aura +K:Enchant creature +A:SP$ Attach | ValidTgts$ Creature | TgtPrompt$ Select target creature | AILogic$ Pump +S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddHiddenKeyword$ Unblockable | IsPresent$ Card.Other+attacking | PresentCompare$ EQ0 | Description$ Enchanted creature can't be blocked as long as it's attacking alone. +R:Event$ Moved | ValidCard$ Card.Self | Destination$ Graveyard | ReplaceWith$ Exile | Description$ If CARDNAME would be put into a graveyard from anywhere, exile it instead. +SVar:Exile:DB$ ChangeZone | Hidden$ True | Origin$ All | Destination$ Exile | Defined$ ReplacedCard +Oracle:Enchant creature\nEnchanted creature can't be blocked as long as it's attacking alone.\nIf Gutter Shortcut would be put into a graveyard from anywhere, exile it instead. diff --git a/forge-gui/res/cardsfolder/upcoming/hookhand_mariner_riphook_raider.txt b/forge-gui/res/cardsfolder/upcoming/hookhand_mariner_riphook_raider.txt new file mode 100644 index 00000000000..60720639d8e --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/hookhand_mariner_riphook_raider.txt @@ -0,0 +1,18 @@ +Name:Hookhand Mariner +ManaCost:3 G +Types:Creature Human Werewolf +PT:4/4 +K:Daybound +AlternateMode:DoubleFaced +Oracle:Daybound (If a player casts no spells during their own turn, it becomes night next turn.) + +ALTERNATE + +Name:Riphook Raider +ManaCost:no cost +Colors:green +Types:Creature Werewolf +PT:6/4 +K:Nightbound +S:Mode$ CantBlockBy | ValidAttacker$ Creature.Self | ValidBlocker$ Creature.powerLE2 | Description$ CARDNAME can't be blocked by creatures with power 2 or less. +Oracle:Riphook Raider can't be blocked by creatures with power 2 or less.\nNightbound (If a player casts at least two spells during their own turn, it becomes day next turn.) diff --git a/forge-gui/res/cardsfolder/upcoming/jacob_hauken_inspector_haukens_insight.txt b/forge-gui/res/cardsfolder/upcoming/jacob_hauken_inspector_haukens_insight.txt index 0867444913d..782ff50649c 100644 --- a/forge-gui/res/cardsfolder/upcoming/jacob_hauken_inspector_haukens_insight.txt +++ b/forge-gui/res/cardsfolder/upcoming/jacob_hauken_inspector_haukens_insight.txt @@ -22,7 +22,7 @@ Colors:blue Types:Legendary Enchantment T:Mode$ Phase | Phase$ Upkeep | TriggerZones$ Battlefield | ValidPlayer$ You | Execute$ TrigExile | TriggerDescription$ 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. SVar:TrigExile:DB$ Dig | Defined$ You | DigNum$ 1 | ChangeNum$ All | DestinationZone$ Exile | ExileFaceDown$ True | Imprint$ True | SubAbility$ DBEffect -SVar:DBEffect:DB$ Effect | RememberObjects$ Imprinted | StaticAbilities$ STLook | Duration$ Permanent | ForgetOnMoved$ Exile | SubAbility$ DBTransform +SVar:DBEffect:DB$ Effect | RememberObjects$ Imprinted | StaticAbilities$ STLook | Duration$ Permanent | ForgetOnMoved$ Exile SVar:STLook:Mode$ Continuous | MayLookAt$ You | EffectZone$ Command | Affected$ Card.IsRemembered | AffectedZone$ Exile | Description$ You may look at this card for as long as it remains exiled. S:Mode$ Continuous | EffectZone$ Battlefield | Affected$ Card.IsImprinted+ExiledWithSource | AffectedZone$ Exile | MayPlay$ True | MayPlayLimit$ 1 | MayPlayWithoutManaCost$ True | Description$ Once during each of your turns, you may play a land or cast a spell from among the cards exiled with this permanent without paying its mana cost. T:Mode$ ChangesZone | Origin$ Exile | Destination$ Any | Static$ True | ValidCard$ Card.IsImprinted | Execute$ DBForget diff --git a/forge-gui/res/cardsfolder/upcoming/lantern_of_the_lost.txt b/forge-gui/res/cardsfolder/upcoming/lantern_of_the_lost.txt new file mode 100755 index 00000000000..816b94da793 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/lantern_of_the_lost.txt @@ -0,0 +1,8 @@ +Name:Lantern of the Lost +ManaCost:1 +Types:Artifact +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigChangeZone | TriggerDescription$ When CARDNAME enters the battlefield, exile target card from a graveyard. +SVar:TrigChangeZone:DB$ ChangeZone | Origin$ Graveyard | Destination$ Exile | TgtPrompt$ Select target card in a graveyard | ValidTgts$ Card +A:AB$ ChangeZoneAll | Cost$ 1 T Exile<1/CARDNAME> | Origin$ Graveyard | Destination$ Exile | ChangeType$ Card | AILogic$ ExileGraveyards | SubAbility$ DBDraw | SpellDescription$ Exile all cards from all graveyards, then draw a card. +SVar:DBDraw:DB$ Draw | NumCards$ 1 | StackDescription$ None +Oracle:When Lantern of the Lost enters the battlefield, exile target card from a graveyard.\n{1}, {T}, Exile Lantern of the Lost: Exile all cards from all graveyards, then draw a card. diff --git a/forge-gui/res/cardsfolder/upcoming/lightning_wolf.txt b/forge-gui/res/cardsfolder/upcoming/lightning_wolf.txt new file mode 100644 index 00000000000..4554757c17a --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/lightning_wolf.txt @@ -0,0 +1,6 @@ +Name:Lightning Wolf +ManaCost:3 R +Types:Creature Wolf +PT:4/3 +A:AB$ Pump | Cost$ 1 R | Defined$ Self | KW$ First Strike | SorcerySpeed$ True | SpellDescription$ CARDNAME gains first strike until end of turn. Activate only as a sorcery. +Oracle:{1}{R}: Lightning Wolf gains first strike until end of turn. Activate only as a sorcery. diff --git a/forge-gui/res/cardsfolder/upcoming/natures_embrace.txt b/forge-gui/res/cardsfolder/upcoming/natures_embrace.txt new file mode 100644 index 00000000000..0a47139f97a --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/natures_embrace.txt @@ -0,0 +1,9 @@ +Name:Nature's Embrace +ManaCost:2 G +Types:Enchantment Aura +K:Enchant creature or land +A:SP$ Attach | Cost$ 2 G | ValidTgts$ Creature,Land | AILogic$ Pump +S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddPower$ 2 | AddToughness$ 2 | Description$ As long as enchanted permanent is a creature, it gets +2/+2. +S:Mode$ Continuous | Affected$ Land.EnchantedBy | AddAbility$ DBMana | Description$ As long as enchanted permanent is a land, it has "{T}: Add two mana of any one color." +SVar:DBMana:AB$ Mana | Cost$ T | Produced$ Any | Amount$ 2 | SpellDescription$ Add two mana of any one color. +Oracle:Enchant creature or land\nAs long as enchanted permanent is a creature, it gets +2/+2.\nAs long as enchanted permanent is a land, it has "{T}: Add two mana of any one color." diff --git a/forge-gui/res/cardsfolder/upcoming/panicked_bystander_cackling_culprit.txt b/forge-gui/res/cardsfolder/upcoming/panicked_bystander_cackling_culprit.txt new file mode 100644 index 00000000000..9ce02c57aca --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/panicked_bystander_cackling_culprit.txt @@ -0,0 +1,25 @@ +Name:Panicked Bystander +ManaCost:1 W +Types:Creature Human Peasant +PT:2/2 +T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self,Creature.Other+YouCtrl | TriggerZones$ Battlefield | Execute$ TrigGainLife1 | TriggerDescription$ Whenever CARDNAME or another creature you control dies, you gain 1 life. +SVar:TrigGainLife1:DB$ GainLife | Defined$ You | LifeAmount$ 1 +T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | CheckSVar$ YouLifeGained | SVarCompare$ GE3 | Execute$ TrigTransform | TriggerDescription$ At the beginning of your end step, if you gained 3 or more life this turn, transform CARDNAME. +SVar:TrigTransform:DB$ SetState | Defined$ Self | Mode$ Transform +SVar:YouLifeGained:Count$LifeYouGainedThisTurn +DeckHas:Ability$LifeGain +AlternateMode:DoubleFaced +Oracle:Whenever Panicked Bystander or another creature you control dies, you gain 1 life.\nAt the beginning of your end step, if you gained 3 or more life this turn, transform Panicked Bystander. + +ALTERNATE + +Name:Cackling Culprit +ManaCost:no cost +Colors:black +Types:Creature Human Rogue +PT:3/5 +T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self,Creature.Other+YouCtrl | TriggerZones$ Battlefield | Execute$ TrigGainLife2 | TriggerDescription$ Whenever CARDNAME or another creature you control dies, you gain 1 life. +SVar:TrigGainLife2:DB$ GainLife | Defined$ You | LifeAmount$ 1 +A:AB$ Pump | Cost$ 1 B | Defined$ Self | KW$ Deathtouch | SpellDescription$ CARDNAME gains deathtouch until end of turn. +DeckHas:Ability$LifeGain +Oracle:Whenever Cackling Culprit or another creature you control dies, you gain 1 life.\n{1}{B}: Cackling Culprit gains deathtouch until end of turn. diff --git a/forge-gui/res/cardsfolder/upcoming/pointed_discussion.txt b/forge-gui/res/cardsfolder/upcoming/pointed_discussion.txt new file mode 100644 index 00000000000..c9a10354bea --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/pointed_discussion.txt @@ -0,0 +1,8 @@ +Name:Pointed Discussion +ManaCost:2 B +Types:Sorcery +A:SP$ Draw | Cost$ 2 B | NumCards$ 2 | SubAbility$ DBLoseLife | StackDescription$ SpellDescription | SpellDescription$ You draw two cards, lose 2 life +SVar:DBLoseLife:DB$ LoseLife | LifeAmount$ 2 | SubAbility$ DBToken | StackDescription$ None +SVar:DBToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_a_blood_draw | TokenOwner$ You | SpellDescription$ then create a Blood token. (It's an artifact with "{1}, {T}, Discard a card, Sacrifice this artifact: Draw a card.") +DeckHas:Ability$Token & Ability$Sacrifice & Type$Blood +Oracle:You draw two cards, lose 2 life, then create a Blood token. (It's an artifact with "{1}, {T}, Discard a card, Sacrifice this artifact: Draw a card.") diff --git a/forge-gui/res/cardsfolder/upcoming/pyre_spawn.txt b/forge-gui/res/cardsfolder/upcoming/pyre_spawn.txt new file mode 100644 index 00000000000..2d2618dc487 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/pyre_spawn.txt @@ -0,0 +1,7 @@ +Name:Pyre Spawn +ManaCost:4 R R +Types:Creature Elemental +PT:6/4 +T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigDealDamage | TriggerController$ TriggeredCardController | TriggerDescription$ When CARDNAME dies, it deals 3 damage to any target. +SVar:TrigDealDamage:DB$ DealDamage | ValidTgts$ Creature,Player,Planeswalker | TgtPrompt$ Select any target | NumDmg$ 3 +Oracle:When Pyre Spawn dies, it deals 3 damage to any target. diff --git a/forge-gui/res/cardsfolder/upcoming/ragged_recluse_odious_witch.txt b/forge-gui/res/cardsfolder/upcoming/ragged_recluse_odious_witch.txt new file mode 100644 index 00000000000..4375d60a500 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/ragged_recluse_odious_witch.txt @@ -0,0 +1,24 @@ +Name:Ragged Recluse +ManaCost:1 B +Types:Creature Human Peasant +PT:2/1 +T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | CheckSVar$ CardsDiscarded | SVarCompare$ GE1 | Execute$ TrigTransform | TriggerDescription$ At the beginning of your end step, if you discarded a card this turn, transform CARDNAME. +SVar:TrigTransform:DB$ SetState | Defined$ Self | Mode$ Transform +SVar:CardsDiscarded:PlayerCountPropertyYou$CardsDiscardedThisTurn +DeckHints:Ability$Discard +AlternateMode:DoubleFaced +Oracle:At the beginning of your end step, if you discarded a card this turn, transform Ragged Recluse. + +ALTERNATE + +Name:Odious Witch +ManaCost:no cost +Colors:black +Types:Creature Human Warlock +PT:3/3 +T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigLoseLife | TriggerDescription$ Whenever CARDNAME attacks, defending player loses 1 life and you gain 1 life. +SVar:TrigLoseLife:DB$ LoseLife | Defined$ TriggeredDefendingPlayer | LifeAmount$ 1 | SubAbility$ DBGainLife +SVar:DBGainLife:DB$ GainLife | Defined$ You | LifeAmount$ 1 +SVar:HasAttackEffect:TRUE +DeckHas:Ability$LifeGain +Oracle:Whenever Odious Witch attacks, defending player loses 1 life and you gain 1 life. diff --git a/forge-gui/res/cardsfolder/upcoming/soulcipher_board_cipherbound_spirit.txt b/forge-gui/res/cardsfolder/upcoming/soulcipher_board_cipherbound_spirit.txt new file mode 100644 index 00000000000..4c178e0f118 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/soulcipher_board_cipherbound_spirit.txt @@ -0,0 +1,25 @@ +Name:Soulcipher Board +ManaCost:1 U +Types:Artifact +K:etbCounter:OMEN:3 +A:AB$ Dig | Cost$ 1 U T | DigNum$ 2 | DestinationZone$ Graveyard | LibraryPosition2$ 0 | StackDescription$ {p:You} looks at the top two cards of their library, and puts one of them into their graveyard. | SpellDescription$ Look at the top two cards of your library. Put one of them into your graveyard. +T:Mode$ ChangesZone | Origin$ Any | Destination$ Graveyard | ValidCard$ Card.Creature+nonToken+YouOwn | TriggerZones$ Battlefield | Execute$ TrigRemoveCounter | TriggerDescription$ Whenever a creature card is put into your graveyard from anywhere, remove an omen counter from CARDNAME. Then if it has no omen counters on it, transform it. +SVar:TrigRemoveCounter:DB$ RemoveCounter | Defined$ Self | CounterType$ OMEN | CounterNum$ 1 | SubAbility$ DBTransform +SVar:DBTransform:DB$ SetState | ConditionPresent$ Card.Self+counters_EQ0_OMEN | Defined$ Self | Mode$ Transform +AlternateMode:DoubleFaced +DeckHas:Ability$Counters & Ability$Graveyard +Oracle:Soulcipher Board enters the battlefield with three omen counters on it.\n{1}{U}, {T}: Look at the top two cards of your library. Put one of them into your graveyard.\nWhenever a creature card is put into your graveyard from anywhere, remove an omen counter from Soulcipher Board. Then if it has no omen counters on it, transform it. + +ALTERNATE + +Name:Cipherbound Spirit +ManaCost:no cost +Colors:blue +Types:Creature Spirit +PT:3/2 +K:Flying +S:Mode$ CantBlockBy | ValidAttacker$ Creature.withoutFlying | ValidBlocker$ Creature.Self | Description$ CARDNAME can block only creatures with flying. +A:AB$ Draw | Cost$ 3 U | NumCards$ 2 | SubAbility$ DBDiscard | StackDescription$ {p:You} draws two cards, | SpellDescription$ Draw two cards, then discard a card. +SVar:DBDiscard:DB$ Discard | Defined$ You | NumCards$ 1 | Mode$ TgtChoose | StackDescription$ then discards a card. +DeckHas:Ability$Discard +Oracle:Flying\nCipherbound Spirit can block only creatures with flying.\n{3}{U}: Draw two cards, then discard a card. diff --git a/forge-gui/res/cardsfolder/upcoming/undying_malice.txt b/forge-gui/res/cardsfolder/upcoming/undying_malice.txt new file mode 100644 index 00000000000..5b8471a6d94 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/undying_malice.txt @@ -0,0 +1,8 @@ +Name:Undying Malice +ManaCost:B +Types:Instant +A:SP$ Animate | ValidTgts$ Creature | TgtPrompt$ Select target creature | Triggers$ DiesTrigger | StackDescription$ Until end of turn, {c:Targeted} gains "When this creature dies, return it to the battlefield tapped under its owner's control with a +1/+1 counter on it." | SpellDescription$ Until end of turn, target creature gains "When this creature dies, return it to the battlefield tapped under its owner's control with a +1/+1 counter on it." +SVar:DiesTrigger:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigChangeZone | TriggerDescription$ When this creature dies, return it to the battlefield tapped under its owner's control with a +1/+1 counter on it. +SVar:TrigChangeZone:DB$ ChangeZone | Origin$ Graveyard | Destination$ Battlefield | Tapped$ True | Defined$ TriggeredNewCardLKICopy | WithCounters$ P1P1_1 +DeckHas:Ability$Counters +Oracle:Until end of turn, target creature gains "When this creature dies, return it to the battlefield tapped under its owner's control with a +1/+1 counter on it." diff --git a/forge-gui/res/cardsfolder/upcoming/vampires_kiss.txt b/forge-gui/res/cardsfolder/upcoming/vampires_kiss.txt new file mode 100644 index 00000000000..55b0daeb036 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/vampires_kiss.txt @@ -0,0 +1,8 @@ +Name:Vampire's Kiss +ManaCost:1 B +Types:Sorcery +A:SP$ LoseLife | Cost$ 1 B | ValidTgts$ Player | TgtPrompt$ Select target player | LifeAmount$ 2 | SubAbility$ DBGainLife | StackDescription$ {p:Targeted} loses 2 life | SpellDescription$ Target player loses 2 life and you gain 2 life. +SVar:DBGainLife:DB$ GainLife | Defined$ You | LifeAmount$ 2 | StackDescription$ and {p:You} gains 2 life. | SubAbility$ DBBlood +SVar:DBBlood:DB$ Token | TokenAmount$ 2 | TokenScript$ c_a_blood_draw | TokenOwner$ You | SpellDescription$ Create two Blood tokens. (They're artifacts with "{1}, {T}, Discard a card, Sacrifice this artifact: Draw a card.") +DeckHas:Ability$LifeGain & Ability$Token & Ability$Sacrifice & Type$Blood +Oracle:Target player loses 2 life and you gain 2 life. Create two Blood tokens. (They're artifacts with "{1}, {T}, Discard a card, Sacrifice this artifact: Draw a card.") diff --git a/forge-gui/res/cardsfolder/upcoming/voldaren_epicure.txt b/forge-gui/res/cardsfolder/upcoming/voldaren_epicure.txt new file mode 100644 index 00000000000..303797bae4f --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/voldaren_epicure.txt @@ -0,0 +1,9 @@ +Name:Voldaren Epicure +ManaCost:R +Types:Creature Vampire +PT:1/1 +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDmg1 | TriggerDescription$ When CARDNAME enters the battlefield, it deals 1 damage to each opponent. Create a Blood token. (It's an artifact with "{1}, {T}, Discard a card, Sacrifice this artifact: Draw a card.") +SVar:TrigDmg1:DB$ DealDamage | NumDmg$ 1 | Defined$ Player.Opponent | SubAbility$ DBBlood +SVar:DBBlood:DB$ Token | TokenAmount$ 1 | TokenScript$ c_a_blood_draw | TokenOwner$ You +DeckHas:Ability$Token & Ability$Sacrifice & Type$Blood +Oracle:When Voldaren Epicure enters the battlefield, it deals 1 damage to each opponent. Create a Blood token. (It's an artifact with "{1}, {T}, Discard a card, Sacrifice this artifact: Draw a card.") diff --git a/forge-gui/res/lists/net-decks-archive-block.txt b/forge-gui/res/lists/net-decks-archive-block.txt index a46736d466f..ebdd2e966dd 100644 --- a/forge-gui/res/lists/net-decks-archive-block.txt +++ b/forge-gui/res/lists/net-decks-archive-block.txt @@ -978,3 +978,4 @@ 2021-08-30 Sealed Mh2 Block Mocs (8 decks) | https://downloads.cardforge.org/decks/archive/block/2021-08-30-sealed-mh2-block-mocs.zip 2021-09-26 Sealed Mid Block Super Qualifier (8 decks) | https://downloads.cardforge.org/decks/archive/block/2021-09-26-sealed-mid-block-super-qualifier.zip 2021-10-17 Sealed Mid Block Super Qualifier (8 decks) | https://downloads.cardforge.org/decks/archive/block/2021-10-17-sealed-mid-block-super-qualifier.zip +2021-11-01 Sealed Mid Block Super Qualifier (8 decks) | https://downloads.cardforge.org/decks/archive/block/2021-11-01-sealed-mid-block-super-qualifier.zip diff --git a/forge-gui/res/lists/net-decks-archive-legacy.txt b/forge-gui/res/lists/net-decks-archive-legacy.txt index bceafd34daa..417d7d765ab 100644 --- a/forge-gui/res/lists/net-decks-archive-legacy.txt +++ b/forge-gui/res/lists/net-decks-archive-legacy.txt @@ -2138,3 +2138,13 @@ 2021-10-24 Legacy Premier (16 decks) | https://downloads.cardforge.org/decks/archive/legacy/2021-10-24-legacy-premier.zip 2021-10-25 Legacy Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2021-10-25-legacy-challenge.zip 2021-10-26 Legacy Preliminary (3 decks) | https://downloads.cardforge.org/decks/archive/legacy/2021-10-26-legacy-preliminary.zip +2021-10-30 Legacy League (46 decks) | https://downloads.cardforge.org/decks/archive/legacy/2021-10-30-legacy-league.zip +2021-10-30 Legacy Preliminary (5 decks) | https://downloads.cardforge.org/decks/archive/legacy/2021-10-30-legacy-preliminary.zip +2021-11-01 Legacy Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2021-11-01-legacy-challenge.zip +2021-11-02 Legacy Preliminary (5 decks) | https://downloads.cardforge.org/decks/archive/legacy/2021-11-02-legacy-preliminary.zip +2021-11-03 Legacy Preliminary (4 decks) | https://downloads.cardforge.org/decks/archive/legacy/2021-11-03-legacy-preliminary.zip +2021-11-04 Legacy Preliminary (4 decks) | https://downloads.cardforge.org/decks/archive/legacy/2021-11-04-legacy-preliminary.zip +2021-11-06 Legacy League (44 decks) | https://downloads.cardforge.org/decks/archive/legacy/2021-11-06-legacy-league.zip +2021-11-06 Legacy Preliminary (3 decks) | https://downloads.cardforge.org/decks/archive/legacy/2021-11-06-legacy-preliminary.zip +2021-11-08 Legacy Showcase Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/legacy/2021-11-08-legacy-showcase-challenge.zip +2021-11-10 Legacy Preliminary (5 decks) | https://downloads.cardforge.org/decks/archive/legacy/2021-11-10-legacy-preliminary.zip diff --git a/forge-gui/res/lists/net-decks-archive-modern.txt b/forge-gui/res/lists/net-decks-archive-modern.txt index 79266b9f498..ae7bc4a5515 100644 --- a/forge-gui/res/lists/net-decks-archive-modern.txt +++ b/forge-gui/res/lists/net-decks-archive-modern.txt @@ -2812,3 +2812,22 @@ 2021-10-25 Modern Premier (16 decks) | https://downloads.cardforge.org/decks/archive/modern/2021-10-25-modern-premier.zip 2021-10-26 Modern League (65 decks) | https://downloads.cardforge.org/decks/archive/modern/2021-10-26-modern-league.zip 2021-10-26 Modern Preliminary (7 decks) | https://downloads.cardforge.org/decks/archive/modern/2021-10-26-modern-preliminary.zip +2021-10-27 Modern Preliminary (4 decks) | https://downloads.cardforge.org/decks/archive/modern/2021-10-27-modern-preliminary.zip +2021-10-28 Modern Preliminary (5 decks) | https://downloads.cardforge.org/decks/archive/modern/2021-10-28-modern-preliminary.zip +2021-10-29 Modern League (56 decks) | https://downloads.cardforge.org/decks/archive/modern/2021-10-29-modern-league.zip +2021-10-29 Modern Preliminary (4 decks) | https://downloads.cardforge.org/decks/archive/modern/2021-10-29-modern-preliminary.zip +2021-10-30 Modern Preliminary (4 decks) | https://downloads.cardforge.org/decks/archive/modern/2021-10-30-modern-preliminary.zip +2021-10-31 Modern Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2021-10-31-modern-challenge.zip +2021-11-01 Modern Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2021-11-01-modern-challenge.zip +2021-11-02 Modern League (67 decks) | https://downloads.cardforge.org/decks/archive/modern/2021-11-02-modern-league.zip +2021-11-02 Modern Preliminary (8 decks) | https://downloads.cardforge.org/decks/archive/modern/2021-11-02-modern-preliminary.zip +2021-11-03 Modern Preliminary (6 decks) | https://downloads.cardforge.org/decks/archive/modern/2021-11-03-modern-preliminary.zip +2021-11-04 Modern Preliminary (11 decks) | https://downloads.cardforge.org/decks/archive/modern/2021-11-04-modern-preliminary.zip +2021-11-05 Modern League (49 decks) | https://downloads.cardforge.org/decks/archive/modern/2021-11-05-modern-league.zip +2021-11-05 Modern Preliminary (3 decks) | https://downloads.cardforge.org/decks/archive/modern/2021-11-05-modern-preliminary.zip +2021-11-06 Modern Preliminary (8 decks) | https://downloads.cardforge.org/decks/archive/modern/2021-11-06-modern-preliminary.zip +2021-11-07 Modern Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2021-11-07-modern-challenge.zip +2021-11-08 Modern Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/modern/2021-11-08-modern-challenge.zip +2021-11-09 Modern League (69 decks) | https://downloads.cardforge.org/decks/archive/modern/2021-11-09-modern-league.zip +2021-11-09 Modern Preliminary (8 decks) | https://downloads.cardforge.org/decks/archive/modern/2021-11-09-modern-preliminary.zip +2021-11-10 Modern Preliminary (3 decks) | https://downloads.cardforge.org/decks/archive/modern/2021-11-10-modern-preliminary.zip diff --git a/forge-gui/res/lists/net-decks-archive-pauper.txt b/forge-gui/res/lists/net-decks-archive-pauper.txt index 3f55845b47c..da8d8a646a1 100644 --- a/forge-gui/res/lists/net-decks-archive-pauper.txt +++ b/forge-gui/res/lists/net-decks-archive-pauper.txt @@ -1819,4 +1819,12 @@ 2021-10-20 Pauper League (25 decks) | https://downloads.cardforge.org/decks/archive/pauper/2021-10-20-pauper-league.zip 2021-10-24 Pauper Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2021-10-24-pauper-challenge.zip 2021-10-25 Pauper Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2021-10-25-pauper-challenge.zip -Pauper League (20 decks) | https://downloads.cardforge.org/decks/archive/pauper/pauper-league.zip +2021-10-27 Pauper League (29 decks) | https://downloads.cardforge.org/decks/archive/pauper/2021-10-27-pauper-league.zip +2021-10-31 Pauper Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2021-10-31-pauper-challenge.zip +2021-11-01 Pauper Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2021-11-01-pauper-challenge.zip +2021-11-03 Pauper League (26 decks) | https://downloads.cardforge.org/decks/archive/pauper/2021-11-03-pauper-league.zip +2021-11-03 Pauper Preliminary (4 decks) | https://downloads.cardforge.org/decks/archive/pauper/2021-11-03-pauper-preliminary.zip +2021-11-07 Pauper Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2021-11-07-pauper-challenge.zip +2021-11-07 Pauper Showcase Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2021-11-07-pauper-showcase-challenge.zip +2021-11-08 Pauper Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/pauper/2021-11-08-pauper-challenge.zip +2021-11-10 Pauper League (25 decks) | https://downloads.cardforge.org/decks/archive/pauper/2021-11-10-pauper-league.zip diff --git a/forge-gui/res/lists/net-decks-archive-pioneer.txt b/forge-gui/res/lists/net-decks-archive-pioneer.txt index 915a340af8b..eb0e0f63033 100644 --- a/forge-gui/res/lists/net-decks-archive-pioneer.txt +++ b/forge-gui/res/lists/net-decks-archive-pioneer.txt @@ -762,3 +762,14 @@ 2021-10-24 Pioneer Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2021-10-24-pioneer-challenge.zip 2021-10-25 Pioneer Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2021-10-25-pioneer-challenge.zip 2021-10-25 Pioneer League (19 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2021-10-25-pioneer-league.zip +2021-10-27 Pioneer Preliminary (6 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2021-10-27-pioneer-preliminary.zip +2021-10-28 Pioneer League (13 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2021-10-28-pioneer-league.zip +2021-10-30 Pioneer Preliminary (4 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2021-10-30-pioneer-preliminary.zip +2021-10-31 Pioneer Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2021-10-31-pioneer-challenge.zip +2021-11-01 Pioneer Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2021-11-01-pioneer-challenge.zip +2021-11-01 Pioneer League (17 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2021-11-01-pioneer-league.zip +2021-11-03 Pioneer Preliminary (5 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2021-11-03-pioneer-preliminary.zip +2021-11-04 Pioneer League (12 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2021-11-04-pioneer-league.zip +2021-11-07 Pioneer Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2021-11-07-pioneer-challenge.zip +2021-11-08 Pioneer Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2021-11-08-pioneer-challenge.zip +2021-11-08 Pioneer League (13 decks) | https://downloads.cardforge.org/decks/archive/pioneer/2021-11-08-pioneer-league.zip diff --git a/forge-gui/res/lists/net-decks-archive-standard.txt b/forge-gui/res/lists/net-decks-archive-standard.txt index 02745e35a0c..6423e7eba52 100644 --- a/forge-gui/res/lists/net-decks-archive-standard.txt +++ b/forge-gui/res/lists/net-decks-archive-standard.txt @@ -2522,3 +2522,11 @@ 2021-10-24 Standard Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2021-10-24-standard-challenge.zip 2021-10-25 Standard Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2021-10-25-standard-challenge.zip 2021-10-25 Standard League (8 decks) | https://downloads.cardforge.org/decks/archive/standard/2021-10-25-standard-league.zip +2021-10-28 Standard League (6 decks) | https://downloads.cardforge.org/decks/archive/standard/2021-10-28-standard-league.zip +2021-10-31 Standard Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2021-10-31-standard-challenge.zip +2021-11-01 Standard Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2021-11-01-standard-challenge.zip +2021-11-01 Standard League (8 decks) | https://downloads.cardforge.org/decks/archive/standard/2021-11-01-standard-league.zip +2021-11-04 Standard League (10 decks) | https://downloads.cardforge.org/decks/archive/standard/2021-11-04-standard-league.zip +2021-11-07 Standard Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2021-11-07-standard-challenge.zip +2021-11-08 Standard Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/standard/2021-11-08-standard-challenge.zip +2021-11-08 Standard League (9 decks) | https://downloads.cardforge.org/decks/archive/standard/2021-11-08-standard-league.zip diff --git a/forge-gui/res/lists/net-decks-archive-vintage.txt b/forge-gui/res/lists/net-decks-archive-vintage.txt index 70032f261ca..ad699c75e9d 100644 --- a/forge-gui/res/lists/net-decks-archive-vintage.txt +++ b/forge-gui/res/lists/net-decks-archive-vintage.txt @@ -1540,3 +1540,10 @@ 2021-10-24 Vintage Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2021-10-24-vintage-challenge.zip 2021-10-24 Vintage League (9 decks) | https://downloads.cardforge.org/decks/archive/vintage/2021-10-24-vintage-league.zip 2021-10-25 Vintage Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2021-10-25-vintage-challenge.zip +2021-10-30 Vintage Preliminary (3 decks) | https://downloads.cardforge.org/decks/archive/vintage/2021-10-30-vintage-preliminary.zip +2021-10-31 Vintage Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2021-10-31-vintage-challenge.zip +2021-10-31 Vintage League (12 decks) | https://downloads.cardforge.org/decks/archive/vintage/2021-10-31-vintage-league.zip +2021-11-01 Vintage Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2021-11-01-vintage-challenge.zip +2021-11-07 Vintage Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2021-11-07-vintage-challenge.zip +2021-11-07 Vintage League (14 decks) | https://downloads.cardforge.org/decks/archive/vintage/2021-11-07-vintage-league.zip +2021-11-08 Vintage Challenge (32 decks) | https://downloads.cardforge.org/decks/archive/vintage/2021-11-08-vintage-challenge.zip